2023-11-20 20:11 설문 작업

This commit is contained in:
myname 2023-11-20 20:11:12 +09:00
parent 171909963c
commit 7e1fab28bd
31 changed files with 5413 additions and 153 deletions

View File

@ -464,67 +464,76 @@ public class EgovQustnrManageController {
//로그인 처리====================================
//step2.파일 처리====================================
//파일 정상 처리 여부와 첨부 파일 정보
//String atchFileId = this.takeFile(multiRequest, modelAndView, bmVO);
//파일 제한 수량 가져오기, 없으면 기본값 사용
int i_file_limit = checkFileUtil.getLimitCount(request); // file count
int i_limit_size = checkFileUtil.getLimitSize(request); // file MB
String s_file_exts = checkFileUtil.getS_exts(); // file exts
//step2.기존 첨부파일 체크 저장 하기
String s_atchFileId = "";
QustnrManageVO vo = egovQustnrManageService.selectQustnrManageDetailModel(qustnrManageVO);
if(!"".equals(vo.getAtchFileId())) {
s_atchFileId = vo.getAtchFileId();
}
//DB에서 실제 첨부파일 존재 여부 확인
FileVO fileVO = new FileVO();
fileVO.setAtchFileId(s_atchFileId);
List<FileVO> result = fileService.selectFileInfs(fileVO);
if (result.size()<=0) {
s_atchFileId = "";
}
if ("".equals(s_atchFileId)) {
s_atchFileId = checkFileUtil.fileValCheckNdbInsert(
multiRequest, modelAndView
, "QUSTNR_" //file_name_prefix
, s_file_exts
, i_limit_size
, i_file_limit
); //EXT, MB size and ea
}else {
s_atchFileId = checkFileUtil.fileValCheckNdbUpdate(
multiRequest, modelAndView
, "QUSTNR_" //file_name_prefix
, s_file_exts
, i_limit_size
, i_file_limit
, s_atchFileId
);
}
qustnrManageVO.setAtchFileId(s_atchFileId);
try {
//step2.파일 처리====================================
//파일 정상 처리 여부와 첨부 파일 정보
//String atchFileId = this.takeFile(multiRequest, modelAndView, bmVO);
//파일 제한 수량 가져오기, 없으면 기본값 사용
int i_file_limit = checkFileUtil.getLimitCount(request); // file count
int i_limit_size = checkFileUtil.getLimitSize(request); // file MB
String s_file_exts = checkFileUtil.getS_exts(); // file exts
//step2.기존 첨부파일 체크 저장 하기
String s_atchFileId = "";
QustnrManageVO vo = egovQustnrManageService.selectQustnrManageDetailModel(qustnrManageVO);
if (vo!=null)
if(!"".equals(vo.getAtchFileId())) {
s_atchFileId = vo.getAtchFileId();
}
//DB에서 실제 첨부파일 존재 여부 확인
FileVO fileVO = new FileVO();
fileVO.setAtchFileId(s_atchFileId);
List<FileVO> result = fileService.selectFileInfs(fileVO);
if (result.size()<=0) {
s_atchFileId = "";
}
if ("".equals(s_atchFileId)) {
s_atchFileId = checkFileUtil.fileValCheckNdbInsert(
multiRequest, modelAndView
, "QUSTNR_" //file_name_prefix
, s_file_exts
, i_limit_size
, i_file_limit
); //EXT, MB size and ea
}else {
s_atchFileId = checkFileUtil.fileValCheckNdbUpdate(
multiRequest, modelAndView
, "QUSTNR_" //file_name_prefix
, s_file_exts
, i_limit_size
, i_file_limit
, s_atchFileId
);
}
qustnrManageVO.setAtchFileId(s_atchFileId);
if ("ERROR".equals(s_atchFileId)) return modelAndView;
//step2.파일 처리====================================
try {
if (!"".equals(qustnrManageVO.getQestnrId()) && qustnrManageVO.getQestnrId() != null) {
qustnrManageVO.setLastUpdusrId(loginVO.getUniqId());
egovQustnrManageService.updateQustnrManage(qustnrManageVO);
} else {
qustnrManageVO.setFrstRegisterId(loginVO.getUniqId());
egovQustnrManageService.insertQustnrManage(qustnrManageVO);
}
if ("ERROR".equals(s_atchFileId)) return modelAndView;
//step2.파일 처리====================================
try {
if (!"".equals(qustnrManageVO.getQestnrId()) && qustnrManageVO.getQestnrId() != null) {
qustnrManageVO.setLastUpdusrId(loginVO.getUniqId());
egovQustnrManageService.updateQustnrManage(qustnrManageVO);
} else {
qustnrManageVO.setFrstRegisterId(loginVO.getUniqId());
egovQustnrManageService.insertQustnrManage(qustnrManageVO);
}
}catch(Exception ex) {
System.out.println("Exception egovQustnrManageService.insertQustnrManage");
}
}catch(Exception ex) {
ex.printStackTrace();
}
}catch(Exception ex) {
System.out.println("Exception egovQustnrManageService.insertQustnrManage");
}
modelAndView.addObject("result", "success");
return modelAndView;

View File

@ -0,0 +1,855 @@
package kcc.let.uss.olp.qmc.web;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
import egovframework.rte.fdl.property.EgovPropertyService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.psl.dataaccess.util.EgovMap;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.ComDefaultCodeVO;
import kcc.com.cmm.ComDefaultVO;
import kcc.com.cmm.EgovMessageSource;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovCmmUseService;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.service.FileVO;
import kcc.com.cmm.util.RedirectUrlMaker;
import kcc.com.utl.user.service.CheckFileUtil;
import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.sec.ram.service.AuthorManageVO;
import kcc.let.sec.ram.service.EgovAuthorManageService;
import kcc.let.uss.olp.qim.service.EgovQustnrItemManageService;
import kcc.let.uss.olp.qim.service.QustnrItemManageVO;
import kcc.let.uss.olp.qmc.service.EgovQustnrManageService;
import kcc.let.uss.olp.qmc.service.QustnrManageVO;
import kcc.let.uss.olp.qqm.service.EgovQustnrQestnManageService;
import kcc.let.uss.olp.qqm.service.QustnrQestnManageVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrService;
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
/**
* 설문관리를 처리하는 Controller Class 구현
* @author 공통서비스 장동한
* @since 2009.03.20
* @version 1.0
* @see
*
* <pre>
* << 개정이력(Modification Information) >>
*
* 수정일 수정자 수정내용
* ------- -------- ---------------------------
* 2009.03.20 장동한 최초 생성
* 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
*
* </pre>
*/
@Controller
public class UserQustnrManageController {
private static final Logger LOGGER = LoggerFactory.getLogger(UserQustnrManageController.class);
@Autowired
private DefaultBeanValidator beanValidator;
/** EgovMessageSource */
@Resource(name = "egovMessageSource")
EgovMessageSource egovMessageSource;
@Resource(name = "egovQustnrManageService")
private EgovQustnrManageService egovQustnrManageService;
/** EgovPropertyService */
@Resource(name = "propertiesService")
protected EgovPropertyService propertiesService;
@Resource(name = "EgovCmmUseService")
private EgovCmmUseService cmmUseService;
@Resource(name = "egovQustnrQestnManageService")
private EgovQustnrQestnManageService egovQustnrQestnManageService;
@Resource(name = "egovAuthorManageService")
private EgovAuthorManageService egovAuthorManageService;
@Resource(name = "EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
@Resource(name = "EgovFileMngService")
private EgovFileMngService fileMngService;
//로그인 체크 util
@Resource(name = "checkLoginUtil")
private CheckLoginUtil checkLoginUtil;
//파일 체크 util
@Resource(name = "checkFileUtil")
private CheckFileUtil checkFileUtil;
@Resource(name = "EgovFileMngService")
private EgovFileMngService fileService;
// 설문 복합 VEA_
@Resource(name = "vEALettnQestnrService")
private VEALettnQestnrService vEALettnQestnrService;
// 설문 복합 VEA_
@Resource(name = "vEALettnQestnrMIXService")
private VEALettnQestnrMIXService vEALettnQestnrMIXService;
//암복호화 유틸
@Resource(name = "egovCryptoUtil")
EgovCryptoUtil egovCryptoUtil;
//설문문항등록
@Resource(name = "egovQustnrItemManageService")
private EgovQustnrItemManageService egovQustnrItemManageService;
//설문지 고유값 생성
@Resource(name="egovQustnrManageIdGnrService")
private EgovIdGnrService idgenService;
/**
* 설문관리를 등록한다.
* @param searchVO
* @param commandMap
* @param qustnrManageVO
* @param bindingResult
* @param model
* @return "/uss/olp/qmc/EgovQustnrManageRegist"
* @throws Exception
*/
@RequestMapping(value = "/uss/olp/qmc/UserItnQustnrManageRegist.do")
public String UserItnQustnrManageRegist(
@ModelAttribute("qustnrManageVO") QustnrManageVO qustnrManageVO
, @RequestParam Map<String, Object> commandMap
, BindingResult bindingResult
, RedirectAttributes redirectAttributes
, ModelMap model
, HttpSession session) throws Exception {
// 0. Spring Security 사용자권한 처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (!isAuthenticated) {
model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
return "uat/uia/EgovLoginUsr";
}
//로그인 객체 선언
LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
if(null != loginVO && !"super".equals(loginVO.getSiteId())){ //리스트, 수정, 입력
// qustnrManageVO.setSiteId(loginVO.getSiteId());
}
String sLocationUrl = "/uss/olp/qmc/UserQustnrManageRegist";
String sCmd = commandMap.get("cmd") == null ? "" : (String) commandMap.get("cmd");
LOGGER.info("cmd => {}", sCmd);
//공통코드 직업유형 조회
ComDefaultCodeVO voComCode = new ComDefaultCodeVO();
voComCode.setCodeId("COM034");
model.addAttribute("comCode034", cmmUseService.selectCmmCodeDetail(voComCode));
if (sCmd.equals("save")) {
beanValidator.validate(qustnrManageVO, bindingResult);
if (bindingResult.hasErrors()) {
//설문템플릿 정보 불러오기
model.addAttribute("listQustnrTmplat", egovQustnrManageService.selectQustnrTmplatManageList(qustnrManageVO));
return sLocationUrl;
}
//아이디 설정
qustnrManageVO.setFrstRegisterId(loginVO.getUniqId());
qustnrManageVO.setLastUpdusrId(loginVO.getUniqId());
egovQustnrManageService.insertQustnrManage(qustnrManageVO);
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.insert"));
RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker("/uss/olp/qmc/UserQustnrManageList.do");
return redirectUrlMaker.getRedirectUrl();
//sLocationUrl = "redirect:/uss/olp/qmc/EgovQustnrManageList.do";
} else {
//설문템플릿 정보 불러오기
model.addAttribute("listQustnrTmplat", egovQustnrManageService.selectQustnrTmplatManageList(qustnrManageVO));
/*설문참여권한 조회*/
ComDefaultCodeVO vo = new ComDefaultCodeVO();
vo.setCodeId("COM036");
List<?> qestnrTrgetList = cmmUseService.selectCmmCodeDetail(vo);
model.addAttribute("qestnrTrgetList", qestnrTrgetList);
/*관리권한 조회*/
AuthorManageVO authorManageVO = new AuthorManageVO();
authorManageVO.setFirstIndex(0);
authorManageVO.setLastIndex(10);
authorManageVO.setRecordCountPerPage(10);
authorManageVO.setAuthorManageList(egovAuthorManageService.selectAuthorList(authorManageVO));
model.addAttribute("authorList", authorManageVO.getAuthorManageList());
}
return sLocationUrl;
}
/**
* 설문관리 목록을 조회한다.
* @param searchVO
* @param commandMap
* @param qustnrManageVO
* @param model
* @return "/uss/olp/qmc/EgovQustnrManageList"
* @throws Exception
*/
@RequestMapping(value = {"/uss/olp/qmc/UserQustnrManageList.do"})
public String UserQustnrManageList(
@ModelAttribute("searchVO") ComDefaultVO searchVO
, @RequestParam Map<String, Object> commandMap
, QustnrManageVO qustnrManageVO
, VEAQestnrVO vEAQestnrVO
, RedirectAttributes redirectAttributes
, ModelMap model , HttpSession session) throws Exception {
try {
//1.pageing step1
PaginationInfo paginationInfo = this.setPagingStep1_vEAQestnrVO(vEAQestnrVO);
//2. pageing step2
vEAQestnrVO = this.setPagingStep2_vEAQestnrVO(vEAQestnrVO, paginationInfo);
//vEAQestnrVO.setInstrDiv("10"); //청소년
//vEAQestnrVO.setLctrDivCd("10"); //청소년강의
//vEAQestnrVO.setAprvlCd("60"); //확정코드
if(!"".equals(vEAQestnrVO.getSearchInstrNm())) {
vEAQestnrVO.setSearchInstrNm(egovCryptoUtil.encrypt(vEAQestnrVO.getSearchInstrNm()));
}
//vEEduAplctVO.setAprvlCd("60"); //확정코드
//VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
List<VEAQestnrVO> vEAQestnrVOList = vEALettnQestnrMIXService.selectPagingList_MIX_LQI(vEAQestnrVO);
VEAQestnrVO vo = new VEAQestnrVO();
for(int i=0; i < vEAQestnrVOList.size(); i++) {
vo = egovCryptoUtil.decryptVEAQestnrVOInfo(vEAQestnrVOList.get(i));
//vEAQestnrVOList.get(i).setUserId(vo.getUserId());
//vEAQestnrVOList.get(i).setChrgNm(vo.getChrgNm());
}
//3.pageing step3
paginationInfo = this.setPagingStep3_vEAQestnrVO(vEAQestnrVOList, paginationInfo);
model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("cryptoUtil", egovCryptoUtil);
//대상 리스트, 페이징 정보 전달
model.addAttribute("resultList", vEAQestnrVOList);
}catch(Exception ex) {
ex.printStackTrace();
}
return "/uss/olp/qmc/UserQustnrManageList";
}
/**
* 설문관리를 수정한다.
* @param searchVO
* @param commandMap
* @param qustnrManageVO
* @param bindingResult
* @param model
* @return "/uss/olp/qmc/EgovQustnrManageModify"
* @throws Exception
*/
@RequestMapping(value = "/uss/olp/qmc/UserQustnrManageModify.do")
public String UserQustnrManageModify(@ModelAttribute("searchVO") ComDefaultVO searchVO, @RequestParam Map<String, Object> commandMap, QustnrManageVO qustnrManageVO,
BindingResult bindingResult, RedirectAttributes redirectAttributes , ModelMap model , HttpSession session) throws Exception {
// 0. Spring Security 사용자권한 처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (!isAuthenticated) {
model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
return "uat/uia/EgovLoginUsr";
}
//로그인 객체 선언
LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
String sLocationUrl = "/uss/olp/qmc/UserQustnrManageModify";
String sCmd = commandMap.get("cmd") == null ? "" : (String) commandMap.get("cmd");
//공통코드 직업유형 조회
ComDefaultCodeVO voComCode = new ComDefaultCodeVO();
voComCode.setCodeId("COM034");
model.addAttribute("comCode034", cmmUseService.selectCmmCodeDetail(voComCode));
if (sCmd.equals("save")) {
beanValidator.validate(qustnrManageVO, bindingResult);
if (bindingResult.hasErrors()) {
model.addAttribute("resultList", egovQustnrManageService.selectQustnrManageDetail(qustnrManageVO));
//설문템플릿 정보 불러오기
model.addAttribute("listQustnrTmplat", egovQustnrManageService.selectQustnrTmplatManageList(qustnrManageVO));
return sLocationUrl;
}
//아이디 설정
qustnrManageVO.setFrstRegisterId(loginVO.getUniqId());
qustnrManageVO.setLastUpdusrId(loginVO.getUniqId());
egovQustnrManageService.updateQustnrManage(qustnrManageVO);
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.update"));
RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker("/uss/olp/qmc/UserQustnrManageList.do");
return redirectUrlMaker.getRedirectUrl();
//sLocationUrl = "redirect:/uss/olp/qmc/EgovQustnrManageList.do";
} else {
model.addAttribute("resultList", egovQustnrManageService.selectQustnrManageDetail(qustnrManageVO));
//설문정보
//QustnrManageVO newQustnrManageVO = egovQustnrManageService.selectQustnrManageDetailModel(qustnrManageVO);
VEAQestnrVO newQustnrManageVO = new VEAQestnrVO();
newQustnrManageVO.setQestnrId(qustnrManageVO.getQestnrId());
newQustnrManageVO = vEALettnQestnrMIXService.selectDetail_MIX_LQI_01(newQustnrManageVO);
model.addAttribute("qustnrManageVO", newQustnrManageVO);
//설문템플릿 정보 불러오기
model.addAttribute("listQustnrTmplat", egovQustnrManageService.selectQustnrTmplatManageList(qustnrManageVO));
//설문문제정보
searchVO.setFirstIndex(0);
searchVO.setRecordCountPerPage(50); //50개까지
searchVO.setSearchCondition("QESTNR_ID");
searchVO.setSearchKeyword(qustnrManageVO.getQestnrId());
List<?> qustnrQestnManageList = egovQustnrQestnManageService.selectQustnrQestnManageList(searchVO);
model.addAttribute("qustnrQestnManageList", qustnrQestnManageList);
/*설문참여권한 조회*/
ComDefaultCodeVO vo = new ComDefaultCodeVO();
vo.setCodeId("COM036");
List<?> qestnrTrgetList = cmmUseService.selectCmmCodeDetail(vo);
model.addAttribute("qestnrTrgetList", qestnrTrgetList);
vo.setCodeId("COM035"); //설문진행상태
List<?> qustnrManageSttusList = cmmUseService.selectCmmCodeDetail(vo);
model.addAttribute("qustnrManageSttusList", qustnrManageSttusList);
//관리권한 조회
AuthorManageVO authorManageVO = new AuthorManageVO();
authorManageVO.setFirstIndex(0);
authorManageVO.setLastIndex(10);
authorManageVO.setRecordCountPerPage(10);
authorManageVO.setAuthorManageList(egovAuthorManageService.selectAuthorList(authorManageVO));
model.addAttribute("authorList", authorManageVO.getAuthorManageList());
List<FileVO> fileList = null;
FileVO fileVO = new FileVO();
fileVO.setAtchFileId(newQustnrManageVO.getAtchFileId());
fileList = fileService.selectFileInfs(fileVO);
model.addAttribute("fileList", fileList);
}
return sLocationUrl;
}
@RequestMapping(value = "/uss/olp/qmc/UserItnQustnrManageInsertAjax.do")
public ModelAndView UserItnQustnrManageInsertAjax(
@ModelAttribute("qustnrManageVO") QustnrManageVO qustnrManageVO
, @ModelAttribute("VEAQestnrVO") VEAQestnrVO vEAQestnrVO
, ModelMap model
//, RedirectAttributes redirectAttributes
, HttpServletRequest request
, final MultipartHttpServletRequest multiRequest
) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
//로그인 처리====================================
//로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
//SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
//로그인 처리====================================
try {
//step2.파일 처리====================================
//파일 정상 처리 여부와 첨부 파일 정보
//String atchFileId = this.takeFile(multiRequest, modelAndView, bmVO);
//파일 제한 수량 가져오기, 없으면 기본값 사용
int i_file_limit = checkFileUtil.getLimitCount(request); // file count
int i_limit_size = checkFileUtil.getLimitSize(request); // file MB
String s_file_exts = checkFileUtil.getS_exts(); // file exts
//step2.기존 첨부파일 체크 저장 하기
String s_atchFileId = "";
//QustnrManageVO vo = egovQustnrManageService.selectQustnrManageDetailModel(qustnrManageVO);
VEAQestnrVO newQustnrManageVO = new VEAQestnrVO();
newQustnrManageVO.setQestnrId(vEAQestnrVO.getQestnrId());
newQustnrManageVO = vEALettnQestnrMIXService.selectDetail_MIX_LQI_01(newQustnrManageVO);
if (newQustnrManageVO!=null)
if(!"".equals(newQustnrManageVO.getAtchFileId())) {
s_atchFileId = newQustnrManageVO.getAtchFileId();
}
//DB에서 실제 첨부파일 존재 여부 확인
FileVO fileVO = new FileVO();
fileVO.setAtchFileId(s_atchFileId);
List<FileVO> result = fileService.selectFileInfs(fileVO);
if (result.size()<=0) {
s_atchFileId = "";
}
if ("".equals(s_atchFileId)) {
s_atchFileId = checkFileUtil.fileValCheckNdbInsert(
multiRequest, modelAndView
, "QUSTNR_" //file_name_prefix
, s_file_exts
, i_limit_size
, i_file_limit
); //EXT, MB size and ea
}else {
s_atchFileId = checkFileUtil.fileValCheckNdbUpdate(
multiRequest, modelAndView
, "QUSTNR_" //file_name_prefix
, s_file_exts
, i_limit_size
, i_file_limit
, s_atchFileId
);
}
//qustnrManageVO.setAtchFileId(s_atchFileId);
vEAQestnrVO.setAtchFileId(s_atchFileId);
if ("ERROR".equals(s_atchFileId)) return modelAndView;
//step2.파일 처리====================================
try {
if (!"".equals(vEAQestnrVO.getQestnrId()) && vEAQestnrVO.getQestnrId() != null) {
vEAQestnrVO.setLastUpdusrId(loginVO.getUniqId());
vEALettnQestnrService.update_LQI(vEAQestnrVO);
//egovQustnrManageService.updateQustnrManage(qustnrManageVO);
} else {
String sMakeId = idgenService.getNextStringId();
vEAQestnrVO.setQestnrId(sMakeId);
vEAQestnrVO.setQustnrSj(qustnrManageVO.getQestnrSj());
vEAQestnrVO.setQustnrPurps(qustnrManageVO.getQestnrPurps());
vEAQestnrVO.setQustnrWritngGuidanceCn(qustnrManageVO.getQestnrWritngGuidanceCn());
vEAQestnrVO.setFrstRegisterId(loginVO.getUniqId());
vEALettnQestnrService.update_LQI(vEAQestnrVO);
//egovQustnrManageService.insertQustnrManage(qustnrManageVO);
}
}catch(Exception ex) {
System.out.println("Exception vEALettnQestnrService.update_LQI");
}
}catch(Exception ex) {
ex.printStackTrace();
}
modelAndView.addObject("result", "success");
return modelAndView;
}
/**
* 설문관리 목록을 삭제한다.
* @param searchVO
* @param commandMap
* @param qustnrManageVO
* @param model
* @return "/uss/olp/qmc/EgovQustnrManageList"
* @throws Exception
*/
@RequestMapping(value = {"/uss/olp/qmc/UserQustnrDelete.do"})
public String UserQustnrDelete(
@ModelAttribute("searchVO") ComDefaultVO searchVO
, @RequestParam Map<String, Object> commandMap, QustnrManageVO qustnrManageVO
, RedirectAttributes redirectAttributes
, ModelMap model , HttpSession session) throws Exception {
RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker("/uss/olp/qmc/EgovQustnrManageList.do");
try {
egovQustnrManageService.deleteQustnrManage(qustnrManageVO);
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.delete"));
}catch(Exception ex) {
ex.printStackTrace();
}
return redirectUrlMaker.getRedirectUrl();
}
/**
* 설문문항를 등록한다.
* @param searchVO
* @param commandMap
* @param qustnrQestnManageVO
* @param bindingResult
* @param model
* @return "/uss/olp/qqm/EgovQustnrQestnManageRegist"
* @throws Exception
*/
@RequestMapping(value="/uss/olp/qqm/UserItnQustnrQestnManageRegist.do")
public String UserItnQustnrQestnManageRegist(
@ModelAttribute("searchVO") ComDefaultVO searchVO,
@RequestParam Map <String, Object> commandMap,
BindingResult bindingResult,
ModelMap model,
QustnrQestnManageVO qustnrQestnManageVO
)
throws Exception {
// 0. Spring Security 사용자권한 처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if(!isAuthenticated) {
model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
return "uat/uia/EgovLoginUsr";
}
//로그인 객체 선언
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
String sLocationUrl = "/uss/olp/qqm/UserItnQustnrQestnManageRegist";
String sCmd = commandMap.get("cmd") == null ? "" : (String)commandMap.get("cmd");
LOGGER.info("cmd => {}", sCmd);
//설문지 제목가져오기
String sQestnrId = commandMap.get("qestnrId") == null ? "" : (String)commandMap.get("qestnrId");
String sQestnrTmplatId = commandMap.get("qestnrTmplatId") == null ? "" : (String)commandMap.get("qestnrTmplatId");
String sQestnrQesitmId = commandMap.get("qestnrQesitmId") == null ? "" : (String)commandMap.get("qestnrQesitmId");
LOGGER.info("sQestnrId => {}", sQestnrId);
LOGGER.info("sQestnrTmplatId => {}", sQestnrTmplatId);
LOGGER.info("sQestnrQesitmId => {}", sQestnrQesitmId);
System.out.println("qestnCn");
System.out.println(sQestnrId);
System.out.println(sQestnrTmplatId);
System.out.println(sQestnrQesitmId);
if(!sQestnrId.equals("") && !sQestnrTmplatId.equals("")){
int sum = Integer.valueOf((String)commandMap.get("qestnSn"));
if(sQestnrQesitmId.equals("")) {// 수정일경우
sum = sum +1;
}
Map<String,String> mapQustnrManage = new HashMap<String,String>();
mapQustnrManage.put("qestnrId", sQestnrId);
mapQustnrManage.put("qestnrTmplatId", sQestnrTmplatId);
mapQustnrManage.put("qestnSn", Integer.toString(sum));
mapQustnrManage.put("qestnrQesitmId", qustnrQestnManageVO.getQestnrQesitmId());
Map<String,String> qestnrInfo = (Map<String, String>) egovQustnrQestnManageService.selectQustnrManageQestnrSj(mapQustnrManage);
/*설문문제 항목*/
List<?> qustnrQestnManageList = egovQustnrQestnManageService.selectQustnrQestnManageDetail(qustnrQestnManageVO) ;
System.out.println("qestnCn");
System.out.println(qustnrQestnManageList.size());
if(qustnrQestnManageList.size() != 0){
String qestnCn = (String)((EgovMap)qustnrQestnManageList.get(0)).get("qestnCn") ;
String qestnTyCode = (String)((EgovMap)qustnrQestnManageList.get(0)).get("qestnTyCode") ;
String mxmmChoiseCo = String.valueOf(((EgovMap)qustnrQestnManageList.get(0)).get("mxmmChoiseCo"));
System.out.println("qestnCn");
System.out.println(qestnCn);
System.out.println(qestnTyCode);
System.out.println(mxmmChoiseCo);
qestnrInfo.put("qestnCn", qestnCn) ;
qestnrInfo.put("qestnTyCode", qestnTyCode) ;
qestnrInfo.put("mxmmChoiseCo", mxmmChoiseCo) ;
}
model.addAttribute("qestnrInfo", qestnrInfo);
model.addAttribute("qustnrQestnManageVO", mapQustnrManage);
}
/** 설문문제 항목 */
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(searchVO.getPageIndex());
paginationInfo.setRecordCountPerPage(searchVO.getPageUnit());
paginationInfo.setPageSize(searchVO.getPageSize());
searchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
searchVO.setLastIndex(paginationInfo.getLastRecordIndex());
searchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
//설문문제 조회를 위해 세팅
List<?> resultList = new ArrayList<>();
if(!"".equals(qustnrQestnManageVO.getQestnrQesitmId())){
searchVO.setSearchKeyword(qustnrQestnManageVO.getQestnrQesitmId());
searchVO.setSearchCondition("QUSTNR_QESITM_ID");
resultList= egovQustnrItemManageService.selectQustnrItemManageList(searchVO);
}
model.addAttribute("qustnrItemList", resultList);
return sLocationUrl;
}
/**
* 설문항목를 등록한다.
* @param searchVO
* @param commandMap
* @param qustnrItemManageVO
* @param bindingResult
* @param model
* @return "/uss/olp/qim/EgovQustnrItemManageRegist"
* @throws Exception
*/
@RequestMapping(value="/uss/olp/qim/UserQustnrItemManageRegist.do")
public String UserQustnrItemManageRegist(
@ModelAttribute("searchVO") ComDefaultVO searchVO,
@RequestParam Map <String, Object> commandMap,
@ModelAttribute("qustnrItemManageVO") QustnrItemManageVO qustnrItemManageVO,
QustnrQestnManageVO qustnrQestnManageVO,
BindingResult bindingResult,
ModelMap model,
RedirectAttributes redirectAttributes
)
throws Exception {
// 0. Spring Security 사용자권한 처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if(!isAuthenticated) {
model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
return "uat/uia/EgovLoginUsr";
}
//로그인 객체 선언
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
String sLocationUrl = "/uss/olp/qim/UserQustnrItemManageRegist";
String sCmd = commandMap.get("cmd") == null ? "" : (String)commandMap.get("cmd");
LOGGER.info("cmd => {}", sCmd);
//ITN수정
if(sCmd.equals("save")){
//서버 validate 체크
beanValidator.validate(qustnrItemManageVO, bindingResult);
if(bindingResult.hasErrors()){
//설문항목() 정보 불러오기
model.addAttribute("listQustnrTmplat", egovQustnrItemManageService.selectQustnrTmplatManageList(qustnrItemManageVO));
return "/uss/olp/qim/UserQustnrItemManageRegist";
}
//아이디 설정
qustnrItemManageVO.setFrstRegisterId((String)loginVO.getUniqId());
qustnrItemManageVO.setLastUpdusrId((String)loginVO.getUniqId());
egovQustnrItemManageService.insertQustnrItemManage(qustnrItemManageVO);
sLocationUrl = "redirect:/uss/olp/qim/UserQustnrItemManageList.do&cmd="+sCmd;
}else if(sCmd.equals("regi")){ //최초저장
//서버 validate 체크
qustnrItemManageVO.setIemSn("1"); //validate temp
beanValidator.validate(qustnrItemManageVO, bindingResult);
if(bindingResult.hasErrors()){
//설문항목() 정보 불러오기
model.addAttribute("listQustnrTmplat", egovQustnrItemManageService.selectQustnrTmplatManageList(qustnrItemManageVO));
return "/uss/olp/qim/UserQustnrItemManageRegist";
}
//설문질문 저장
qustnrQestnManageVO.setFrstRegisterId((String)loginVO.getUniqId());
qustnrQestnManageVO.setLastUpdusrId((String)loginVO.getUniqId());
if(qustnrItemManageVO.getQestnrQesitmId() == ""){ //설문최초 등록
String qustnrQesitmId = egovQustnrQestnManageService.insertGetIdQustnrQestnManage(qustnrQestnManageVO);
qustnrItemManageVO.setQestnrQesitmId(qustnrQesitmId);
}else{
egovQustnrQestnManageService.updateQustnrQestnManage(qustnrQestnManageVO);
qustnrItemManageVO.setQestnrQesitmId(qustnrQestnManageVO.getQestnrQesitmId());
}
//응답문항 저장
qustnrItemManageVO.setFrstRegisterId((String)loginVO.getUniqId());
qustnrItemManageVO.setLastUpdusrId((String)loginVO.getUniqId());
/*if(searchVO.getSiteId().equals("10") || searchVO.getSiteId().equals("20")) {
qustnrItemManageVO.setIemCn("매우 만족,만족,보통,불만족,매우 불만족");
}else {
qustnrItemManageVO.setIemCn("입력");
}*/
String[] itemCns = qustnrItemManageVO.getIemCn().split(",");
int itemSn = 1;
for (String itemCn : itemCns ){
qustnrItemManageVO.setIemCn(itemCn);
qustnrItemManageVO.setIemSn(itemSn+"");
egovQustnrItemManageService.insertItnQustnrItemManage(qustnrItemManageVO);
itemSn ++;
}
sLocationUrl = "/uss/olp/qmc/UserQustnrManageModify.do?qestnrId="+qustnrQestnManageVO.getQestnrId()+"&cmd="+sCmd;
//QustnrManageVO qustnrManageVO = new QustnrManageVO();
//qustnrManageVO.setQestnrId(qustnrQestnManageVO.getQestnrId());
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.insert"));
//redirectAttributes.addFlashAttribute("qustnrManageVO", qustnrManageVO); //파라미터숨기기
RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker(sLocationUrl);
return redirectUrlMaker.getRedirectUrl();
}else if(sCmd.equals("upda")){ //수정
//서버 validate 체크
qustnrItemManageVO.setIemSn("1"); //validate temp
beanValidator.validate(qustnrItemManageVO, bindingResult);
if(bindingResult.hasErrors()){
//설문항목() 정보 불러오기
model.addAttribute("listQustnrTmplat", egovQustnrItemManageService.selectQustnrTmplatManageList(qustnrItemManageVO));
return "/uss/olp/qim/UserQustnrItemManageRegist";
}
//설문질문 업데이트
qustnrQestnManageVO.setFrstRegisterId((String)loginVO.getUniqId());
qustnrQestnManageVO.setLastUpdusrId((String)loginVO.getUniqId());
egovQustnrQestnManageService.updateQustnrQestnManage(qustnrQestnManageVO);
//응답문항 업데이트
egovQustnrItemManageService.deleteAllQustnrItemManage(qustnrItemManageVO);
qustnrItemManageVO.setFrstRegisterId((String)loginVO.getUniqId());
qustnrItemManageVO.setLastUpdusrId((String)loginVO.getUniqId());
String[] itemCns = qustnrItemManageVO.getIemCn().split(",");
int itemSn = 1;
for (String itemCn : itemCns ){
qustnrItemManageVO.setIemCn(itemCn);
qustnrItemManageVO.setIemSn(itemSn+"");
egovQustnrItemManageService.insertQustnrItemManage(qustnrItemManageVO);
itemSn ++;
}
sLocationUrl = "/uss/olp/qmc/UserQustnrManageModify.do?qestnrId="+qustnrQestnManageVO.getQestnrId()+"&cmd="+sCmd;
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.update"));
//QustnrManageVO qustnrManageVO = new QustnrManageVO();
//qustnrManageVO.setQestnrId(qustnrQestnManageVO.getQestnrId());
//redirectAttributes.addFlashAttribute("qustnrManageVO", qustnrManageVO); //파라미터숨기기
RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker(sLocationUrl);
return redirectUrlMaker.getRedirectUrl();
}else{
model.addAttribute("listQustnrTmplat", egovQustnrItemManageService.selectQustnrTmplatManageList(qustnrItemManageVO));
}
return sLocationUrl;
}
/**
* 설문문항 목록을 상세조회 조회한다.
* @param searchVO
* @param qustnrQestnManageVO
* @param commandMap
* @param model
* @return "/uss/olp/qqm/EgovQustnrQestnManageDetail"
* @throws Exception
*/
@RequestMapping(value="/uss/olp/qqm/UserQustnrQestnManageDetailDelete.do")
public String UserQustnrQestnManageDetailDelete(
@ModelAttribute("searchVO") ComDefaultVO searchVO,
@ModelAttribute("qustnrQestnManageVO") QustnrQestnManageVO qustnrQestnManageVO,
@RequestParam Map <String, Object> commandMap,
ModelMap model , RedirectAttributes redirectAttributes)
throws Exception {
egovQustnrQestnManageService.deleteQustnrQestnManage(qustnrQestnManageVO);
/** 목록으로갈때 검색조건 유지 */
/*sLocationUrl = "redirect:/uss/olp/qqm/EgovQustnrQestnManageList.do?";
sLocationUrl = sLocationUrl + "searchMode=" + qustnrQestnManageVO.getSearchMode();
sLocationUrl = sLocationUrl + "&qestnrId=" + qustnrQestnManageVO.getQestnrId();
sLocationUrl = sLocationUrl + "&qestnrTmplatId=" +qustnrQestnManageVO.getQestnrTmplatId();*/
String sLocationUrl = "/uss/olp/qmc/UserQustnrManageModify.do?qestnrId="+qustnrQestnManageVO.getQestnrId()+"&cmd=del";
//QustnrManageVO qustnrManageVO = new QustnrManageVO();
//qustnrManageVO.setQestnrId(qustnrQestnManageVO.getQestnrId());
//redirectAttributes.addFlashAttribute("qustnrManageVO", qustnrManageVO); //파라미터숨기기
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.delete"));
RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker(sLocationUrl);
return redirectUrlMaker.getRedirectUrl();
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//
// private function
//
//
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
private PaginationInfo setPagingStep1_vEAQestnrVO(
VEAQestnrVO p_vEAQestnrVO
)throws Exception{
// pageing step1
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(p_vEAQestnrVO.getPageIndex());
paginationInfo.setRecordCountPerPage(p_vEAQestnrVO.getPageUnit());
paginationInfo.setPageSize(p_vEAQestnrVO.getPageSize());
return paginationInfo;
}
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 검색 조건 초기화
private VEAQestnrVO setPagingStep2_vEAQestnrVO(
VEAQestnrVO p_vEAQestnrVO
, PaginationInfo p_paginationInfo
)throws Exception{
// pageing step2
p_vEAQestnrVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
p_vEAQestnrVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
p_vEAQestnrVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
if("".equals(p_vEAQestnrVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
p_vEAQestnrVO.setSearchSortCnd("a.qestnr_id");
p_vEAQestnrVO.setSearchSortOrd("desc");
}
return p_vEAQestnrVO;
}
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
private PaginationInfo setPagingStep3_vEAQestnrVO(
List<VEAQestnrVO> p_vEAQestnrVOList
, PaginationInfo p_paginationInfo
)throws Exception{
// pageing step3
int totCnt = 0;
if(p_vEAQestnrVOList.size() > 0) totCnt = p_vEAQestnrVOList.get(0).getTotCnt();
p_paginationInfo.setTotalRecordCount(totCnt);
return p_paginationInfo;
}
}

View File

@ -5,6 +5,20 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.rte.fdl.property.EgovPropertyService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.psl.dataaccess.util.EgovMap;
@ -19,20 +33,6 @@ import kcc.let.uss.olp.qim.service.EgovQustnrItemManageService;
import kcc.let.uss.olp.qmc.service.QustnrManageVO;
import kcc.let.uss.olp.qqm.service.EgovQustnrQestnManageService;
import kcc.let.uss.olp.qqm.service.QustnrQestnManageVO;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import org.springmodules.validation.commons.DefaultBeanValidator;
/**
* 설문문항을 처리하는 Controller Class 구현
* @author 공통서비스 장동한
@ -483,6 +483,12 @@ public class EgovQustnrQestnManageController {
LOGGER.info("sQestnrId => {}", sQestnrId);
LOGGER.info("sQestnrTmplatId => {}", sQestnrTmplatId);
LOGGER.info("sQestnrQesitmId => {}", sQestnrQesitmId);
System.out.println("qestnCn");
System.out.println(sQestnrId);
System.out.println(sQestnrTmplatId);
System.out.println(sQestnrQesitmId);
if(!sQestnrId.equals("") && !sQestnrTmplatId.equals("")){
int sum = Integer.valueOf((String)commandMap.get("qestnSn"));
@ -502,11 +508,21 @@ public class EgovQustnrQestnManageController {
Map<String,String> qestnrInfo = (Map<String, String>) egovQustnrQestnManageService.selectQustnrManageQestnrSj(mapQustnrManage);
/*설문문제 항목*/
List<?> qustnrQestnManageList = egovQustnrQestnManageService.selectQustnrQestnManageDetail(qustnrQestnManageVO) ;
List<?> qustnrQestnManageList = egovQustnrQestnManageService.selectQustnrQestnManageDetail(qustnrQestnManageVO) ;
System.out.println("qestnCn");
System.out.println(qustnrQestnManageList.size());
if(qustnrQestnManageList.size() != 0){
String qestnCn = (String)((EgovMap)qustnrQestnManageList.get(0)).get("qestnCn") ;
String qestnTyCode = (String)((EgovMap)qustnrQestnManageList.get(0)).get("qestnTyCode") ;
String mxmmChoiseCo = String.valueOf(((EgovMap)qustnrQestnManageList.get(0)).get("mxmmChoiseCo"));
System.out.println("qestnCn");
System.out.println(qestnCn);
System.out.println(qestnTyCode);
System.out.println(mxmmChoiseCo);
qestnrInfo.put("qestnCn", qestnCn) ;
qestnrInfo.put("qestnTyCode", qestnTyCode) ;
qestnrInfo.put("mxmmChoiseCo", mxmmChoiseCo) ;

View File

@ -28,6 +28,7 @@ import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO;
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrSttsVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO;
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
/**
*
@ -102,6 +103,18 @@ public class EgovCryptoUtil {
return p_vEEduAplctVOList;
}
//VEAQestnrVO
//VEAQestnrVO - 복호화
public VEAQestnrVO decryptVEAQestnrVOInfo(VEAQestnrVO p_vEAQestnrVO){
//if (!"".equals(p_vEAQestnrVO.getChrgNm())) p_vEAQestnrVO.setChrgNm(this.decrypt(p_vEAQestnrVO.getChrgNm()));
//if (!"".equals(p_vEAQestnrVO.getClphone())) p_vEAQestnrVO.setClphone(this.decrypt(p_vEAQestnrVO.getClphone()));
//if (!"".equals(p_vEAQestnrVO.getPhone())) p_vEAQestnrVO.setPhone(this.decrypt(p_vEAQestnrVO.getPhone()));
//if (!"".equals(p_vEAQestnrVO.getEmail())) p_vEAQestnrVO.setEmail(this.decrypt(p_vEAQestnrVO.getEmail()));
//if (!"".equals(p_vEAQestnrVO.getInstrNm())) p_vEAQestnrVO.setInstrNm(this.decrypt(p_vEAQestnrVO.getInstrNm()));
//if (!"".equals(p_vEAQestnrVO.getUserNm())) p_vEAQestnrVO.setUserNm(this.decrypt(p_vEAQestnrVO.getUserNm()));
return p_vEAQestnrVO;
}
//////////////////////////////////////////////////
//
// VO /복호화

View File

@ -45,6 +45,8 @@ import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
/**
* 교육완료(청소년찾아가는교육)
@ -139,6 +141,9 @@ public class EduEndTngrController {
@Resource(name="vEInstrDetailService")
private VEInstrDetailService vEInstrDetailService;
// 설문 복합 VEA_
@Resource(name = "vEALettnQestnrMIXService")
private VEALettnQestnrMIXService vEALettnQestnrMIXService;
/*
@ -440,57 +445,71 @@ public class EduEndTngrController {
//로그인 처리====================================
try {
//기본데이터 불러오기
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
//데이터 복호화 - VO 단위로 만들어서 사용
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
model.addAttribute("info", vEEduAplctVO);
//사용자 교육신청 과정 리스트
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
vEPrcsDetailVO.setUseYn("Y");
vEPrcsDetailVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_10);
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectTngrPrcsList(vEPrcsDetailVO);
model.addAttribute("list", vEPrcsDetailVOList);
//사용자 교육신청 차시 리스트
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);
vEEduChasiVO.setPageIndex(0);
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
model.addAttribute("chasiList", vEEduChasiVOList);
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_10);
//QustnrRespondInfoVO info = egovQustnrRespondInfoService.selectSiteIdQustnrTmplat(qustnrRespondInfoVO);
//설문 정보
{
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
vEAQestnrVO.setSiteId(VeConstants.LCTR_DIV_CD_10); //청소년
vEAQestnrVO.setSiteIdCd("10"); //10-기본설문, 20-신청자설문, 30-강사설문
vEAQestnrVO = vEALettnQestnrMIXService.selectDetail_MIX_LQI_02(vEAQestnrVO);
//문항정보
Map <String, Object> commandMap =new HashMap<String, Object>();
commandMap.put("qestnrTmplatId", "QTMPLA_0000000000001");
commandMap.put("qestnrId",vEAQestnrVO.getQestnrId()); //문제 ID
model.addAttribute("Comtnqustnrqesitm", egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
model.addAttribute("qestnrId", vEAQestnrVO.getQestnrId());
}
// 교육 설문문항 정보 조회
ComDefaultVO searchVO = new ComDefaultVO();
egovQustnrRespondManageService.selectQustnrRespondManageListCnt(searchVO);
model.addAttribute("cryptoUtil", egovCryptoUtil);
//서류 요청 목록
VEEduAplctVO veEduDocReqVO = new VEEduAplctVO();
veEduDocReqVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
List<VEEduAplctVO> vEEduDocReqList = vEEduAplctService.selectDocReqList(veEduDocReqVO);
//복호화
vEEduDocReqList = egovCryptoUtil.decryptVEEduAplctVOList(vEEduDocReqList);
model.addAttribute("docReqList", vEEduDocReqList);
}catch(Exception ex) {
ex.printStackTrace();
}
//기본데이터 불러오기
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
//데이터 복호화 - VO 단위로 만들어서 사용
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
model.addAttribute("info", vEEduAplctVO);
//사용자 교육신청 과정 리스트
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
vEPrcsDetailVO.setUseYn("Y");
vEPrcsDetailVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_10);
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectTngrPrcsList(vEPrcsDetailVO);
model.addAttribute("list", vEPrcsDetailVOList);
//사용자 교육신청 차시 리스트
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);
vEEduChasiVO.setPageIndex(0);
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
model.addAttribute("chasiList", vEEduChasiVOList);
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_10);
QustnrRespondInfoVO info = egovQustnrRespondInfoService.selectSiteIdQustnrTmplat(qustnrRespondInfoVO);
//문항정보
Map <String, Object> commandMap =new HashMap<String, Object>();
commandMap.put("qestnrTmplatId", "QTMPLA_0000000000001");
commandMap.put("qestnrId",info.getQestnrId()); //문제 ID
model.addAttribute("Comtnqustnrqesitm", egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
model.addAttribute("qestnrId", info.getQestnrId());
// 교육 설문문항 정보 조회
ComDefaultVO searchVO = new ComDefaultVO();
egovQustnrRespondManageService.selectQustnrRespondManageListCnt(searchVO);
model.addAttribute("cryptoUtil", egovCryptoUtil);
//서류 요청 목록
VEEduAplctVO veEduDocReqVO = new VEEduAplctVO();
veEduDocReqVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
List<VEEduAplctVO> vEEduDocReqList = vEEduAplctService.selectDocReqList(veEduDocReqVO);
//복호화
vEEduDocReqList = egovCryptoUtil.decryptVEEduAplctVOList(vEEduDocReqList);
model.addAttribute("docReqList", vEEduDocReqList);
return "/web/ve/aplct/tngrVisitEdu/eduEnd/eduEndDetail";
}

View File

@ -0,0 +1,15 @@
package kcc.ve.oprtn.qestnr.service;
import java.util.List;
public interface VEALettnQestnrMIXService {
//lettnQestnrInfo - 설문지 양식리스트
List<VEAQestnrVO> selectPagingList_MIX_LQI(VEAQestnrVO paramVO) throws Exception; // Page List
//설문지 양식 상세
VEAQestnrVO selectDetail_MIX_LQI_01(VEAQestnrVO paramVO) throws Exception; // R
//설문지 양식 상세 - 특정 조건에 맞는(청소년, 성인 and 기본, 신청자, 강사)
VEAQestnrVO selectDetail_MIX_LQI_02(VEAQestnrVO paramVO) throws Exception; // R
}

View File

@ -0,0 +1,109 @@
package kcc.ve.oprtn.qestnr.service;
import java.util.List;
public interface VEALettnQestnrService {
//LettnQestnrInfo - 설문지 정보
void insert_LQI(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_LQI(VEAQestnrVO paramVO) throws Exception; // R
int update_LQI(VEAQestnrVO paramVO) throws Exception; // U
int delete_LQI(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_LQI(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_LQI(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_LCTR_RNDS_STNG - 강의회차설정
void insert_VEALRS(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEALRS(VEAQestnrVO paramVO) throws Exception; // R
int update_VEALRS(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEALRS(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEALRS(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEALRS(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_LCTR_PSBL_PRD_STNG - 강의기간설정
void insert_VEALPPS(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEALPPS(VEAQestnrVO paramVO) throws Exception; // R
int update_VEALPPS(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEALPPS(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEALPPS(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEALPPS(VEAQestnrVO paramVO) throws Exception; // Page List
//etc
//강의기간이 기존 기간과 일치하는지 확인
List<VEAQestnrVO> selectList_VEALPPS_prdDupCheck(VEAQestnrVO paramVO) throws Exception; // 강의기간 중복 체크
//VEA_DT_PSBL_TM_QNTTY_STNG - 일별가능시수설정
void insert_VEADPTQS(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEADPTQS(VEAQestnrVO paramVO) throws Exception; // R
int update_VEADPTQS(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEADPTQS(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEADPTQS(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEADPTQS(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_AREA_LCTR_STNG - 지역별강의설정
void insert_VEAALS(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEAALS(VEAQestnrVO paramVO) throws Exception; // R
int update_VEAALS(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEAALS(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEAALS(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEAALS(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_INSTR_ASGNM_CNDTN - 강사배정조건
void insert_VEAIAC(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEAIAC(VEAQestnrVO paramVO) throws Exception; // R
int update_VEAIAC(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEAIAC(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEAIAC(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEAIAC(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_INSTR_MNT_TM - 강사월별시수
void insert_VEAIMT(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEAIMT(VEAQestnrVO paramVO) throws Exception; // R
int update_VEAIMT(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEAIMT(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEAIMT(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEAIMT(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_INSTR_INDVD_MNT_TM - 강사별월별시수
void insert_VEAIIMT(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEAIIMT(VEAQestnrVO paramVO) throws Exception; // R
int update_VEAIIMT(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEAIIMT(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEAIIMT(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEAIIMT(VEAQestnrVO paramVO) throws Exception; // Page List
int delete_VEAIIMT_query(VEAQestnrVO paramVO) throws Exception; // D-with query
//VEA_INSTR_RSDNC_RATIO - 강사거주지별비율
void insert_VEAIRR(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEAIRR(VEAQestnrVO paramVO) throws Exception; // R
int update_VEAIRR(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEAIRR(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEAIRR(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEAIRR(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_BASIC_INFO_STNG - 기본설정정보
void insert_VEABIS(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEABIS(VEAQestnrVO paramVO) throws Exception; // R
int update_VEABIS(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEABIS(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEABIS(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEABIS(VEAQestnrVO paramVO) throws Exception; // Page List
//VEA_INSTR_HSTRY_MNG - 강사이력관리
void insert_VEAIHM(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEAIHM(VEAQestnrVO paramVO) throws Exception; // R
int update_VEAIHM(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEAIHM(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEAIHM(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEAIHM(VEAQestnrVO paramVO) throws Exception; // Page List
}

View File

@ -0,0 +1,331 @@
package kcc.ve.oprtn.qestnr.service;
import java.io.Serializable;
import kcc.com.cmm.ComDefaultVO;
public class VEAQestnrVO extends ComDefaultVO implements Serializable {
/*
* 설문
* */
private static final long serialVersionUID = 1L;
//LettnQestnrInfo - 설문지 정보
private String qustnrTmplatId; //설문템플릿ID
private String qestnrId; //설문지ID
private String qustnrSj; //설문제목
private String qustnrPurps; //설문목적
private String qustnrWritngGuidanceCn; //설문작성안내내용
private String qustnrTrget; //설문대상
private String qustnrBgnde; //설문시작일
private String qustnrEndde; //설문종료일
private String frstRegistPnttm;
private String frstRegisterId;
private String frstRegisterNm;
private String lastUpdtPnttm;
private String lastUpdusrId;
private String sttus; //설문상태
private String qustnrViewTrget; //설문보기대상
private String siteId; //사이트아이디 VE0011 10(청소년), 20-성인, 30-체험교실, 40-외부협력과정, 50-기반강화, 60-기소유예
private String siteIdCd; //설문대상 VEA012 10-기본설문, 20-신청선생님설문, 30-강사설문
private String beforeAndAfter; //사전/사후 설문 여부 01-사전, 02-사후
private String atchFileId;
// LettnQustnrQesItm - 설문지 문항
//private String qustnrTmplatId; //설문템플릿ID
//private String qestnrId; //설문지ID
private String qustnrQesitmId; //질문ID
private String qestnSn; //질문순번
private String qestnTyCode; //질문타입
private String qestnCn; //질문내용
private String mxmmChoiseCo; //최대선택
//lettnqustnrrespondinfo - 설문응답자 정보
//private String qustnrTmplatId;
//private String qestnrId;
private String qustnrRespondId;
private String eduAplctOrd;
private String eduChasiOrd;
private String qestnrRespondentCount;
private String qestnrParticipantCount;
//lettnqestnrrsltDetail - 찾교 설문 응답결과 상세
//private String qustnrTmplatId;
//private String qestnrId;
//private String qustnrQesitmId;
private String qustnrRsltId; //찾교설문응답결과 ID
//private String eduAplctOrd;
//private String eduChasiOrd;
private String respondId; //응답자 ID
private String verySatisfied;
private String satisfied;
private String neither;
private String dissatisfied;
private String veryDissatisfied;
private String answer; //기타답변
private String qustnrIemId; //설문항목ID - 중복 미사용(?)
private String qustnrQesitmCnt; //
private String rrspnsResultCnt; //
public String getQustnrTmplatId() {
return qustnrTmplatId;
}
public void setQustnrTmplatId(String qustnrTmplatId) {
this.qustnrTmplatId = qustnrTmplatId;
}
public String getQestnrId() {
return qestnrId;
}
public void setQestnrId(String qestnrId) {
this.qestnrId = qestnrId;
}
public String getQustnrSj() {
return qustnrSj;
}
public void setQustnrSj(String qustnrSj) {
this.qustnrSj = qustnrSj;
}
public String getQustnrPurps() {
return qustnrPurps;
}
public void setQustnrPurps(String qustnrPurps) {
this.qustnrPurps = qustnrPurps;
}
public String getQustnrWritngGuidanceCn() {
return qustnrWritngGuidanceCn;
}
public void setQustnrWritngGuidanceCn(String qustnrWritngGuidanceCn) {
this.qustnrWritngGuidanceCn = qustnrWritngGuidanceCn;
}
public String getQustnrTrget() {
return qustnrTrget;
}
public void setQustnrTrget(String qustnrTrget) {
this.qustnrTrget = qustnrTrget;
}
public String getQustnrBgnde() {
return qustnrBgnde;
}
public void setQustnrBgnde(String qustnrBgnde) {
this.qustnrBgnde = qustnrBgnde;
}
public String getQustnrEndde() {
return qustnrEndde;
}
public void setQustnrEndde(String qustnrEndde) {
this.qustnrEndde = qustnrEndde;
}
public String getFrstRegistPnttm() {
return frstRegistPnttm;
}
public void setFrstRegistPnttm(String frstRegistPnttm) {
this.frstRegistPnttm = frstRegistPnttm;
}
public String getFrstRegisterId() {
return frstRegisterId;
}
public void setFrstRegisterId(String frstRegisterId) {
this.frstRegisterId = frstRegisterId;
}
public String getLastUpdtPnttm() {
return lastUpdtPnttm;
}
public void setLastUpdtPnttm(String lastUpdtPnttm) {
this.lastUpdtPnttm = lastUpdtPnttm;
}
public String getLastUpdusrId() {
return lastUpdusrId;
}
public void setLastUpdusrId(String lastUpdusrId) {
this.lastUpdusrId = lastUpdusrId;
}
public String getSttus() {
return sttus;
}
public void setSttus(String sttus) {
this.sttus = sttus;
}
public String getQustnrViewTrget() {
return qustnrViewTrget;
}
public void setQustnrViewTrget(String qustnrViewTrget) {
this.qustnrViewTrget = qustnrViewTrget;
}
public String getSiteId() {
return siteId;
}
public void setSiteId(String siteId) {
this.siteId = siteId;
}
public String getSiteIdCd() {
return siteIdCd;
}
public void setSiteIdCd(String siteIdCd) {
this.siteIdCd = siteIdCd;
}
public String getBeforeAndAfter() {
return beforeAndAfter;
}
public void setBeforeAndAfter(String beforeAndAfter) {
this.beforeAndAfter = beforeAndAfter;
}
public String getAtchFileId() {
return atchFileId;
}
public void setAtchFileId(String atchFileId) {
this.atchFileId = atchFileId;
}
public String getQustnrQesitmId() {
return qustnrQesitmId;
}
public void setQustnrQesitmId(String qustnrQesitmId) {
this.qustnrQesitmId = qustnrQesitmId;
}
public String getQestnSn() {
return qestnSn;
}
public void setQestnSn(String qestnSn) {
this.qestnSn = qestnSn;
}
public String getQestnTyCode() {
return qestnTyCode;
}
public void setQestnTyCode(String qestnTyCode) {
this.qestnTyCode = qestnTyCode;
}
public String getQestnCn() {
return qestnCn;
}
public void setQestnCn(String qestnCn) {
this.qestnCn = qestnCn;
}
public String getMxmmChoiseCo() {
return mxmmChoiseCo;
}
public void setMxmmChoiseCo(String mxmmChoiseCo) {
this.mxmmChoiseCo = mxmmChoiseCo;
}
public String getQustnrRespondId() {
return qustnrRespondId;
}
public void setQustnrRespondId(String qustnrRespondId) {
this.qustnrRespondId = qustnrRespondId;
}
public String getEduAplctOrd() {
return eduAplctOrd;
}
public void setEduAplctOrd(String eduAplctOrd) {
this.eduAplctOrd = eduAplctOrd;
}
public String getEduChasiOrd() {
return eduChasiOrd;
}
public void setEduChasiOrd(String eduChasiOrd) {
this.eduChasiOrd = eduChasiOrd;
}
public String getQestnrRespondentCount() {
return qestnrRespondentCount;
}
public void setQestnrRespondentCount(String qestnrRespondentCount) {
this.qestnrRespondentCount = qestnrRespondentCount;
}
public String getQestnrParticipantCount() {
return qestnrParticipantCount;
}
public void setQestnrParticipantCount(String qestnrParticipantCount) {
this.qestnrParticipantCount = qestnrParticipantCount;
}
public String getQustnrRsltId() {
return qustnrRsltId;
}
public void setQustnrRsltId(String qustnrRsltId) {
this.qustnrRsltId = qustnrRsltId;
}
public String getRespondId() {
return respondId;
}
public void setRespondId(String respondId) {
this.respondId = respondId;
}
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;
}
public String getAnswer() {
return answer;
}
public void setAnswer(String answer) {
this.answer = answer;
}
public String getQustnrIemId() {
return qustnrIemId;
}
public void setQustnrIemId(String qustnrIemId) {
this.qustnrIemId = qustnrIemId;
}
public String getQustnrQesitmCnt() {
return qustnrQesitmCnt;
}
public void setQustnrQesitmCnt(String qustnrQesitmCnt) {
this.qustnrQesitmCnt = qustnrQesitmCnt;
}
public String getRrspnsResultCnt() {
return rrspnsResultCnt;
}
public void setRrspnsResultCnt(String rrspnsResultCnt) {
this.rrspnsResultCnt = rrspnsResultCnt;
}
public String getFrstRegisterNm() {
return frstRegisterNm;
}
public void setFrstRegisterNm(String frstRegisterNm) {
this.frstRegisterNm = frstRegisterNm;
}
}

View File

@ -0,0 +1,339 @@
package kcc.ve.oprtn.qestnr.service.impl;
import java.util.List;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
@Repository("vEALettnQestnrDAO")
public class VEALettnQestnrDAO extends EgovAbstractDAO {
//LettnQestnrInfo - 설문지 정보
public void insert_LQI(VEAQestnrVO paramVO) throws Exception {
insert("VEALettnQestnrInfoDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_LQI(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEALettnQestnrInfoDAO.selectDetail", paramVO);
}
public int update_LQI(VEAQestnrVO paramVO) throws Exception {
return update("VEALettnQestnrInfoDAO.update", paramVO);
}
public int delete_LQI(VEAQestnrVO paramVO) throws Exception {
return delete("VEALettnQestnrInfoDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_LQI(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrInfoDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_LQI(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrInfoDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_LCTR_RNDS_STNG - 강의회차설정
public void insert_VEALRS(VEAQestnrVO paramVO) throws Exception {
insert("VEALctrRndsStngDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEALRS(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEALctrRndsStngDAO.selectDetail", paramVO);
}
public int update_VEALRS(VEAQestnrVO paramVO) throws Exception {
return update("VEALctrRndsStngDAO.update", paramVO);
}
public int delete_VEALRS(VEAQestnrVO paramVO) throws Exception {
return delete("VEALctrRndsStngDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEALRS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALctrRndsStngDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEALRS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALctrRndsStngDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_LCTR_PSBL_PRD_STNG - 강의기간설정
public void insert_VEALPPS(VEAQestnrVO paramVO) throws Exception {
insert("VEALctrPsblPrdStngDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEALPPS(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEALctrPsblPrdStngDAO.selectDetail", paramVO);
}
public int update_VEALPPS(VEAQestnrVO paramVO) throws Exception {
return update("VEALctrPsblPrdStngDAO.update", paramVO);
}
public int delete_VEALPPS(VEAQestnrVO paramVO) throws Exception {
return delete("VEALctrPsblPrdStngDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEALPPS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALctrPsblPrdStngDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEALPPS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALctrPsblPrdStngDAO.selectPagingList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectList_VEALPPS_prdDupCheck(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALctrPsblPrdStngDAO.selectListPrdDupCheck", paramVO);
return tlist;
}
//VEA_DT_PSBL_TM_QNTTY_STNG - 일별가능시수설정
public void insert_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
insert("VEADtPsblTmQnttyStngDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEADtPsblTmQnttyStngDAO.selectDetail", paramVO);
}
public int update_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
return update("VEADtPsblTmQnttyStngDAO.update", paramVO);
}
public int delete_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
return delete("VEADtPsblTmQnttyStngDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEADtPsblTmQnttyStngDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEADtPsblTmQnttyStngDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_AREA_LCTR_STNG - 지역별강의설정
public void insert_VEAALS(VEAQestnrVO paramVO) throws Exception {
insert("VEAAreaLctrStngDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEAALS(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEAAreaLctrStngDAO.selectDetail", paramVO);
}
public int update_VEAALS(VEAQestnrVO paramVO) throws Exception {
return update("VEAAreaLctrStngDAO.update", paramVO);
}
public int delete_VEAALS(VEAQestnrVO paramVO) throws Exception {
return delete("VEAAreaLctrStngDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEAALS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAAreaLctrStngDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEAALS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAAreaLctrStngDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_INSTR_ASGNM_CNDTN - 강사배정조건
public void insert_VEAIAC(VEAQestnrVO paramVO) throws Exception {
insert("VEAInstrAsgnmCndtnDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEAIAC(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEAInstrAsgnmCndtnDAO.selectDetail", paramVO);
}
public int update_VEAIAC(VEAQestnrVO paramVO) throws Exception {
return update("VEAInstrAsgnmCndtnDAO.update", paramVO);
}
public int delete_VEAIAC(VEAQestnrVO paramVO) throws Exception {
return delete("VEAInstrAsgnmCndtnDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEAIAC(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrAsgnmCndtnDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEAIAC(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrAsgnmCndtnDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_INSTR_MNT_TM - 강사월별시수
public void insert_VEAIMT(VEAQestnrVO paramVO) throws Exception {
insert("VEAInstrMntTmDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEAIMT(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEAInstrMntTmDAO.selectDetail", paramVO);
}
public int update_VEAIMT(VEAQestnrVO paramVO) throws Exception {
return update("VEAInstrMntTmDAO.update", paramVO);
}
public int delete_VEAIMT(VEAQestnrVO paramVO) throws Exception {
return delete("VEAInstrMntTmDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEAIMT(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrMntTmDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEAIMT(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrMntTmDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_INSTR_INDVD_MNT_TM - 강사별월별시수
public void insert_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
insert("VEAInstrIndvdMntTmDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEAInstrIndvdMntTmDAO.selectDetail", paramVO);
}
public int update_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
return update("VEAInstrIndvdMntTmDAO.update", paramVO);
}
public int delete_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
return delete("VEAInstrIndvdMntTmDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrIndvdMntTmDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrIndvdMntTmDAO.selectPagingList", paramVO);
return tlist;
}
public int delete_VEAIIMT_query(VEAQestnrVO paramVO) throws Exception {
return delete("VEAInstrIndvdMntTmDAO.delete_query", paramVO);
}
//VEA_INSTR_RSDNC_RATIO - 강사거주지별비율
public void insert_VEAIRR(VEAQestnrVO paramVO) throws Exception {
insert("VEAInstrRsdncRatioDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEAIRR(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEAInstrRsdncRatioDAO.selectDetail", paramVO);
}
public int update_VEAIRR(VEAQestnrVO paramVO) throws Exception {
return update("VEAInstrRsdncRatioDAO.update", paramVO);
}
public int delete_VEAIRR(VEAQestnrVO paramVO) throws Exception {
return delete("VEAInstrRsdncRatioDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEAIRR(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrRsdncRatioDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEAIRR(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrRsdncRatioDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_BASIC_INFO_STNG - 기본정보설정
public void insert_VEABIS(VEAQestnrVO paramVO) throws Exception {
insert("VEABasicInfoStngDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEABIS(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEABasicInfoStngDAO.selectDetail", paramVO);
}
public int update_VEABIS(VEAQestnrVO paramVO) throws Exception {
return update("VEABasicInfoStngDAO.update", paramVO);
}
public int delete_VEABIS(VEAQestnrVO paramVO) throws Exception {
return delete("VEABasicInfoStngDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEABIS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEABasicInfoStngDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEABIS(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEABasicInfoStngDAO.selectPagingList", paramVO);
return tlist;
}
//VEA_INSTR_HSTRY_MNG - 강사이력관리
public void insert_VEAIHM(VEAQestnrVO paramVO) throws Exception {
insert("VEAInstrHstryMngDAO.insert", paramVO);
}
public VEAQestnrVO selectDetail_VEAIHM(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEAInstrHstryMngDAO.selectDetail", paramVO);
}
public int update_VEAIHM(VEAQestnrVO paramVO) throws Exception {
return update("VEAInstrHstryMngDAO.update", paramVO);
}
public int delete_VEAIHM(VEAQestnrVO paramVO) throws Exception {
return delete("VEAInstrHstryMngDAO.delete", paramVO);
}
//L
public List<VEAQestnrVO> selectList_VEAIHM(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrHstryMngDAO.selectList", paramVO);
return tlist;
}
public List<VEAQestnrVO> selectPagingList_VEAIHM(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEAInstrHstryMngDAO.selectPagingList", paramVO);
return tlist;
}
}

View File

@ -0,0 +1,25 @@
package kcc.ve.oprtn.qestnr.service.impl;
import java.util.List;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
@Repository("vEALettnQestnrMIXDAO")
public class VEALettnQestnrMIXDAO extends EgovAbstractDAO {
public List<VEAQestnrVO> selectPagingList_MIX_LQI(VEAQestnrVO paramVO) throws Exception {
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrMIXDAO.selectPagingList_LQI", paramVO);
return tlist;
}
public VEAQestnrVO selectDetail_MIX_LQI_01(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_01", paramVO);
}
public VEAQestnrVO selectDetail_MIX_LQI_02(VEAQestnrVO paramVO) throws Exception {
return (VEAQestnrVO) select("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_02", paramVO);
}
}

View File

@ -0,0 +1,33 @@
package kcc.ve.oprtn.qestnr.service.impl;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
@Service("vEALettnQestnrMIXService")
public class VEALettnQestnrMIXServiceImpl implements VEALettnQestnrMIXService {
//과정
@Resource(name="vEALettnQestnrMIXDAO")
private VEALettnQestnrMIXDAO vEALettnQestnrMIXDAO;
//paging List
public List<VEAQestnrVO> selectPagingList_MIX_LQI(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrMIXDAO.selectPagingList_MIX_LQI(paramVO);
}
//R
public VEAQestnrVO selectDetail_MIX_LQI_01(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_01(paramVO);
}
public VEAQestnrVO selectDetail_MIX_LQI_02(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_02(paramVO);
}
}

View File

@ -0,0 +1,399 @@
package kcc.ve.oprtn.qestnr.service.impl;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrService;
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
@Service("vEALettnQestnrService")
public class VEALettnQestnrServiceImpl implements VEALettnQestnrService {
//과정
@Resource(name="vEALettnQestnrDAO")
private VEALettnQestnrDAO vEALettnQestnrDAO;
/*
* void insert_VEALYS(VEAQestnrVO paramVO) throws Exception; // C
VEAQestnrVO selectDetail_VEALYS(VEAQestnrVO paramVO) throws Exception; // R
int update_VEALYS(VEAQestnrVO paramVO) throws Exception; // U
int delete_VEALYS(VEAQestnrVO paramVO) throws Exception; // D
List<VEAQestnrVO> selectList_VEALYS(VEAQestnrVO paramVO) throws Exception; // LIST
List<VEAQestnrVO> selectPagingList_VEALYS(VEAQestnrVO paramVO) throws Exception; // Page List
* */
//LettnQestnrInfo - 설문지 정보
//C
public void insert_LQI(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_LQI(paramVO);
}
//R
public VEAQestnrVO selectDetail_LQI(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_LQI(paramVO);
}
//U
public int update_LQI(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_LQI(paramVO);
}
//D
public int delete_LQI(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_LQI(paramVO);
}
//List
public List<VEAQestnrVO> selectList_LQI(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_LQI(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_LQI(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_LQI(paramVO);
}
//VEA_LCTR_RNDS_STNG - 강의회차설정
//C
public void insert_VEALRS(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEALRS(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEALRS(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEALRS(paramVO);
}
//U
public int update_VEALRS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEALRS(paramVO);
}
//D
public int delete_VEALRS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEALRS(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEALRS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEALRS(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEALRS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEALRS(paramVO);
}
//VEA_LCTR_PSBL_PRD_STNG - 강의기간설정
//C
public void insert_VEALPPS(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEALPPS(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEALPPS(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEALPPS(paramVO);
}
//U
public int update_VEALPPS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEALPPS(paramVO);
}
//D
public int delete_VEALPPS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEALPPS(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEALPPS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEALPPS(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEALPPS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEALPPS(paramVO);
}
//기간 중복 체크
public List<VEAQestnrVO> selectList_VEALPPS_prdDupCheck(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEALPPS_prdDupCheck(paramVO);
}
//VEA_DT_PSBL_TM_QNTTY_STNG - 일별가능시수설정
//C
public void insert_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEADPTQS(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEADPTQS(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEADPTQS(paramVO);
}
//U
public int update_VEADPTQS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEADPTQS(paramVO);
}
//D
public int delete_VEADPTQS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEADPTQS(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEADPTQS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEADPTQS(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEADPTQS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEADPTQS(paramVO);
}
//VEA_AREA_LCTR_STNG - 지역별강의설정
//C
public void insert_VEAALS(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEAALS(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEAALS(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEAALS(paramVO);
}
//U
public int update_VEAALS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEAALS(paramVO);
}
//D
public int delete_VEAALS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEAALS(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEAALS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEAALS(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEAALS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEAALS(paramVO);
}
//VEA_INSTR_ASGNM_CNDTN - 강사배정조건
//C
public void insert_VEAIAC(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEAIAC(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEAIAC(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEAIAC(paramVO);
}
//U
public int update_VEAIAC(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEAIAC(paramVO);
}
//D
public int delete_VEAIAC(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEAIAC(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEAIAC(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEAIAC(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEAIAC(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEAIAC(paramVO);
}
//VEA_INSTR_MNT_TM - 강사월별시수
//C
public void insert_VEAIMT(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEAIMT(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEAIMT(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEAIMT(paramVO);
}
//U
public int update_VEAIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEAIMT(paramVO);
}
//D
public int delete_VEAIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEAIMT(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEAIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEAIMT(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEAIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEAIMT(paramVO);
}
//VEA_INSTR_INDVD_MNT_TM - 강사별월별시수
//C
public void insert_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEAIIMT(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEAIIMT(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEAIIMT(paramVO);
}
//U
public int update_VEAIIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEAIIMT(paramVO);
}
//D
public int delete_VEAIIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEAIIMT(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEAIIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEAIIMT(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEAIIMT(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEAIIMT(paramVO);
}
//D
public int delete_VEAIIMT_query(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEAIIMT_query(paramVO);
}
//VEA_INSTR_RSDNC_RATIO - 강사거주지별비율
//C
public void insert_VEAIRR(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEAIRR(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEAIRR(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEAIRR(paramVO);
}
//U
public int update_VEAIRR(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEAIRR(paramVO);
}
//D
public int delete_VEAIRR(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEAIRR(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEAIRR(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEAIRR(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEAIRR(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEAIRR(paramVO);
}
//VEA_BASIC_INFO_STNG - 기본설정정보
//C
public void insert_VEABIS(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEABIS(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEABIS(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEABIS(paramVO);
}
//U
public int update_VEABIS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEABIS(paramVO);
}
//D
public int delete_VEABIS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEABIS(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEABIS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEABIS(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEABIS(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEABIS(paramVO);
}
//VEA_INSTR_HSTRY_MNG - 강사이력관리
//C
public void insert_VEAIHM(VEAQestnrVO paramVO) throws Exception {
vEALettnQestnrDAO.insert_VEAIHM(paramVO);
}
//R
public VEAQestnrVO selectDetail_VEAIHM(VEAQestnrVO paramVO) throws Exception {
return vEALettnQestnrDAO.selectDetail_VEAIHM(paramVO);
}
//U
public int update_VEAIHM(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.update_VEAIHM(paramVO);
}
//D
public int delete_VEAIHM(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.delete_VEAIHM(paramVO);
}
//List
public List<VEAQestnrVO> selectList_VEAIHM(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectList_VEAIHM(paramVO);
}
//paging List
public List<VEAQestnrVO> selectPagingList_VEAIHM(VEAQestnrVO paramVO) throws Exception{
return vEALettnQestnrDAO.selectPagingList_VEAIHM(paramVO);
}
}

View File

@ -139,5 +139,15 @@
<!-- 자동배정 2023.11-->
<sqlMap resource="egovframework/sqlmap/ve/edu/VEAutoAsgnm_MIX_SQL_Tibero.xml"/>
<sqlMap resource="egovframework/sqlmap/ve/edu/VEAutoAsgnm_MIX_SQL_Tibero.xml"/>
<!-- 설문 2023.11 -->
<sqlMap resource="egovframework/sqlmap/ve/qustnr/VEALettnQestnrInfo_SQL_Tibero.xml"/> <!-- 설문지정보 -->
<sqlMap resource="egovframework/sqlmap/ve/qustnr/VEALettnQustnrQesItm_SQL_Tibero.xml"/> <!-- 설문지문항 -->
<sqlMap resource="egovframework/sqlmap/ve/qustnr/VEALettnQustnrRespondInfo_SQL_Tibero.xml"/> <!-- 설문응답자정보 -->
<sqlMap resource="egovframework/sqlmap/ve/qustnr/VEALettnQestnrRsltDetail_SQL_Tibero.xml"/> <!-- 설문응답결과 상세 -->
<sqlMap resource="egovframework/sqlmap/ve/qustnr/VEALettnQestnrMIX_SQL_Tibero.xml"/> <!-- 설문지 MIX 쿼리 -->
</sqlMapConfig>

View File

@ -35,7 +35,7 @@
IEM_SN=#iemSn#,
IEM_CN=#iemCn#,
ETC_ANSWER_AT=#etcAnswerAt#,
LAST_UPDT_PNTTM = NOW(),
LAST_UPDT_PNTTM = SYSDATE,
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE QUSTNR_IEM_ID = #qustnrIemId#
</update>
@ -101,7 +101,10 @@
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
@ -128,6 +131,7 @@
<!-- 설문정보::입력 -->
<insert id="QustnrItemManage.insertQustnrItemManage">
/* QustnrItemManage.insertQustnrItemManage */
<![CDATA[
INSERT INTO LETTNQUSTNRIEM (
@ -150,9 +154,9 @@
#iemCn#,
#etcAnswerAt#,
#qestnrTmplatId#,
NOW(),
SYSDATE,
#frstRegisterId#,
NOW(),
SYSDATE,
#lastUpdusrId#
)
@ -163,6 +167,7 @@
<!-- 설문정보::입력 -->
<insert id="QustnrItemManage.insertItnQustnrItemManage">
/* QustnrItemManage.insertItnQustnrItemManage */
<![CDATA[
INSERT INTO LETTNQUSTNRIEM (
QUSTNR_QESITM_ID,
@ -184,9 +189,9 @@
#iemCn#,
#etcAnswerAt#,
#qestnrTmplatId#,
NOW(),
SYSDATE,
#frstRegisterId#,
NOW(),
SYSDATE,
#lastUpdusrId#
)
]]>

View File

@ -62,6 +62,7 @@
ELSE A.STTUS
END AS STTUS,
A.SITE_ID,
A.SITE_ID_CD AS siteIdCd,
A.QUSTNR_VIEW_TRGET,
A.BEFORE_AND_AFTER,
A.ATCH_FILE_ID
@ -239,7 +240,7 @@
( SELECT COUNT(*) FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = A.QESTNR_ID ) qustnrQesitmCnt ,
( SELECT COUNT(*) FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = A.QESTNR_ID ) rrspnsResultCnt,
CASE
WHEN TO_DATE(A.QUSTNR_ENDDE,'YYYYMMDD') < TO_CHAR(SYSDATE, 'YYYYMMDD') THEN '2' /* */
WHEN A.QUSTNR_ENDDE < TO_CHAR(SYSDATE, 'YYYY.MM.DD') THEN '2' /* */
ELSE A.STTUS
END AS STTUS,
(SELECT QUSTNR_TMPLAT_PATH_NM FROM LETTNQUSTNRTMPLAT WHERE QUSTNR_TMPLAT_ID = A.QUSTNR_TMPLAT_ID ) TEMPLATE_URL

View File

@ -70,7 +70,7 @@
QESTN_TY_CODE=#qestnTyCode#,
QESTN_CN=#qestnCn#,
MXMM_CHOISE_CO=#mxmmChoiseCo#,
LAST_UPDT_PNTTM = NOW(),
LAST_UPDT_PNTTM = SYSDATE,
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
</update>
@ -82,14 +82,14 @@
A.QUSTNR_QESITM_ID qestnrQesitmId,
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID=A.QESTNR_ID) QESTNR_SJ,
A.QESTN_SN qestnSn,
A.QESTN_TY_CODE qestnTyCode,
A.QESTN_CN qestnCn,
A.MXMM_CHOISE_CO mxmmChoiseCo,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
A.QESTN_SN "qestnSn",
A.QESTN_TY_CODE "qestnTyCode",
A.QESTN_CN "qestnCn",
A.MXMM_CHOISE_CO "mxmmChoiseCo",
A.QUSTNR_TMPLAT_ID "qestnrTmplatId",
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24:MI:SS') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'%Y-%m-%d %H%:i:%s') LAST_UPDT_PNTTM,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24:MI:SS') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID
FROM LETTNQUSTNRQESITM A
WHERE 1=1
@ -102,14 +102,14 @@
/* QustnrQestnManage.selectQustnrQestnManage */
<![CDATA[
SELECT
A.QUSTNR_QESITM_ID qestnrQesitmId,
A.QUSTNR_QESITM_ID "qestnrQesitmId",
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID=A.QESTNR_ID) QESTNR_SJ,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID=A.QESTNR_ID) "QESTNR_SJ",
A.QESTN_SN,
A.QESTN_TY_CODE,
A.QESTN_CN,
A.MXMM_CHOISE_CO,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
A.QUSTNR_TMPLAT_ID "qestnrTmplatId",
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
(SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID) FRST_REGISTER_NM,
@ -168,6 +168,7 @@
<!-- 설문문항::입력 -->
<insert id="QustnrQestnManage.insertQustnrQestnManage">
/* QustnrQestnManage.insertQustnrQestnManage */
<![CDATA[
INSERT INTO LETTNQUSTNRQESITM (
@ -190,9 +191,9 @@
#qestnCn#,
#mxmmChoiseCo#,
#qestnrTmplatId#,
NOW(),
SYSDATE,
#frstRegisterId#,
NOW(),
SYSDATE,
#lastUpdusrId#
)

View File

@ -12,6 +12,7 @@
<select id="QustnrRespondInfo.selectSiteIdQustnrTmplat" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
/* QustnrRespondInfo.selectSiteIdQustnrTmplat */
SELECT
A.QUSTNR_TMPLAT_ID AS qestnrTmplatId
, A.QESTNR_ID AS qestnrId
@ -332,7 +333,12 @@
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>

View File

@ -2142,7 +2142,10 @@
DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
@ -3917,7 +3920,13 @@
</isNotEmpty>
<isNotEqual property="pageIndex" compareValue="0">
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</isNotEqual>
</select>
@ -4286,7 +4295,11 @@ VALUES
b.MBER_NM LIKE '%'||#searchKeyword#||'%'
</isNotEmpty>
ORDER BY b.MBER_NM asc
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 강사만족도 excel-->

View File

@ -0,0 +1,265 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<!-- 설문지 정보 테이블 -->
<sqlMap namespace="VEALettnQestnrInfo">
<typeAlias alias="VEAQestnrVO" type="kcc.ve.oprtn.qestnr.service.VEAQestnrVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEALettnQestnrInfoDAO.table_name">
LettnQestnrInfo
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEALettnQestnrInfoDAO.column_name">
qustnr_tmplat_id,
qestnr_id,
qustnr_sj,
qustnr_purps,
qustnr_writng_guidance_cn,
qustnr_trget,
qustnr_bgnde,
qustnr_endde,
frst_regist_pnttm,
frst_register_id,
last_updt_pnttm,
last_updusr_id,
sttus,
qustnr_view_trget,
site_id,
site_id_cd,
before_and_after,
atch_file_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEALettnQestnrInfoDAO.select_column_name">
a.qustnr_tmplat_id AS qustnrTmplatId,
a.qestnr_id AS qestnrId,
a.qustnr_sj AS qustnrSj,
a.qustnr_purps AS qustnrPurps,
a.qustnr_writng_guidance_cn AS qustnrWritngGuidanceCn,
a.qustnr_trget AS qustnrTrget,
a.qustnr_bgnde AS qustnrBgnde,
a.qustnr_endde AS qustnrEndde,
TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm,
a.frst_register_id AS frstRegisterId,
TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS lastUpdtPnttm,
a.last_updusr_id AS lastUpdusrId,
a.sttus AS sttus,
a.qustnr_view_trget AS qustnrViewTrget,
a.site_id AS siteId,
a.site_id_cd AS siteIdCd,
a.before_and_after AS beforeAndAfter,
a.atch_file_id AS atchFileId
</sql>
<!-- 설문지 정보 C -->
<insert id="VEALettnQestnrInfoDAO.insert" parameterClass="VEAQestnrVO">
/* VEALettnQestnrInfoDAO.insert */
MERGE INTO <include refid="VEALettnQestnrInfoDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQestnrInfoDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrSj#,
#qustnrPurps#,
#qustnrWritngGuidanceCn#,
#qustnrTrget#,
#qustnrBgnde#,
#qustnrEndde#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL,
#sttus#,
#qustnrViewTrget#,
#siteId#,
#siteIdCd#,
#beforeAndAfter#,
#atchFileId#
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
qustnr_sj = #qustnrSj#,
qustnr_purps = #qustnrPurps#,
qustnr_writng_guidance_cn = #qustnrWritngGuidanceCn#,
qustnr_trget = #qustnrTrget#,
qustnr_bgnde = #qustnrBgnde#,
qustnr_endde = #qustnrEndde#,
sttus = #sttus#,
qustnr_view_trget = #qustnrViewTrget#,
site_id = #siteId#,
site_id_cd = #siteIdCd#,
before_and_after = #beforeAndAfter#,
atch_file_id = #atchFileId#
</insert>
<!-- 강의년도설정 R -->
<select id="VEALettnQestnrInfoDAO.selectDetail" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQestnrInfoDAO.select_column_name"/>
FROM
<include refid="VEALettnQestnrInfoDAO.table_name"/> a
WHERE
a.qustnr_tmplat_id =#qustnrTmplatId#
AND a.qestnr_id =#qestnrId#
</select>
<!-- 강의년도설정 U -->
<update id="VEALettnQestnrInfoDAO.update" parameterClass="VEAQestnrVO">
/* VEALettnQestnrInfoDAO.update */
MERGE INTO <include refid="VEALettnQestnrInfoDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQestnrInfoDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrSj#,
#qustnrPurps#,
#qustnrWritngGuidanceCn#,
#qustnrTrget#,
#qustnrBgnde#,
#qustnrEndde#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL,
#sttus#,
#qustnrViewTrget#,
#siteId#,
#siteIdCd#,
#beforeAndAfter#,
#atchFileId#
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
qustnr_sj = #qustnrSj#,
qustnr_purps = #qustnrPurps#,
qustnr_writng_guidance_cn = #qustnrWritngGuidanceCn#,
qustnr_trget = #qustnrTrget#,
qustnr_bgnde = #qustnrBgnde#,
qustnr_endde = #qustnrEndde#,
sttus = #sttus#,
qustnr_view_trget = #qustnrViewTrget#,
site_id = #siteId#,
site_id_cd = #siteIdCd#,
before_and_after = #beforeAndAfter#,
atch_file_id = #atchFileId#
</update>
<!-- 강의년도설정 D -->
<delete id="VEALettnQestnrInfoDAO.delete" parameterClass="VEAQestnrVO">
DELETE FROM
<include refid="VEALettnQestnrInfoDAO.table_name"/>
WHERE
qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
</delete>
<!-- 강의년도설정 L -->
<select id="VEALettnQestnrInfoDAO.selectList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQestnrInfoDAO.select_column_name"/>
FROM
<include refid="VEALettnQestnrInfoDAO.table_name"/> a
WHERE
1=1
</select>
<!-- 강의년도설정 L page -->
<select id="VEALettnQestnrInfoDAO.selectPagingList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEALettnQestnrInfoDAO.select_column_name"/>
FROM
<include refid="VEALettnQestnrInfoDAO.table_name"/> a
WHERE
1=1
<isNotEmpty property="selectPagingListQuery">
$selectPagingListQuery$
</isNotEmpty>
<isNotEmpty property="qustnrTmplatId">
AND a.qustnr_tmplat_id=#qustnrTmplatId#
</isNotEmpty>
<isNotEmpty property="qestnrId">
AND a.qestnr_id=#qestnrId#
</isNotEmpty>
ORDER BY 1
<isEmpty property="orderByQuery">
, a.qustnr_tmplat_id desc
</isEmpty>
<isNotEmpty property="orderByQuery">
, $orderByQuery$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
</sqlMap>

View File

@ -0,0 +1,139 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<!-- 설문지 정보 테이블 -->
<sqlMap namespace="VEALettnQestnrMIX">
<typeAlias alias="VEAQestnrVO" type="kcc.ve.oprtn.qestnr.service.VEAQestnrVO"/>
<!-- 설문지 양식리스트 L page -->
<select id="VEALettnQestnrMIXDAO.selectPagingList_LQI" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
/* VEALettnQestnrMIXDAO.selectPagingList_LQI */
<![CDATA[
select
count(a.qestnr_id) over() as totcnt
, a.qestnr_id qestnrId
, a.qustnr_sj qustnrSj
, a.qustnr_purps qustnrPurps
, a.qustnr_writng_guidance_cn qustnrWritngGuidanceCn
, a.qustnr_bgnde qustnrBgnde
, a.qustnr_endde qustnrEndde
, a.qustnr_trget qustnrTrget
, a.qustnr_tmplat_id qustnrTmplatId
, a.frst_regist_pnttm frstRegisterPnttm
, a.frst_register_id
, (select user_nm from comvnusermaster where esntl_id = a.frst_register_id) frstRegisterNm
, a.last_updt_pnttm
, a.last_updusr_id
, a.site_id siteId
, a.site_id_cd siteIdCd
, a.before_and_after beforeAndAfter
, a.atch_file_id
, ( select count(*) from lettnqustnrqesitm where qestnr_id = a.qestnr_id ) qustnrQesitmCnt
, ( select count(*) from lettnqustnrrespondinfo where qestnr_id = a.qestnr_id ) rrspnsResultCnt
, case
when a.qustnr_endde < TO_CHAR(SYSDATE, 'YYYYMMDD') then '2' /* */
else a.sttus
end as sttus
, (select qustnr_tmplat_path_nm from lettnqustnrtmplat where qustnr_tmplat_id = a.qustnr_tmplat_id ) template_url
from
lettnqestnrinfo a
where 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
OR FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%'
)
)
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_SJ">
AND QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
</isNotEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
<isNotEqual property="pageIndex" compareValue="0">
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</isNotEqual>
</select>
<!-- //설문지 양식 상세 L page -->
<select id="VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_01" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
/* VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_01 */
<![CDATA[
SELECT
A.QESTNR_ID AS qestnrId,
A.QUSTNR_SJ AS qustnrSj,
A.QUSTNR_PURPS AS qustnrPurps,
A.QUSTNR_WRITNG_GUIDANCE_CN AS qustnrWritngGuidanceCn,
/*
TO_DATE(A.QUSTNR_BGNDE,'YYYY-MM-DD') AS qustnrBgnde,
TO_DATE(A.QUSTNR_ENDDE,'YYYY-MM-DD') AS qustnrEndde,
*/
A.QUSTNR_BGNDE AS qustnrBgnde,
A.QUSTNR_ENDDE AS qustnrEndde,
A.QUSTNR_TRGET,
A.QUSTNR_TMPLAT_ID,
(SELECT QUSTNR_TMPLAT_TY FROM LETTNQUSTNRTMPLAT WHERE QUSTNR_TMPLAT_ID = A.QUSTNR_TMPLAT_ID) QUSTNR_TMPLAT_TY,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24') FRST_REGIST_PNTTM,
(SELECT USER_NM FROM LETTNEMPLYRINFO
WHERE ESNTL_ID = A.FRST_REGISTER_ID) FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
( SELECT COUNT(*) FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = A.QESTNR_ID ) QUSTNRQESITM_CNT ,
( SELECT COUNT(*) FROM LETTNQUSTNRRSPNSRESULT WHERE QESTNR_ID = A.QESTNR_ID ) RRSPNSRESULT_CNT,
( SELECT COUNT(*) FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = A.QESTNR_ID ) rrspnsResultCnt,
CASE
WHEN A.STTUS = '1' THEN
CASE
WHEN TO_DATE(A.QUSTNR_ENDDE,'YYYYMMDD') < TO_CHAR(SYSDATE, 'YYYYMMDD') THEN '2'
ELSE '1'
END
ELSE A.STTUS
END AS STTUS,
A.SITE_ID AS siteId,
A.SITE_ID_CD AS siteIdCd,
A.QUSTNR_VIEW_TRGET,
A.BEFORE_AND_AFTER,
A.ATCH_FILE_ID
FROM LETTNQESTNRINFO A
WHERE 1=1
AND QESTNR_ID = #qestnrId#
]]>
</select>
<!-- //설문지 정보 조건에 맞는 R -->
<select id="VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_02" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
/* VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_02 */
SELECT A.QUSTNR_TMPLAT_ID AS qestnrTmplatId
, A.QESTNR_ID AS qestnrId
, A.SITE_ID AS siteId
, A.site_id_cd AS siteIdCd
FROM LETTNQESTNRINFO A
WHERE 1 =1
AND to_char(sysdate, 'YYYY.MM.DD') BETWEEN
NVL(a.qustnr_bgnde,'2000.01.01') AND NVL(a.qustnr_endde,'9999.12.31')
AND A.SITE_ID = #siteId#
AND A.site_id_cd=#siteIdCd#
LIMIT 1
</select>
</sqlMap>

View File

@ -0,0 +1,282 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<!-- 찾교 설문 응답 정보 테이블 -->
<sqlMap namespace="VEALettnQestnrRsltDetail">
<typeAlias alias="VEAQestnrVO" type="kcc.ve.oprtn.qestnr.service.VEAQestnrVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEALettnQestnrRsltDetailDAO.table_name">
lettnqestnrrsltDetail
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEALettnQestnrRsltDetailDAO.column_name">
qustnr_tmplat_id,
qestnr_id,
qustnr_qesitm_id,
qustnr_rslt_id,
edu_aplct_ord,
edu_chasi_ord,
respond_id,
very_satisfied,
satisfied,
neither,
dissatisfied,
very_dissatisfied,
answer,
qustnr_iem_id,
frst_regist_pnttm,
frst_register_id,
last_updt_pnttm,
last_updusr_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEALettnQestnrRsltDetailDAO.select_column_name">
a.qustnr_tmplat_id AS qustnrTmplatId,
a.qestnr_id AS qestnrId,
a.qustnr_qesitm_id AS qustnrQesitmId,
a.qustnr_rslt_id AS qustnrRsltId,
a.edu_aplct_ord AS eduAplctOrd,
a.edu_chasi_ord AS eduChasiOrd,
a.respond_id AS respondId,
a.very_satisfied AS verySatisfied,
a.satisfied AS satisfied,
a.neither AS neither,
a.dissatisfied AS dissatisfied,
a.very_dissatisfied AS veryDissatisfied,
a.answer AS answer,
a.qustnr_iem_id AS qustnrIemId,
TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm,
a.frst_register_id AS frstRegisterId,
TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS lastUpdtPnttm,
a.last_updusr_id AS lastUpdusrId
</sql>
<!-- 설문지 응답 정보 정보 C -->
<insert id="VEALettnQestnrRsltDetailDAO.insert" parameterClass="VEAQestnrVO">
/* VEALettnQestnrRsltDetailDAO.insert */
MERGE INTO <include refid="VEALettnQestnrRsltDetailDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_qesitm_id =#qustnrQesitmId#
AND qustnr_rslt_id =#qustnrRsltId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQestnrRsltDetailDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrQesitmId#,
#qustnrRsltId#,
#eduAplctOrd#,
#eduChasiOrd#,
#respondId#,
#verySatisfied#,
#satisfied#,
#neither#,
#dissatisfied#,
#veryDissatisfied#,
#answer#,
#qustnrIemId#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
edu_aplct_ord = #eduAplctOrd#,
edu_chasi_ord = #eduChasiOrd#,
respond_id = #respondId#,
very_satisfied = #verySatisfied#,
satisfied = #satisfied#,
neither = #neither#,
dissatisfied = #dissatisfied#,
very_dissatisfied = #veryDissatisfied#,
answer = #answer#,
qustnr_iem_id = #qustnrIemId#
</insert>
<!-- 설문지 응답 정보 R -->
<select id="VEALettnQestnrRsltDetailDAO.selectDetail" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQestnrRsltDetailDAO.select_column_name"/>
FROM
<include refid="VEALettnQestnrRsltDetailDAO.table_name"/> a
WHERE
a.qustnr_tmplat_id =#qustnrTmplatId#
AND a.qestnr_id =#qestnrId#
AND a.qustnr_qesitm_id =#qustnrQesitmId#
AND a.qustnr_rslt_id =#qustnrRsltId#
</select>
<!-- 설문지 응답 정보 U -->
<update id="VEALettnQestnrRsltDetailDAO.update" parameterClass="VEAQestnrVO">
/* VEALettnQestnrRsltDetailDAO.update */
MERGE INTO <include refid="VEALettnQestnrRsltDetailDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_qesitm_id =#qustnrQesitmId#
AND qustnr_rslt_id =#qustnrRsltId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQestnrRsltDetailDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrQesitmId#,
#qustnrRsltId#,
#eduAplctOrd#,
#eduChasiOrd#,
#respondId#,
#verySatisfied#,
#satisfied#,
#neither#,
#dissatisfied#,
#veryDissatisfied#,
#answer#,
#qustnrIemId#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
edu_aplct_ord = #eduAplctOrd#,
edu_chasi_ord = #eduChasiOrd#,
respond_id = #respondId#,
very_satisfied = #verySatisfied#,
satisfied = #satisfied#,
neither = #neither#,
dissatisfied = #dissatisfied#,
very_dissatisfied = #veryDissatisfied#,
answer = #answer#,
qustnr_iem_id = #qustnrIemId#
</update>
<!-- 설문지 응답 정보 D -->
<delete id="VEALettnQestnrRsltDetailDAO.delete" parameterClass="VEAQestnrVO">
DELETE FROM
<include refid="VEALettnQestnrRsltDetailDAO.table_name"/>
WHERE
qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_qesitm_id =#qustnrQesitmId#
AND qustnr_rslt_id =#qustnrRsltId#
</delete>
<!-- 설문지 응답 정보 L -->
<select id="VEALettnQestnrRsltDetailDAO.selectList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQestnrRsltDetailDAO.select_column_name"/>
FROM
<include refid="VEALettnQestnrRsltDetailDAO.table_name"/> a
WHERE
1=1
</select>
<!-- 설문지 응답 정보 L page -->
<select id="VEALettnQestnrRsltDetailDAO.selectPagingList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEALettnQestnrRsltDetailDAO.select_column_name"/>
FROM
<include refid="VEALettnQestnrRsltDetailDAO.table_name"/> a
WHERE
1=1
<isNotEmpty property="selectPagingListQuery">
$selectPagingListQuery$
</isNotEmpty>
<isNotEmpty property="qustnrTmplatId">
AND a.qustnr_tmplat_id=#qustnrTmplatId#
</isNotEmpty>
<isNotEmpty property="qestnrId">
AND a.qestnr_id=#qestnrId#
</isNotEmpty>
<isNotEmpty property="qustnrQesitmId">
AND a.qustnr_qesitm_id =#qustnrQesitmId#
</isNotEmpty>
<isNotEmpty property="qustnrRsltId">
AND a.qustnr_rslt_id =#qustnrRsltId#
</isNotEmpty>
ORDER BY 1
<isEmpty property="orderByQuery">
, a.qustnr_tmplat_id desc
</isEmpty>
<isNotEmpty property="orderByQuery">
, $orderByQuery$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
</sqlMap>

View File

@ -0,0 +1,219 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<!-- 설문지 문항 테이블 -->
<sqlMap namespace="VEALettnQustnrQesItm">
<typeAlias alias="VEAQestnrVO" type="kcc.ve.oprtn.qestnr.service.VEAQestnrVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEALettnQustnrQesItmDAO.table_name">
LettnQustnrQesItm
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEALettnQustnrQesItmDAO.column_name">
qustnr_tmplat_id,
qestnr_id,
qustnr_qesitm_id,
qestn_sn,
qestn_ty_code,
qestn_cn,
mxmm_choise_co,
frst_regist_pnttm,
frst_register_id,
last_updt_pnttm,
last_updusr_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEALettnQustnrQesItmDAO.select_column_name">
a.qustnr_tmplat_id AS qustnrTmplatId,
a.qestnr_id AS qestnrId,
a.qustnr_qesitm_id AS qustnrQesitmId,
a.qestn_sn AS qestnSn,
a.qestn_ty_code AS qestnTyCode,
a.qestn_cn AS qestnCn,
a.mxmm_choise_co AS mxmmChoiseCo,
TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm,
a.frst_register_id AS frstRegisterId,
TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS lastUpdtPnttm,
a.last_updusr_id AS lastUpdusrId
</sql>
<!-- 설문지 문항 정보 C -->
<insert id="VEALettnQustnrQesItmDAO.insert" parameterClass="VEAQestnrVO">
/* VEALettnQustnrQesItmDAO.insert */
MERGE INTO <include refid="VEALettnQustnrQesItmDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_qesitm_id =#qustnrQesitmId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQustnrQesItmDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrQesitmId#,
#qestnSn#,
#qestnTyCode#,
#qestnCn#,
#mxmmChoiseCo#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
qestn_sn = #qestnSn#,
qestn_ty_code = #qestnTyCode#,
qestn_cn = #qestnCn#,
mxmm_choise_co = #mxmmChoiseCo#
</insert>
<!-- 설문지 문항설정 R -->
<select id="VEALettnQustnrQesItmDAO.selectDetail" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQustnrQesItmDAO.select_column_name"/>
FROM
<include refid="VEALettnQustnrQesItmDAO.table_name"/> a
WHERE
a.qustnr_tmplat_id =#qustnrTmplatId#
AND a.qestnr_id =#qestnrId#
AND a.qustnr_qesitm_id =#qustnrQesitmId#
</select>
<!-- 설문지 문항설정 U -->
<update id="VEALettnQustnrQesItmDAO.update" parameterClass="VEAQestnrVO">
/* VEALettnQustnrQesItmDAO.update */
MERGE INTO <include refid="VEALettnQustnrQesItmDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_qesitm_id =#qustnrQesitmId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQustnrQesItmDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrQesitmId#,
#qestnSn#,
#qestnTyCode#,
#qestnCn#,
#mxmmChoiseCo#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
qestn_sn = #qestnSn#,
qestn_ty_code = #qestnTyCode#,
qestn_cn = #qestnCn#,
mxmm_choise_co = #mxmmChoiseCo#
</update>
<!-- 설문지 문항설정 D -->
<delete id="VEALettnQustnrQesItmDAO.delete" parameterClass="VEAQestnrVO">
DELETE FROM
<include refid="VEALettnQustnrQesItmDAO.table_name"/>
WHERE
qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_qesitm_id =#qustnrQesitmId#
</delete>
<!-- 설문지 문항설정 L -->
<select id="VEALettnQustnrQesItmDAO.selectList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQustnrQesItmDAO.select_column_name"/>
FROM
<include refid="VEALettnQustnrQesItmDAO.table_name"/> a
WHERE
1=1
</select>
<!-- 설문지 문항설정 L page -->
<select id="VEALettnQustnrQesItmDAO.selectPagingList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEALettnQustnrQesItmDAO.select_column_name"/>
FROM
<include refid="VEALettnQustnrQesItmDAO.table_name"/> a
WHERE
1=1
<isNotEmpty property="selectPagingListQuery">
$selectPagingListQuery$
</isNotEmpty>
<isNotEmpty property="qustnrTmplatId">
AND a.qustnr_tmplat_id=#qustnrTmplatId#
</isNotEmpty>
<isNotEmpty property="qestnrId">
AND a.qestnr_id=#qestnrId#
</isNotEmpty>
<isNotEmpty property="qustnrQesitmId">
AND a.qustnr_qesitm_id=#qustnrQesitmId#
</isNotEmpty>
ORDER BY 1
<isEmpty property="orderByQuery">
, a.qustnr_tmplat_id desc
</isEmpty>
<isNotEmpty property="orderByQuery">
, $orderByQuery$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
</sqlMap>

View File

@ -0,0 +1,223 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<!-- 설문지 응답자 정보 테이블 -->
<sqlMap namespace="VEALettnQustnrRespondInfo">
<typeAlias alias="VEAQestnrVO" type="kcc.ve.oprtn.qestnr.service.VEAQestnrVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEALettnQustnrRespondInfoDAO.table_name">
lettnqustnrrespondinfo
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEALettnQustnrRespondInfoDAO.column_name">
qustnr_tmplat_id,
qestnr_id,
qustnr_respond_id,
edu_aplct_ord,
edu_chasi_ord,
qestnr_respondent_count,
qestnr_participant_count,
frst_regist_pnttm,
frst_register_id,
last_updt_pnttm,
last_updusr_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEALettnQustnrRespondInfoDAO.select_column_name">
a.qustnr_tmplat_id AS qustnrTmplatId,
a.qestnr_id AS qestnrId,
a.qustnr_respond_id AS qustnrRespondId,
a.edu_aplct_ord AS eduAplctOrd,
a.edu_chasi_ord AS eduChasiOrd,
a.qestnr_respondent_count AS qestnrRespondentCount,
a.qestnr_participant_count AS qestnrParticipantCount,
TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm,
a.frst_register_id AS frstRegisterId,
TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS lastUpdtPnttm,
a.last_updusr_id AS lastUpdusrId
</sql>
<!-- 설문지 응답자 정보 정보 C -->
<insert id="VEALettnQustnrRespondInfoDAO.insert" parameterClass="VEAQestnrVO">
/* VEALettnQustnrRespondInfoDAO.insert */
MERGE INTO <include refid="VEALettnQustnrRespondInfoDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_respond_id =#qustnrRespondId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQustnrRespondInfoDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrRespondId#,
#eduAplctOrd#,
#eduChasiOrd#,
#qestnrRespondentCount#,
#qestnrParticipantCount#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
edu_aplct_ord = #eduAplctOrd#,
edu_chasi_ord = #eduChasiOrd#,
qestnr_respondent_count = #qestnrRespondentCount#,
qestnr_participant_count = #qestnrParticipantCount#
</insert>
<!-- 설문지 응답자 정보 R -->
<select id="VEALettnQustnrRespondInfoDAO.selectDetail" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQustnrRespondInfoDAO.select_column_name"/>
FROM
<include refid="VEALettnQustnrRespondInfoDAO.table_name"/> a
WHERE
a.qustnr_tmplat_id =#qustnrTmplatId#
AND a.qestnr_id =#qestnrId#
AND a.qustnr_respond_id =#qustnrRespondId#
</select>
<!-- 설문지 응답자 정보 U -->
<update id="VEALettnQustnrRespondInfoDAO.update" parameterClass="VEAQestnrVO">
/* VEALettnQustnrRespondInfoDAO.update */
MERGE INTO <include refid="VEALettnQustnrRespondInfoDAO.table_name"/>
USING DUAL
ON(qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_respond_id =#qustnrRespondId#
)
WHEN NOT MATCHED THEN
INSERT
(
<include refid="VEALettnQustnrRespondInfoDAO.column_name"/>
)
VALUES(
#qustnrTmplatId#,
#qestnrId#,
#qustnrRespondId#,
#eduAplctOrd#,
#eduChasiOrd#,
#qestnrRespondentCount#,
#qestnrParticipantCount#,
SYSDATE,
#frstRegisterId#,
NULL,
NULL
)
WHEN MATCHED THEN
UPDATE
SET
last_updusr_id = #frstRegisterId#,
last_updt_pnttm = SYSDATE,
edu_aplct_ord = #eduAplctOrd#,
edu_chasi_ord = #eduChasiOrd#,
qestnr_respondent_count = #qestnrRespondentCount#,
qestnr_participant_count = #qestnrParticipantCount#
</update>
<!-- 설문지 응답자 정보 D -->
<delete id="VEALettnQustnrRespondInfoDAO.delete" parameterClass="VEAQestnrVO">
DELETE FROM
<include refid="VEALettnQustnrRespondInfoDAO.table_name"/>
WHERE
qustnr_tmplat_id =#qustnrTmplatId#
AND qestnr_id =#qestnrId#
AND qustnr_respond_id =#qustnrRespondId#
</delete>
<!-- 설문지 응답자 정보 L -->
<select id="VEALettnQustnrRespondInfoDAO.selectList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
<include refid="VEALettnQustnrRespondInfoDAO.select_column_name"/>
FROM
<include refid="VEALettnQustnrRespondInfoDAO.table_name"/> a
WHERE
1=1
</select>
<!-- 설문지 응답자 정보 L page -->
<select id="VEALettnQustnrRespondInfoDAO.selectPagingList" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEALettnQustnrRespondInfoDAO.select_column_name"/>
FROM
<include refid="VEALettnQustnrRespondInfoDAO.table_name"/> a
WHERE
1=1
<isNotEmpty property="selectPagingListQuery">
$selectPagingListQuery$
</isNotEmpty>
<isNotEmpty property="qustnrTmplatId">
AND a.qustnr_tmplat_id=#qustnrTmplatId#
</isNotEmpty>
<isNotEmpty property="qestnrId">
AND a.qestnr_id=#qestnrId#
</isNotEmpty>
<isNotEmpty property="qustnrRespondId">
AND qustnr_respond_id =#qustnrRespondId#
</isNotEmpty>
ORDER BY 1
<isEmpty property="orderByQuery">
, a.qustnr_tmplat_id desc
</isEmpty>
<isNotEmpty property="orderByQuery">
, $orderByQuery$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
</sqlMap>

View File

@ -0,0 +1,208 @@
<%--
Class Name : UserQustnrItemManageRegist.jsp
Description : 설문항목 등록 페이지
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2008.03.09 장동한 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 장동한
since : 2009.03.09
--%>
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<c:set var="ImgUrl" value="/images/egovframework/com/uss/olp/qim/"/>
<!DOCTYPE html>
<html>
<head>
<title>설문항목 등록</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-language" content="ko">
<link rel="stylesheet" href="<c:url value='/'/>css/common.css" type="text/css" >
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="qustnrItemManageVO" staticJavascript="false" xhtml="true" cdata="false"/>
<script type="text/javascript" src="<c:url value='/js/showModalDialog.js'/>" ></script>
<script type="text/javaScript" language="javascript">
$(document).ready(function() {
fn_egov_init_QustnrItemManage();
});
/* ********************************************************
* 초기화
******************************************************** */
function fn_egov_init_QustnrItemManage(){
document.getElementById("iemSn").value = "1";
//document.getElementById("qestnrEndDe").value = "2008-01-30";
}
/* ********************************************************
* 목록 으로 가기
******************************************************** */
function fn_egov_list_QustnrItemManage(){
location.href = "<c:url value='/uss/olp/qim/EgovQustnrItemManageList.do' />";
}
/* ********************************************************
* 저장처리화면
******************************************************** */
function fn_egov_save_QustnrItemManage(){
var varFrom = document.getElementById("qustnrItemManageVO");
if(confirm("<spring:message code='common.save.msg' />")){
varFrom.action = "<c:url value='/uss/olp/qim/EgovQustnrItemManageRegist.do' />";
if(varFrom.qestnrCn.value == "" ||
varFrom.qestnrTmplatId.value == "" ||
varFrom.qestnrId.value == ""
){
alert("설문지정보를 입력해주세요!");
varFrom.qestnrCn.focus();
return;
}
if(varFrom.qestnrQesitmCn.value == "" ||
varFrom.qestnrQesitmId.value == ""
){
alert("설문문항정보를 입력해주세요!");
varFrom.qestnrQesitmCn.focus();
return;
}
if(!validateQustnrItemManageVO(varFrom)){
return;
}else{
varFrom.submit();
}
}
}
/* ********************************************************
* 설문지정보 팝업창열기
******************************************************** */
function fn_egov_QustnrManageListPopup_QustnrItemManage(){
window.showModalDialog("<c:url value='/uss/olp/qmc/EgovQustnrManageListPopup.do' />", self,"dialogWidth=800px;dialogHeight=500px;resizable=yes;center=yes");
}
/* ********************************************************
* 설문지문항정보 팝업창열기
******************************************************** */
function fn_egov_QustnrQestnManageListPopup_QustnrItemManage(){
var sParam = "";
sParam = sParam + "searchCondition=QESTNR_ID";
sParam = sParam + "&searchKeyword=" + document.getElementById("qestnrId").value;
window.showModalDialog("<c:url value='/uss/olp/qqm/EgovQustnrQestnManageListPopup.do' />?" + sParam, self,"dialogWidth=800px;dialogHeight=500px;resizable=yes;center=yes");
}
</script>
<style> .default_tablestyle table{border: 1px solid #dddddd;}</style>
</head>
<body>
<!-- 자바스크립트 경고 태그 -->
<noscript class="noScriptTitle">자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript>
<div id="content">
<!-- 현재위치 네비게이션 시작 -->
<div id="cur_loc">
<div id="cur_loc_align">
<ul>
<li>HOME</li>
<li>&gt;</li>
<li>포털서비스관리</li>
<li>&gt;</li>
<li>설문관리</li>
<li>&gt;</li>
<li><strong>설문항목</strong></li>
</ul>
</div>
</div>
<div id="content_field"><!--contents start-->
<!-- 상단타이틀 -->
<form:form commandName="qustnrItemManageVO" action="" method="post">
<!-- sub title start -->
<div><h2>설문항목 등록</h2></div>
<!-- sub title end -->
<!--detail area start -->
<div class="search_service">
<div class="default_tablestyle">
<table width="100%" summary="이 표는 설문항목 목록 정보를 제공하며, 설문정보, 설문문항정보, 항목순번, 항목내용, 기타답변여부 정보로 구성되어 있습니다 .">
<tr>
<td class="td_width">설문정보<img src="<c:url value='/'/>images/required.gif" alt="필수항목" title="필수항목" width="15" height="15"/></td>
<td class="td_content">
<input name="qestnrCn" id="qestnrCn" type="text" size="73" value="" title="설문정보 입력" maxlength="4000" style="width:300px;">
<a href="#LINK" onClick="fn_egov_QustnrManageListPopup_QustnrItemManage()">
<img src="<c:url value='/img/post/serch_img.png' />" align="middle" style="border:0px" alt="설문정보" title="설문정보">
</a>
<input name="qestnrId" id="qestnrId" type="hidden" value="">
<input name="qestnrTmplatId" id="qestnrTmplatId" type="hidden" value="">
</td>
</tr>
<tr>
<td class="td_width">설문문항정보<img src="<c:url value='/'/>images/required.gif" alt="필수항목" title="필수항목" width="15" height="15"/></td>
<td class="td_content">
<input name="qestnrQesitmCn" id="qestnrQesitmCn" type="text" title="설문문항정보 입력" size="73" value="" maxlength="4000" style="width:300px;">
<a href="#LINK" onClick="fn_egov_QustnrQestnManageListPopup_QustnrItemManage()">
<img src="<c:url value='/img/post/serch_img.png' />" align="middle" alt="설문문항정보" title="설문문항정보">
</a>
<input name="qestnrQesitmId" id="qestnrQesitmId" type="hidden" value="">
</td>
</tr>
<tr>
<td class="td_width">항목 순번<img src="<c:url value='/'/>images/required.gif" alt="필수항목" title="필수항목" width="15" height="15"/></td>
<td class="td_content">
<input name="iemSn" id="iemSn" type="text" size="5" title="항목 순번" value="" maxlength="5" style="width:100px;">
<form:errors path="iemSn" cssClass="error" />
</td>
</tr>
<tr>
<td class="td_width">항목 내용<img src="<c:url value='/'/>images/required.gif" alt="필수항목" title="필수항목" width="15" height="15"/></td>
<td class="td_content">
<textarea name="iemCn" class="textarea" title="항목 내용 입력" cols="100" rows="5" ></textarea>
<form:errors path="iemCn" cssClass="error" />
</td>
</tr>
<tr>
<td class="td_width">기타답변여부<img src="<c:url value='/'/>images/required.gif" alt="필수항목" title="필수항목" width="15" height="15"/></td>
<td class="td_content">
<select name="etcAnswerAt" title="기타답변여부 선택">
<option value="N">N</option>
<option value="Y">Y</option>
</select>
</td>
</tr>
</table>
</div>
</div>
<!--detail area end -->
<!-- 목록/저장버튼 시작-->
<table border="0" cellspacing="0" cellpadding="0" align="center"><tr><td>
<div class="buttons" align="center" style="margin-bottom:100px">
<a href="<c:url value='/uss/olp/qim/EgovQustnrItemManageList.do'/>">목록</a>
<a href="#" onclick="fn_egov_save_QustnrItemManage(document.forms['qustnrItemManageVO']); return false;">저장</a>
</div>
</td></tr></table>
<!-- 목록/저장버튼 끝-->
<input name="cmd" type="hidden" value="<c:out value='save'/>">
</form:form>
</div><!-- contents end -->
</div>
</body>
</html>

View File

@ -76,11 +76,13 @@ function fn_egov_list_QustnrManage(){
var iStartDay = parseInt(sStartDay);
var iEndDay = parseInt(sEndDay);
/*
if(iStartDay > iEndDay || iEndDay < iStartDay){
alert("설문기간 시작일은 종료일 보다 클수 없고 \n\n설문기간 종료일은 시작일 보다 작을수 없습니다!");
return;
}
*/
if(!validateQustnrManageVO(form)){
return;
@ -492,17 +494,16 @@ function delete_item(obj, fileIdx){
<form name="regiForm" method="get" action="<c:url value='/uss/olp/qqm/EgovItnQustnrQestnManageRegist.do'/>">
<input name="qestnSn" type="hidden" value="" />
<input name="qestnrId" type="hidden" value="<c:out value='${qustnrManageVO.qestnrId}' />" />
<input name="qestnrTmplatId" type="hidden" value="<c:out value='${listQustnrTmplat[0].qestnrTmplatId}' />" />
<input name="qestnrTmplatId" type="hidden" value="<c:out value='${listQustnrTmplat[0].qestnrtmplatid}' />" />
<input name="siteId" type="hidden" value="" />
</form>
<form name="modiForm" method="get" action="<c:url value='/sym/ccm/cde/EgovCcmCmmnDetailCodeModify.do'/>" >
<input name="qestnrId" type="hidden" value="<c:out value='${qustnrManageVO.qestnrId}' />" />
<input name="qestnSn" type="hidden" value="" />
<input name="cmd" type="hidden" />
<input name="siteId" type="hidden" value="" />
<input name="qestnrQesitmId" type="hidden" />
<input name="qestnrTmplatId" type="hidden" value="<c:out value='${listQustnrTmplat[0].qestnrTmplatId}' />" />
<input name="qestnrTmplatId" type="hidden" value="<c:out value='${listQustnrTmplat[0].qestnrtmplatid}' />" />
</form>
</body>
</html>

View File

@ -109,10 +109,12 @@ function fn_egov_list_QustnrManage(){
}
//첨부파일 등록 처리-step1
//if(!data.get("fileSize")){
/*
if($('#tbody_fiielist tr').length*1<=0){
alert("첨부파일을 등록해 주세요");
return false;
}
*/
if(confirm("<spring:message code='common.save.msg' />")){
//첨부파일 등록 처리

View File

@ -0,0 +1,364 @@
<%--
Class Name : EgovQustnrManageList.jsp
Description : 설문 조사 관리 리스트
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2009.04.02 이삼섭 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 이삼섭
since : 2009.04.02
--%>
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" />
<html lang="ko">
<head>
<meta http-equiv="Content-Language" content="ko" >
<title>설문 조회</title>
<script type="text/javascript">
/* ********************************************************
* 페이징 처리 함수
******************************************************** */
/* function linkPage(pageNo){
document.listForm.pageIndex.value = pageNo;
document.listForm.action = "<c:url value='/uss/olp/qmc/EgovQustnrManageList.do'/>";
document.listForm.submit();
} */
/* ********************************************************
* 등록 처리 함수
******************************************************** */
function fn_egov_regist_QustnrManage(){
location.href = "<c:url value='/uss/olp/qmc/EgovQustnrManageRegist.do'/>";
}
/* ********************************************************
* 수정 처리 함수
******************************************************** */
function fn_egov_modify_QustnrManage(qestnrId){
var vFrom = document.modiForm;
vFrom.cmd.value = '';
vFrom.qestnrId.value = qestnrId;
vFrom.action = "<c:url value='/uss/olp/qmc/UserQustnrManageModify.do'/>";;
vFrom.submit();
//location.href = "<c:url value='/uss/olp/qmc/UserQustnrManageModify.do'/>";
}
/* ********************************************************
* 상세회면 처리 함수
******************************************************** */
function fn_egov_detail_QustnrManage(qestnrId){
var vFrom = document.listForm;
vFrom.qestnrId.value = qestnrId;
vFrom.action = "<c:url value='/uss/olp/qmc/EgovQustnrManageDetail.do'/>";
vFrom.submit();
}
/* ********************************************************
* 삭제 처리 함수
******************************************************** */
function fn_egov_delete_QustnrManage(qestnrId){
var vFrom = document.modiForm;
if(confirm("설문문항,설문정보 등 설문지에 연관된 모든 정보가 삭제됩니다. \n\n삭제 하시겠습니까?")){
vFrom.qestnrId.value = qestnrId;
vFrom.cmd.value = 'del';
vFrom.action = "<c:url value='/uss/olp/qmc/UserQustnrDelete.do'/>?logParam=D";
vFrom.method = "post" ;
vFrom.submit();
}else{
vFrom.cmd.value = '';
}
}
/* ********************************************************
* 검색 함수
******************************************************** */
function fn_egov_search_QustnrManage(){
<%--<c:if test="${!empty loginId}">
if(""!= document.listForm.searchKeyword.value){
updateRecentSearch();//최근검색어 등록
}
</c:if>--%>
linkPage(1);
}
/* ********************************************************
* 선택한 설문지정보 -> 설문문항 바로가기
******************************************************** */
function fn_egov_list_QustnrQestnManag(qestnrId, qestnrTmplatId, Type){
var vFrom = document.listForm;
var sAction = "";
vFrom.qestnrId.value = qestnrId;
vFrom.qestnrTmplatId.value = qestnrTmplatId;
vFrom.searchCondition.options[0].selected = true;
vFrom.searchKeyword.value = '';
vFrom.searchMode.value = 'Y';
//QRM QQM QRI
if(Type == 'QRM'){ //설문응답자정보
sAction = "<c:url value='/uss/olp/qrm/EgovQustnrRespondManageList.do'/>";
}else if(Type == 'QQM'){ //설문문항
sAction = "<c:url value='/uss/olp/qqm/EgovQustnrQestnManageList.do'/>";
}else if(Type == 'QRI'){ //응답자결과
sAction = "<c:url value='/uss/olp/qri/EgovQustnrRespondInfoList.do'/>";
}
vFrom.action = sAction;
vFrom.submit();
}
/* ********************************************************
* 통계
******************************************************** */
function fn_egov_statistics_QustnrQestnManag(qestnrId, qestnrTmplatId){
var vFrom = document.listForm;
vFrom.qestnrId.value = qestnrId;
vFrom.qestnrTmplatId.value = qestnrTmplatId;
vFrom.searchCondition.options[0].selected = true;
vFrom.searchKeyword.value = '';
vFrom.action = "<c:url value='/uss/olp/qnn/EgovQustnrRespondInfoManageStatistics.do'/>";
vFrom.submit();
}
/* ********************************************************
* 미리보기
******************************************************** */
function fn_egov_qustnr_Priview(qestnrId, qestnrTmplatId , templateUrl ){
var qustnrPriviewWin = window.open('about:blank','qustnrPriview','scrollbars=yes, resizable=yes,width=600,height=800');
var vFrom = document.previewForm;
vFrom.qestnrId.value = qestnrId;
vFrom.qestnrTmplatId.value = qestnrTmplatId;
vFrom.templateUrl.value = templateUrl;
vFrom.preview.value = 'Y';
vFrom.target = 'qustnrPriview';
vFrom.method ="post";
vFrom.action = "<c:url value='/uss/olp/qri/template/template.do'/>";
vFrom.submit();
}
/* ********************************************************
* 결과보기
******************************************************** */
function fn_egov_qustnr_resultPriview(qestnrId, qestnrTmplatId){
var resultPriviewWin = window.open('about:blank','resultPriview', 'scrollbars=yes, resizable=yes,width=600,height=800');
var vFrom = document.previewForm;
vFrom.qestnrId.value = qestnrId;
vFrom.qestnrTmplatId.value = qestnrTmplatId;
vFrom.preview.value = 'Y';
vFrom.target = 'resultPriview';
vFrom.method ="post";
vFrom.action = "<c:url value='/uss/olp/qnn/EgovQustnrRespondInfoManageStatistics.do'/>";
vFrom.submit();
}
function linkPage(pageNo){
var listForm = document.listForm ;
listForm.pageIndex.value = pageNo ;
if($("#delSttus").is(":checked") ) {
listForm.delSttus.value = "Y";
}
listForm.submit();
}
</script>
</head>
<body>
<form name="listForm" action="<c:url value='/uss/olp/qmc/EgovQustnrManageList.do'/>" method="post">
<input name="qestnrId" type="hidden" value="">
<input name="qestnrTmplatId" type="hidden" value="">
<input name="templateUrl" type="hidden" value="">
<input name="searchMode" type="hidden" value="">
<input name="preview" type="hidden" value="">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>">
<input type="hidden" name="searchSortCnd" value="<c:out value="${searchVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${searchVO.searchSortOrd}" />" />
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>설문조사관리</h2>
<ul class="cont_nav">
<li class="home"><i></i></li>
<li>
<p>설문조사관리</p>
</li>
<li><span class="cur_nav">설문조사목록</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<!-- list_top -->
<div class="list_top list_top_sub">
<p>총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
<div class="list_util">
<c:if test="${siteId eq 'super'}">
<select name="searchConditionSite" class="sel_type1" id="searchConditionSite" title="사이트검색">
<option value="" <c:if test="${empty searchVO.searchConditionSite }">selected="selected"</c:if> >전체 사이트</option>
<c:forEach var="result" items="${siteManageList}" varStatus="status">
<option value="${result.siteId}" <c:if test="${result.siteId eq searchVO.searchConditionSite }">selected="selected"</c:if> >${result.siteNm}</option>
</c:forEach>
</select>
</c:if>
<kc:select codeId="VE0011" id="srcDlvSts" defaultText="전체" defaultValue="" />
<select class="sel_type1" name="searchCondition" id="searchCondition">
<option value=''>선택하세요</option>
<option value='QUSTNR_SJ' <c:if test="${searchCondition == 'QUSTNR_SJ'}">selected</c:if>>설문제목</option>
<option value='FRST_REGISTER_ID' <c:if test="${searchCondition == 'FRST_REGISTER_ID'}">selected</c:if>>작성자명</option>
</select>
<input id="searchKeyword" name="searchKeyword" class="recentSearch" type="text" value="<c:out value='${searchKeyword}'/>" size="25" title="검색" maxlength="250"/>
<button class="btn_type08" onclick="fn_egov_search_QustnrManage(); return false;">검색</button>
<select name="pageUnit" class="sel_type1" id="pageUnit" onchange="linkPage(1);" title="줄 선택">
<option value='10' <c:if test="${adjReqMgrVO.pageUnit == '10' or adjReqMgrVO.pageUnit == ''}">selected</c:if>>10줄</option>
<option value='20' <c:if test="${adjReqMgrVO.pageUnit == '20'}">selected</c:if>>20줄</option>
<option value='30' <c:if test="${adjReqMgrVO.pageUnit == '30'}">selected</c:if>>30줄</option>
<option value='100' <c:if test="${adjReqMgrVO.pageUnit == '100'}">selected</c:if>>100줄</option>
</select>
</div>
</div>
<!-- //list_top -->
<!-- list -->
<div class="list tbType01">
<table>
<colgroup>
<col style="width: 6%">
<col style="width: autp">
<%-- <col style="width: 35%"> --%>
<col style="width: 7%">
<col style="width: 7%">
<col style="width: 12%">
<col style="width: 17%">
<col style="width: 18%">
<col style="width: 8%">
<col style="width: 8%">
</colgroup>
<thead>
<tr>
<th>번호</th>
<th>설문제목</th>
<!-- <th>관리</th> -->
<th>문항수</th>
<th>참여자수</th>
<th>등록자</th>
<th>설문기간</th>
<th>사용처</th>
<th>대상</th>
<th>삭제</th>
</tr>
</thead>
<tbody>
<c:forEach var="resultInfo" items="${resultList}" varStatus="status">
<tr>
<td>
<c:if test="${searchVO.searchSortOrd eq 'desc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
</c:if>
<c:if test="${searchVO.searchSortOrd ne 'desc' }">
<c:out value="${(paginationInfo.currentPageNo - 1) * paginationInfo.recordCountPerPage + status.count}"/>
</c:if>
</td>
<c:if test="${siteId eq 'super'}">
<td>
<c:forEach var="siteManageList" items="${siteManageList}" varStatus="status">
<c:if test="${resultInfo.siteId eq siteManageList.siteId}">
<a href="#" onclick="fn_egov_modify_QustnrManage('${resultInfo.qestnrId}'); return false;">
<c:out value="${siteManageList.siteNm}"/>
</a>
</c:if>
</c:forEach>
</td>
</c:if>
<td class="left">
<a href="#" onclick="fn_egov_modify_QustnrManage('${resultInfo.qestnrId}'); return false;">
<c:out value="${resultInfo.qustnrSj}" escapeXml="true"/>
</a>
</td>
<!-- <td> -->
<%-- <input type="button" class="btnType2" value="미리보기" onclick="qustnrPopOpen(1,'${resultInfo.qestnrId}','QTMPLA_0000000000001'); return false;"> --%>
<%-- <input type="button" class="btnType2" value="결과보기" onclick="qustnrPopOpen(2,'${resultInfo.qestnrId}','QTMPLA_0000000000001'); return false;"> --%>
<%-- <input type="button" class="btnType2" value="엑셀다운로드" onclick="fn_egov_qustnr_excelDown('${resultInfo.qestnrId}','QTMPLA_0000000000001'); return false;"> --%>
<!-- </td> -->
<td>${resultInfo.qustnrQesitmCnt}</td>
<td>${resultInfo.rrspnsResultCnt}</td>
<td>${resultInfo.frstRegisterNm}</td>
<td class="wsClear">
${resultInfo.qustnrBgnde}~${resultInfo.qustnrEndde}
</td>
<td>
<kc:code codeId="VE0011" code="${resultInfo.siteId}"/>(${resultInfo.siteId})
<c:choose>
<c:when test="${resultInfo.siteId eq '30' && resultInfo.beforeAndAfter eq '01' }">
(사전)-${resultInfo.beforeAndAfter}
</c:when>
<c:when test="${resultInfo.siteId eq '30' && resultInfo.beforeAndAfter eq '02' }">
(사후)-${resultInfo.beforeAndAfter}
</c:when>
</c:choose>
</td>
<td>
<kc:code codeId="VEA012" code="${resultInfo.siteIdCd}"/>(${resultInfo.siteIdCd})
</td>
<td>
<input type="button" value="삭제" class="btnType1" onclick="fn_egov_delete_QustnrManage('${resultInfo.qestnrId}'); return false;">
</td>
</tr>
</c:forEach>
<c:if test="${empty resultList}">
<tr><td colspan="9"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list -->
<div class="btn_wrap btn_layout01">
<div class="btn_left"></div>
<div class="btn_center"></div>
<div class="btn_right">
<button class="btn_type06" onclick="location.href='<c:url value='/uss/olp/qmc/UserItnQustnrManageRegist.do'/>'; return false;" >등록</button>
</div>
</div>
<!-- page -->
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div>
<!-- //page -->
</div>
</div>
</div>
</form>
<form name="subForm" method="get" action="<c:url value='/uss/ion/pwm/detailPopup.do'/>">
<input name="qestnrId" type="hidden" />
<input name="qestnrTmplatId" type="hidden" />
<input name="searchMode" type="hidden" value="Y" />
</form>
<form name="modiForm" method="get" action="<c:url value='/sym/ccm/cde/EgovCcmCmmnDetailCodeModify.do'/>" >
<input name="qestnrId" type="hidden" />
<input name="cmd" type="hidden" />
</form>
<form name="searchForm" method="get" action="<c:url value='/uss/olp/qmc/EgovQustnrManageList.do'/>">
<input name="pageIndex" type="hidden" value="1" />
<input name="searchCondition" type="hidden" />
<input name="searchConditionSite" type="hidden" />
<input name="searchKeyword" type="hidden" />
</form>
<form name="previewForm" method="get" action="<c:url value='/uss/olp/qnn/EgovQustnrRespondInfoManageStatistics.do'/>" >
<input name="qestnrId" type="hidden" />
<input name="qestnrTmplatId" type="hidden" />
<input name="templateUrl" type="hidden" />
<input name="preview" type="hidden" />
</form>
</body>
</html>

View File

@ -0,0 +1,534 @@
<%--
Class Name : UserQustnrManageModify.jsp
Description : 설문관리 수정 페이지
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2008.03.09 장동한 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 장동한
since : 2009.03.09
--%>
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<c:set var="ImgUrl" value="/images/egovframework/com/uss/olp/qmc/"/>
<!DOCTYPE html>
<html>
<head>
<title>설문관리 수정</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-language" content="ko">
<script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js' />"></script>
<link rel="stylesheet" href="/offedu/visitEdu/adm/publish/datepicker/classic.css">
<link rel="stylesheet" href="/offedu/visitEdu/adm/publish/datepicker/classic.date.css">
<!-- script -->
<script src="/offedu/visitEdu/adm/publish/datepicker/picker.js"></script>
<script src="/offedu/visitEdu/adm/publish/datepicker/picker.date.js"></script>
<script src="/offedu/visitEdu/adm/publish/datepicker/legacy.js"></script>
<script src="/offedu/visitEdu/adm/publish/datepicker/ko_KR.js"></script>
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="qustnrManageVO" staticJavascript="false" xhtml="true" cdata="false"/>
<script type="text/javaScript" language="javascript">
$( document ).ready(function(){
var siteId = $("#siteId option:selected").val();
if(siteId == "30"){
$("#subCode").show();
}else{
$("#subCode").hide();
}
$("#siteId").change(function(){
if(this.value == "30"){
$("#subCode").show();
}else{
$("#subCode").hide();
}
});
$(function () {
$('#filebutton').click(function (e) {
e.preventDefault();
$('#file_temp').click();
});
});
});
/* ********************************************************
* 목록 으로 가기
******************************************************** */
function fn_egov_list_QustnrManage(){
location.href = "<c:url value='/uss/olp/qmc/UserQustnrManageList.do'/>";
}
/* ********************************************************
* 저장처리화면
******************************************************** */
function fncSave(){
var form = document.qustnrManageVO;
//var sStartDay = form.qestnrBeginDe.value.replaceAll("-","");
//var sEndDay = form.qestnrEndDe.value.replaceAll("-","");
var sStartDay = form.qustnrBgnde;
var sEndDay = form.qustnrEndde;
//var iStartDay = parseInt(sStartDay);
//var iEndDay = parseInt(sEndDay);
/*
if(iStartDay > iEndDay || iEndDay < iStartDay){
alert("설문기간 시작일은 종료일 보다 클수 없고 \n\n설문기간 종료일은 시작일 보다 작을수 없습니다!");
return;
}
*/
/*
if(!validateQustnrManageVO(form)){
return;
}
*/
//첨부파일 등록 처리-step1
//if(!data.get("fileSize")){
/*
if($('#tbody_fiielist tr').length*1<=0){
alert("첨부파일을 등록해 주세요");
return false;
}
*/
if(confirm("<spring:message code='common.save.msg' />")){
//첨부파일 등록 처리
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
//var data = new FormData(form);
var data = new FormData(document.getElementById("qustnrManageVO"));
//첨부파일 등록 처리-step2
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
var url = "${pageContext.request.contextPath}/uss/olp/qmc/UserItnQustnrManageInsertAjax.do";
$.ajax({
type:"POST",
enctype: 'multipart/form-data',
url: url,
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success:function(returnData){
if(returnData.result == "success"){
alert("저장되었습니다.");
fnList();
}
},
error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
}
/* ********************************************************
* PROTOTYPE JS FUNCTION
******************************************************** */
String.prototype.trim = function(){
return this.replace(/^\s+|\s+$/g, "");
}
String.prototype.replaceAll = function(src, repl){
var str = this;
if(src == repl){return str;}
while(str.indexOf(src) != -1) {
str = str.replace(src, repl);
}
return str;
}
/* ********************************************************
* 설문문제등록
******************************************************** */
function fn_egov_qustnr_insert(siteId){
var vFrom = document.regiForm;
vFrom.qestnSn.value = "<c:out value='${fn:length(qustnrQestnManageList)}' />";
vFrom.siteId.value = siteId;
vFrom.action = "<c:url value='/uss/olp/qqm/UserItnQustnrQestnManageRegist.do'/>";
vFrom.submit();
}
/* 설문 문제 삭제 */
function fn_egov_qustnr_delete(id) {
var vFrom = document.qustnrManageVO;
if (confirm("선택한 설문 문제를 삭제하시겠습니까?")) {
vFrom.qestnrQesitmId.value = qestnrQesitmId ;
vFrom.action = "<c:url value='/uss/olp/qqm/UserItnQustnrQestnManageDelete.do'/>";
vFrom.submit();
}
}
/* 설문 문제 수정 화면 function */
function fn_egov_qustnr_update_view(siteId, qestnrQesitmId , qestnSn) {
var vFrom = document.modiForm;
vFrom.qestnrQesitmId.value = qestnrQesitmId ;
vFrom.qestnSn.value = qestnSn ;
vFrom.siteId.value = siteId;
vFrom.action = "<c:url value='/uss/olp/qqm/UserItnQustnrQestnManageRegist.do'/>";
vFrom.submit();
}
/* ********************************************************
* 저장처리화면
******************************************************** */
function fn_egov_modify_QustnrQestnManage(){
var vFrom = document.QustnrQestnManageForm;
vFrom.cmd.value = '';
vFrom.action = "<c:url value='/uss/olp/qqm/UserQustnrQestnManageModify.do'/>";
vFrom.submit();
}
/* ********************************************************
* 삭제처리
******************************************************** */
function fn_egov_delete_QustnrQestnManage(qestnrQesitmId){
var vFrom = document.modiForm;
if(confirm("삭제시 설문문항, 설문항목, 설문조사(설문결과)\n정보가 함께 삭제됩니다!\n\n삭제 하시겠습니까?")){
vFrom.cmd.value = 'del';
vFrom.qestnrQesitmId.value = qestnrQesitmId;
vFrom.action = "<c:url value='/uss/olp/qqm/UserQustnrQestnManageDetailDelete.do'/>";
vFrom.submit();
}else{
vFrom.cmd.value = '';
}
}
function fnList() {
document.searchForm.submit();
}
/* 임시파일 삭제버튼 클릭시 */
function delete_item(obj, fileIdx){
if(!confirm("삭제하시겠습니까?")){
return false;
}
$(obj).closest("tr").remove();
_fileForm2.forEach(function(fobj, idx) {
if (fobj.name == ("file_" + fileIdx)) _fileForm2[idx] = "";
});
drawUploadArea();
$('.td_txt_exist > img').attr('src', '/images/no_img.jpg') ;
}
</script>
</head>
<body>
<!-- 자바스크립트 경고 태그 -->
<noscript class="noScriptTitle">자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript>
<div class="cont_wrap">
<div class="box">
<form:form commandName="qustnrManageVO" name="qustnrManageVO" action="${pageContext.request.contextPath}/uss/olp/qmc/UserQustnrManageModify.do" method="post">
<input type="hidden" name="cal_url" value="<c:url value='/sym/cmm/UserNormalCalPopup.do'/>">
<input type="hidden" name="cmd" value="<c:out value='save'/>">
<input type="hidden" name="addPage" value=""><!-- 추가 페이지를 위한 flag -->
<input type="hidden" name="qestnSn" value=""><!-- 추가 페이지를 위한 컬럼숫자 -->
<input type="hidden" name="qestnrQesitmId" value=""><!-- 설문문제 수정시 필요한 값 -->
<input type="hidden" name="qestnrId" value="<c:out value='${qustnrManageVO.qestnrId}' />">
<input type="hidden" name="limitcount" value="1" />
<input name="qustnrTmplatId" type="hidden" value="<c:out value='${listQustnrTmplat[0].qestnrtmplatid}' />" />
<!-- cont_tit -->
<div class="cont_tit">
<h2>설문지 수정</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>설문관리</p>
</li>
<li><span class="cur_nav">설문관리 상세</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<div class="tbType01">
</div>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 210px;">
<col style="width: auto;">
<col style="width: 210px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th><span class="reqArea">설문제목</span></th>
<td>
<form:input path="qustnrSj" cssClass="txaIpt" maxlength="60" title="설문제목 입력" cssStyle="width: 90%;"/>
<form:errors path="qustnrSj"/>
</td>
</tr>
<tr>
<th><span class="reqArea">설문목적</span></th>
<td>
<form:input path="qustnrPurps" cssClass="txaIpt" maxlength="250" title="설문제목 입력" cssStyle="width: 90%;"/>
<form:errors path="qustnrPurps"/>
</td>
</tr>
<tr>
<th><span class="reqArea">설문내용</span></th>
<td>
<form:input path="qustnrWritngGuidanceCn" cssClass="txaIpt" maxlength="250" title="설문제목 입력" cssStyle="width: 90%;"/>
<form:errors path="qustnrWritngGuidanceCn"/>
</td>
</tr>
<tr style="display: none;">
<th>
<p>설문대상</p>
</th>
<td>
참여권한
<form:select path="qustnrTrget" title="설문대상 선택">
<form:options items="${authorList}" itemValue="authorCode" itemLabel="authorNm"/>
</form:select>
<div><form:errors path="qustnrTrget"/></div>
보기권한
<form:select path="qustnrViewTrget" title="설문대상 선택">
<form:options items="${authorList}" itemValue="authorCode" itemLabel="authorNm"/>
</form:select>
<div><form:errors path="qustnrViewTrget"/></div>
</td>
</tr>
<tr>
<th><span class="reqArea">설문기간</span></th>
<td>
<div class="calendar_wrap">
<input type="text" class="calendar" title="시작일 선택" id="qustnrBgnde" name="qustnrBgnde"
value="${qustnrManageVO.qustnrBgnde}">
</div>
&emsp;~&emsp;
<div class="calendar_wrap">
<input type="text" class="calendar" title="종료일 선택" id="qustnrEndde" name="qustnrEndde"
value="${qustnrManageVO.qustnrEndde}">
</div>
</td>
</tr>
<tr style="display: none;">
<th><span class="reqArea">탬플릿 유형</span></th>
<td>
<c:forEach items="${listQustnrTmplat}" var="resultQustnrTmplat" varStatus="status">
<img src="<c:url value='/uss/olp/qtm/UserQustnrTmplatManageImg.do'/>?qestnrTmplatId=<c:out value='${resultQustnrTmplat.qestnrTmplatId}' />" align="middle" alt="템플릿유형 이미지" title="템플릿유형 이미지">
</c:forEach>
<c:forEach items="${listQustnrTmplat}" var="resultQustnrTmplat" varStatus="status">
<input type="radio" style="width:17px;" name="qestnrTmplatId" value="<c:out value='${resultQustnrTmplat.qestnrTmplatId}' />" style="border:0px" checked="checked" /><c:out value='${resultQustnrTmplat.qestnrTmplatTy}' />
</c:forEach>
</td>
</tr>
<tr style="display: none;">
<th><span class="reqArea">설문상태</span></th>
<td>
<form:select path="sttus" title="설문대상 선택" cssClass="sel_type1">
<form:options items="${qustnrManageSttusList}" itemValue="code" itemLabel="codeNm"/>
</form:select>
</td>
</tr>
<tr>
<th><span class="reqArea">사용처</span></th>
<td>
<kc:select codeId="VE0011" name="siteId" id="siteId" defaultText="선택" defaultValue="" selectedValue="${qustnrManageVO.siteId}" styleClass="sel_type1" />
</td>
</tr>
<tr>
<th><span class="reqArea">대상</span></th>
<td>
<kc:select codeId="VEA012" name="siteIdCd" id="siteIdCd" defaultText="선택" defaultValue="" selectedValue="${qustnrManageVO.siteIdCd}" styleClass="sel_type1" />
</td>
</tr>
<tr id="subCode" style="display: none;">
<th><span class="reqArea">사용 기간</span></th>
<td>
<select id="beforeAndAfter" name="beforeAndAfter" class="sel_type1">
<option value="01" <c:if test="${qustnrManageVO.beforeAndAfter == '01'}">selected</c:if>>사전</option>
<option value="02" <c:if test="${qustnrManageVO.beforeAndAfter == '02'}">selected</c:if>>사후</option>
</select>
</td>
</tr>
<tr>
<th><span class="reqArea">최종수정일</span></th>
<td>
<c:out value='${qustnrManageVO.lastUpdtPnttm}' />
</td>
</tr>
<tr>
<th><span class="reqArea">작성자명</span></th>
<td>
<c:out value='${qustnrManageVO.frstRegisterId}' />
</td>
</tr>
<tr>
<th><span class="reqArea">파일 첨부</span></th>
<td class="upload_area">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btnType01 btn_add_file">파일 첨부하기</button>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: 60%;">
<col style="width: auto;">
<col style="width: 20%;">
<col style="width: 10%;">
</colgroup>
<thead>
<th scope="col">파일 명</th>
<th scope="col">종류</th>
<th scope="col">크기</th>
<th scope="col">삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap fileAfter file_list_div">
<table>
<colgroup>
<col style="width: 60%">
<col style="width: 10%">
<col style="width: 20%">
<col style="width: 10%">
</colgroup>
<thead>
<th scope="col">파일 명</th>
<th scope="col">종류</th>
<th scope="col">크기</th>
<th scope="col">삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
<td class="td_filename">
<!-- <img src="/direct/img/upload_hwp_img.png" alt="" /> -->
<a href="javascript:fn_egov_downFile('${fileList.atchFileId}','${fileList.fileSn}')">
<span class="file_name_text">${fileList.orignlFileNm}</span>
</a>
</td>
<td class="td_filesort">
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
</td>
<td class="td_filesize">
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
</td>
<td>
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="area_left"></div>
<div class="area_right">
<button type="button" class="btnType03" onclick="fnList(); return false;">목록</button>
<button type="button" class="btnType06"onclick="fncSave(); return false;">저장</button>
</div>
</div>
<div class="tbType01">
<p>설문문항</p>
</div>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 5%">
<col style="width: 10%">
<col style="width: 50%">
<col style="width: 15%">
<col style="width: 10%">
<col style="width: 10%">
</colgroup>
<thead>
<tr>
<th>순번</th>
<th>정렬</th>
<th>문항</th>
<th>문제유형</th>
<th>문항수</th>
<th>관리</th>
</tr>
</thead>
<tbody>
<c:forEach items="${qustnrQestnManageList}" var="result" varStatus="status">
<tr>
<td><c:out value="${(popupManageVO.pageIndex - 1) * popupManageVO.pageSize + status.count}"/></td>
<td><c:out value="${result.qestnSn}"/></td>
<td class="left"><c:out value="${result.qestnCn}"/></td>
<td>
<kc:code codeId="COM018" code="${result.qestnTyCode}"/>
</td>
<td><c:out value="${result.qustnriemCnt}"/></td>
<td>
<input type="button" value="수정" class="btnType1" onclick="javascript:fn_egov_qustnr_update_view('<c:out value="${qustnrManageVO.siteId}"/>','<c:out value="${result.qestnrQesitmId}"/>' , '<c:out value='${result.qestnSn}' />' );">
<input type="button" value="삭제" class="btnType2" onclick="javascript:fn_egov_delete_QustnrQestnManage('<c:out value="${result.qestnrQesitmId}"/>');">
</td>
</tr>
</c:forEach>
<c:if test="${empty qustnrQestnManageList}">
<tr><td colspan="6"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="area_right"></div>
<div class="area_right">
<button type="button" class="btnType06" onclick="fn_egov_qustnr_insert('<c:out value="${qustnrManageVO.siteId}"/>'); return false;">문항등록</button>
</div>
</div>
</div>
</form:form>
</div>
</div>
<form name="searchForm" id="searchForm" method="get" action="<c:url value='/uss/olp/qmc/UserQustnrManageList.do'/>" ></form>
<form name="regiForm" method="get" action="<c:url value='/uss/olp/qqm/UserItnQustnrQestnManageRegist.do'/>">
<input name="qestnSn" type="hidden" value="" />
<input name="qestnrId" type="hidden" value="<c:out value='${qustnrManageVO.qestnrId}' />" />
<input name="qestnrTmplatId" type="hidden" value="<c:out value='${listQustnrTmplat[0].qestnrtmplatid}' />" />
<input name="siteId" type="hidden" value="" />
</form>
<form name="modiForm" method="get" action="<c:url value='/sym/ccm/cde/UserCcmCmmnDetailCodeModify.do'/>" >
<input name="qestnrId" type="hidden" value="<c:out value='${qustnrManageVO.qestnrId}' />" />
<input name="qestnSn" type="hidden" value="" />
<input name="cmd" type="hidden" />
<input name="siteId" type="hidden" value="" />
<input name="qestnrQesitmId" type="hidden" />
<input name="qestnrTmplatId" type="hidden" value="<c:out value='${listQustnrTmplat[0].qestnrtmplatid}' />" />
</form>
</body>
</html>

View File

@ -0,0 +1,406 @@
<%--
Class Name : EgovQustnrManageRegist.jsp
Description : 설문관리 등록 페이지
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2008.03.09 장동한 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 장동한
since : 2009.03.09
--%>
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<!DOCTYPE html>
<html>
<head>
<title>설문관리 등록</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-language" content="ko">
<script type="text/javascript" src="<c:url value='/js/EgovMultiFileItn.js'/>"></script>
<script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js' />"></script>
<link rel="stylesheet" href="/offedu/visitEdu/adm/publish/datepicker/classic.css">
<link rel="stylesheet" href="/offedu/visitEdu/adm/publish/datepicker/classic.date.css">
<!-- script -->
<script src="/offedu/visitEdu/adm/publish/datepicker/picker.js"></script>
<script src="/offedu/visitEdu/adm/publish/datepicker/picker.date.js"></script>
<script src="/offedu/visitEdu/adm/publish/datepicker/legacy.js"></script>
<script src="/offedu/visitEdu/adm/publish/datepicker/ko_KR.js"></script>
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="qustnrManageVO" staticJavascript="false" xhtml="true" cdata="false"/>
<script type="text/javaScript" language="javascript">
$(document).ready(function() {
$(function () {
$('#filebutton').click(function (e) {
e.preventDefault();
$('#file_temp').click();
});
});
fn_egov_init_QustnrManage();
var siteId = $("#siteId option:selected").val();
if(siteId == "30"){
$("#subCode").show();
}else{
$("#subCode").hide();
}
$("#siteId").change(function(){
if(this.value == "30"){
$("#subCode").show();
}else{
$("#subCode").hide();
}
});
});
/* ********************************************************
* 초기화
******************************************************** */
function fn_egov_init_QustnrManage(){
// 시작일자, 종료일자
if (document.qustnrManageVO.qestnrBeginDe.value == "" && document.qustnrManageVO.qestnrEndDe.value == "") {
var now = new Date();
var year= now.getFullYear();
var mon = (now.getMonth()+1)>9 ? ''+(now.getMonth()+1) : '0'+(now.getMonth()+1);
var day = now.getDate()>9 ? ''+now.getDate() : '0'+now.getDate();
var toDay = year + "-" + mon + "-" + day;
document.qustnrManageVO.qestnrBeginDe.value = toDay;
document.qustnrManageVO.qestnrEndDe.value = toDay;
} else if (document.qustnrManageVO.qestnrBeginDe.value != "" && document.qustnrManageVO.qestnrEndDe.value != "") {
var fromDate = document.qustnrManageVO.qestnrBeginDe.value;
var toDate = document.qustnrManageVO.qestnrEndDe.value;
document.qustnrManageVO.qestnrBeginDe.value = fromDate.substring(0, 4) + "-" + fromDate.substring(4, 6) + "-" + fromDate.substring(6, 8);
document.qustnrManageVO.qestnrEndDe.value = toDate.substring(0, 4) + "-" + toDate.substring(4, 6) + "-" + toDate.substring(6, 8);
}
}
/* ********************************************************
* 목록 으로 가기
******************************************************** */
function fn_egov_list_QustnrManage(){
location.href = "<c:url value='/uss/olp/qmc/EgovQustnrManageList.do'/>";
}
/* ********************************************************
* 저장처리화면
******************************************************** */
function fncSave(){
var form = document.qustnrManageVO;
//var sStartDay = form.qestnrBeginDe.value.replaceAll("-","");
//var sEndDay = form.qestnrEndDe.value.replaceAll("-","");
//var iStartDay = parseInt(sStartDay);
//var iEndDay = parseInt(sEndDay);
var sStartDay = form.qustnrBgnde;
var sEndDay = form.qustnrEndde;
/*
if(iStartDay > iEndDay || iEndDay < iStartDay){
alert("설문기간 시작일은 종료일 보다 클수 없고 \n\n설문기간 종료일은 시작일 보다 작을수 없습니다!");
return;
}
if(!validateQustnrManageVO(form)){
return;
}
*/
//첨부파일 등록 처리-step1
//if(!data.get("fileSize")){
/*
if($('#tbody_fiielist tr').length*1<=0){
alert("첨부파일을 등록해 주세요");
return false;
}
*/
if(confirm("<spring:message code='common.save.msg' />")){
//첨부파일 등록 처리
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
//var data = new FormData(form);
var data = new FormData(document.getElementById("qustnrManageVO"));
//첨부파일 등록 처리-step2
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
var url = "${pageContext.request.contextPath}/uss/olp/qmc/UserItnQustnrManageInsertAjax.do";
$.ajax({
type:"POST",
enctype: 'multipart/form-data',
url: url,
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success:function(returnData){
//if(returnData.result == "success" && returnData.rsCnt > 0 ){
if(returnData.result == "success"){
alert("저장되었습니다.");
fnList();
}
},
error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
}
/* ********************************************************
* PROTOTYPE JS FUNCTION
******************************************************** */
String.prototype.trim = function(){
return this.replace(/^\s+|\s+$/g, "");
}
String.prototype.replaceAll = function(src, repl){
var str = this;
if(src == repl){return str;}
while(str.indexOf(src) != -1) {
str = str.replace(src, repl);
}
return str;
}
function fnList() {
document.searchForm.submit();
}
/* 임시파일 삭제버튼 클릭시 */
function delete_item(obj, fileIdx){
if(!confirm("삭제하시겠습니까?")){
return false;
}
$(obj).closest("tr").remove();
_fileForm2.forEach(function(fobj, idx) {
if (fobj.name == ("file_" + fileIdx)) _fileForm2[idx] = "";
});
drawUploadArea();
$('.td_txt_exist > img').attr('src', '/images/no_img.jpg') ;
}
</script>
<style>
.del_file_btn{border: none;background-color: transparent;background-image: url(/direct/img/upload_delect_img.png);background-repeat: no-repeat;background-position: center center;vertical-align: middle;margin-top: -4px;margin-right: 15px;}
.file_size{color: #0388d2;font-weight: bold;}
.uploaded_obj{width: 100%;}
</style>
</head>
<body>
<div class="cont_wrap">
<div class="box">
<form:form commandName="qustnrManageVO" name="qustnrManageVO" action="${pageContext.request.contextPath}/uss/olp/qmc/EgovItnQustnrManageRegist.do" method="post">
<input type="hidden" name="cal_url" value="<c:url value='/sym/cmm/EgovNormalCalPopup.do'/>">
<input name="cmd" type="hidden" value="<c:out value='save'/>">
<input type="hidden" name="limitcount" value="1" />
<input name="qustnrTmplatId" type="hidden" value="QTMPLA_0000000000001" />
<!-- cont_tit -->
<div class="cont_tit">
<h2>설문지 등록</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>설문관리</p>
</li>
<li><span class="cur_nav">설문관리 등록</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<div class="tbType01">
</div>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 20%">
<col style="width: 80%">
</colgroup>
<tbody>
<tr>
<th><span class="reqArea">설문제목</span></th>
<td>
<form:input path="qestnrSj" size="73" cssClass="txaIpt" maxlength="60" title="설문제목 입력"/>
<form:errors path="qestnrSj"/>
</td>
</tr>
<tr>
<th><span class="reqArea">설문목적</span></th>
<td>
<form:textarea path="qestnrPurps" rows="1" cols="100" title="설문목적 입력"/>
<form:errors path="qestnrPurps"/>
</td>
</tr>
<tr>
<th><span class="reqArea">설문작성안내 내용</span></th>
<td>
<form:textarea path="qestnrWritngGuidanceCn" rows="1" cols="100" title="설문작성안내 내용 입력"/>
<form:errors path="qestnrWritngGuidanceCn"/>
</td>
</tr>
<tr style="display: none;">
<th><span class="reqArea">설문대상</span></th>
<td>
참여권한
<form:select path="qestnrTrget" title="설문대상 선택">
<form:options items="${authorList}" itemValue="authorCode" itemLabel="authorNm"/>
</form:select>
<div><form:errors path="qestnrTrget"/></div>
보기권한
<form:select path="qestnrViewTrget" title="설문대상 선택">
<form:options items="${authorList}" itemValue="authorCode" itemLabel="authorNm"/>
</form:select>
<div><form:errors path="qestnrViewTrget"/></div>
</td>
</tr>
<tr>
<th>
<span class="reqArea">설문기간</span>
</th>
<td>
<div class="calendar_wrap">
<input type="text" class="calendar" title="시작일 선택" id="qustnrBgnde" name="qustnrBgnde"
value="">
</div>
&emsp;~&emsp;
<div class="calendar_wrap">
<input type="text" class="calendar" title="종료일 선택" id="qustnrEndde" name="qustnrEndde"
value="">
</div>
</td>
</tr>
<tr>
<th><span class="reqArea">사용처</span></th>
<td>
<kc:select codeId="VE0011" name="siteId" id="siteId" defaultText="선택" defaultValue="" selectedValue="" />
</td>
</tr>
<tr>
<th><span class="reqArea">대상</span></th>
<td>
<kc:select codeId="VEA012" name="siteIdCd" id="siteIdCd" defaultText="선택" defaultValue="" selectedValue="" styleClass="sel_type1" />
</td>
</tr>
<tr id="subCode" style="display: none;">
<th><span class="reqArea">사용 기간</span></th>
<td>
<select id="beforeAndAfter" name="beforeAndAfter">
<option value="01" <c:if test="${qustnrManageVO.beforeAndAfter == '01'}">selected</c:if>>사전</option>
<option value="02" <c:if test="${qustnrManageVO.beforeAndAfter == '02'}">selected</c:if>>사후</option>
</select>
</td>
</tr>
<tr>
<th><span class="reqArea">파일 첨부</span></th>
<td class="upload_area">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btnType01 btn_add_file">파일 첨부하기</button>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: 60%;">
<col style="width: auto;">
<col style="width: 20%;">
<col style="width: 10%;">
</colgroup>
<thead>
<th scope="col">파일 명</th>
<th scope="col">종류</th>
<th scope="col">크기</th>
<th scope="col">삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap fileAfter file_list_div">
<table>
<colgroup>
<col style="width: 60%">
<col style="width: 10%">
<col style="width: 20%">
<col style="width: 10%">
</colgroup>
<thead>
<th scope="col">파일 명</th>
<th scope="col">종류</th>
<th scope="col">크기</th>
<th scope="col">삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
<td class="td_filename">
<!-- <img src="/direct/img/upload_hwp_img.png" alt="" /> -->
<a href="javascript:fn_egov_downFile('${fileList.atchFileId}','${fileList.fileSn}')">
<span class="file_name_text">${fileList.orignlFileNm}</span>
</a>
</td>
<td class="td_filesort">
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
</td>
<td class="td_filesize">
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
</td>
<td>
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</td>
</tr>
<input type="hidden" name="qestnrTmplatId" value="QTMPLA_0000000000001" >
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="area_right"></div>
<div class="area_right">
<input type="button" class="btnType06" value="목 록" onclick="fnList(); return false;" style="border:0;">
<input type="button" class="btnType06" value="저 장" onclick="fncSave(); return false;" style="border:0;">
</div>
</div>
</div>
</form:form>
</div>
</div>
<form name="searchForm" id="searchForm" method="get" action="<c:url value='/uss/olp/qmc/UserQustnrManageList.do'/>" ></form>
</body>
</html>

View File

@ -0,0 +1,418 @@
<%--
Class Name : EgovItnQustnrQestnManageRegist.jsp
Description : 설문문항 등록 페이지
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2008.03.09 장동한 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 장동한
since : 2009.03.19
--%>
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<c:set var="ImgUrl" value="/images/egovframework/com/uss/olp/qqm/"/>
<title>설문문항 등록</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-language" content="ko">
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="qustnrQestnManageVO" staticJavascript="false" xhtml="true" cdata="false"/>
<script type="text/javascript" src="<c:url value='/js/showModalDialog.js'/>" ></script>
<script type="text/javaScript" language="javascript">
$( document ).ready(function(){
var qestnTy = "${qestnrInfo.qestnTyCode}";
if(qestnTy == "3"){
$("input[name=iemCn]").attr("readonly",true);
}
});
/* ********************************************************
* 목록 으로 가기
******************************************************** */
function fn_egov_list_QustnrQestnManage(){
var varFrom = document.getElementById("qustnrQestnManageVO");
varFrom.action = "<c:url value='/uss/olp/qqm/EgovQustnrQestnManageList.do'/>";
varFrom.submit();
}
/* ********************************************************
* 저장처리화면
******************************************************** */
function fn_egov_save_QustnrQestnManage(form){
if(confirm("<spring:message code="common.save.msg" />")){
if(form.qestnrCn.value == ""
|| form.qestnrTmplatId.value == ""
|| form.qestnrId.value == ""){
alert("설문지정보를 입력해주세요!");
form.qestnrCn.focus();
return;
}
if(!validateQustnrQestnManageVO(form)){
return;
}else{
form.submit();
}
}
}
/* ********************************************************
* 설문지정보 팝업창열기
******************************************************** */
function fn_egov_QustnrManageListPopup_QustnrQestnManage(){
window.showModalDialog("<c:url value='/uss/olp/qmc/EgovQustnrManageListPopup.do'/>", self,"dialogWidth=800px;dialogHeight=500px;resizable=yes;center=yes");
}
/* ********************************************************
* 질문유형 변경
******************************************************** */
function selectTyCode(){
var type = $("#appPlaceTy").val();
var siteId = $("#siteId").val();
$("#itemTableTbody").empty();
//만족도 평가시
if(type == '3'){
if(siteId == '30'){
var cloneElements = $("#tempTable_30").clone();
cloneElements = cloneElements.find('tr') ;
$("#itemTableTbody").prepend(cloneElements) ; //처음에 add
}else if(siteId == '10' //청소년
||siteId == '20' //성인
||siteId == '50' //기반강화
||siteId == '60' //기소유예
){
var cloneElements = $("#tempTable_10").clone();
cloneElements = cloneElements.find('tr') ;
$("#itemTableTbody").prepend(cloneElements) ; //처음에 add
}
}else{
var cloneElements = $("#tempTable").clone();
cloneElements = cloneElements.find('tr') ;
$("#itemTableTbody").prepend(cloneElements) ; //처음에 add
}
$('#itemTableTbody').find("input").each(function(index, item){ //추가한 행에 id 세팅함.
$(this).attr('name' ,'iemCn') ;
});
}
/* ********************************************************
* 설문문제
******************************************************** */
function addRow(){
if($("#appPlaceTy").val() == '3'){
alert("질문유형이 만족도 평가에서는 문항을 추가 할 수 없습니다.");
return ;
}
var oRow = itemTable.insertRow();
th = document.createElement('th');
th.innerHTML = itemTable.rows.length;;
oRow.appendChild(th);
var oCell2 = oRow.insertCell();
oCell2.innerHTML = "<input type='text' name='iemCn' style='width:90%; float:left;' maxlength='50' />";
}
function delRow(){
if($("#appPlaceTy").val() == '3'){
alert("질문유형이 만족도 평가에서는 문항을 삭제 할 수 없습니다.");
return ;
}
if(itemTable.rows.length==2){
alert("더이상 삭제 할 수 없습니다.\n최소 문항입니다.");
}else{
itemTable.deleteRow(itemTable.rows.length-1);
}
}
/* ********************************************************
* 설문문제저장
******************************************************** */
function fn_egov_save_QustnrItemManage(cmd){
var varFrom = document.getElementById("qustnrItemManageVO");
var iemCnCheck = false;
var message = "등록하시겠습니까?";
var logParam = "I";
if(cmd == "upda"){
message = "수정하시면 이전의 설문결과\n정보가 초기화 됩니다.\n\n수정하시겠습니까?" ;
logParam = "U";
}
if(confirm(message)){
varFrom.action = "<c:url value='/uss/olp/qim/UserQustnrItemManageRegist.do'/>?logParam="+logParam;
if(varFrom.qestnCn.value == ""){
alert("질문내용을 입력해주세요!");
return;
}
if(varFrom.qestnSn.value == ""){
alert("질문순번이 없습니다.");
return;
}
{
$("input[name=iemCn]").each(function(idx){
var value = $(this).val();
console.log(value);
if(value == ""){
iemCnCheck = true;
return false;
}
});
if(iemCnCheck){
alert("설문문항정보를 입력해주세요!");
return ;
}
}
varFrom.cmd.value= cmd;
varFrom.method = "post" ;
varFrom.submit();
}
}
function fnList() {
document.searchForm.submit();
}
</script>
<!-- 자바스크립트 경고 태그 -->
<noscript class="noScriptTitle">자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript>
<form name="qustnrItemManageVO" id="qustnrItemManageVO" action="${pageContext.request.contextPath}/uss/olp/qqm/EgovQustnrQestnManageRegist.do" method="get">
<input name="qestnrId" type="hidden" value="${qustnrQestnManageVO.qestnrId}">
<input name="qestnrTmplatId" type="hidden" value="${qustnrQestnManageVO.qestnrTmplatId}">
<input name="qestnrQesitmId" type="hidden" value="${qustnrQestnManageVO.qestnrQesitmId}">
<input name="cmd" type="hidden" value="">
<!-- <input type="hidden" name="qestnTyCode" id="qestnTyCode" value="1"> -->
<input type="hidden" name="siteId" id="siteId" value="${searchVO.siteId }">
<div class="cont_wrap">
<div class="box">
<div class="cont_tit">
<h2>설문문항 등록</h2>
</div>
<div class="cont">
<div class="tbType02">
<table>
<colgroup>
<col style="width: 20%">
<col style="width: 80%">
</colgroup>
<tbody>
<tr>
<th><span class="reqArea">설문지정보(제목)</span></th>
<td>
<c:out value="${qestnrInfo.qustnrSj}" escapeXml="true"/>
<input type="hidden" name="qestnrCn" id="qestnrCn" value="${qestnrInfo.qustnrSj}" />
</td>
</tr>
<tr>
<th><span class="reqArea">질문 내용</span></th>
<td>
<input type="text" style='width:90%; float:left;' name="qestnCn" id="qestnCn" maxlength="50" value="${qestnrInfo.qestnCn}"/>
</td>
</tr>
<tr>
<th><span class="reqArea">질문 순번</span></th>
<td>
${qustnrQestnManageVO.qestnSn}
<input type="hidden" name="qestnSn" id="qestnSn" value="${qustnrQestnManageVO.qestnSn}">
</td>
</tr>
<tr>
<th><span class="reqArea">질문 유형</span></th>
<td>
<kc:select codeId="COM018" id="appPlaceTy" name="qestnTyCode" selectedValue="${qestnrInfo.qestnTyCode}" styleClass="sel_type1" onChange="selectTyCode()"/>
</td>
</tr>
<tr style="display: none;">
<th><span class="reqArea">최대선택건수</span></th>
<td>
<select id="mxmmChoiseCo" name="mxmmChoiseCo" title="최대선택건수 선택" class="sel_type1">
<option value="1" <c:if test="${qestnrInfo.mxmmChoiseCo == '1' }"> selected="selected" </c:if>>1</option>
<option value="2" <c:if test="${qestnrInfo.mxmmChoiseCo == '2' }"> selected="selected" </c:if>>2</option>
<option value="3" <c:if test="${qestnrInfo.mxmmChoiseCo == '3' }"> selected="selected" </c:if>>3</option>
<option value="4" <c:if test="${qestnrInfo.mxmmChoiseCo == '4' }"> selected="selected" </c:if>>4</option>
<option value="5" <c:if test="${qestnrInfo.mxmmChoiseCo == '5' }"> selected="selected" </c:if>>5</option>
<option value="6" <c:if test="${qestnrInfo.mxmmChoiseCo == '6' }"> selected="selected" </c:if>>6</option>
<option value="7" <c:if test="${qestnrInfo.mxmmChoiseCo == '7' }"> selected="selected" </c:if>>7</option>
<option value="8" <c:if test="${qestnrInfo.mxmmChoiseCo == '8' }"> selected="selected" </c:if>>8</option>
<option value="9" <c:if test="${qestnrInfo.mxmmChoiseCo == '9' }"> selected="selected" </c:if>>9</option>
<option value="10" <c:if test="${qestnrInfo.mxmmChoiseCo == '10' }"> selected="selected" </c:if>>10</option>
</select>
</td>
</tr>
</tbody>
</table>
</div>
<div class="tbType02">
<table id="itemTable">
<colgroup>
<col style="width: 20%">
<col style="width: 80%">
</colgroup>
<tbody id="itemTableTbody">
<c:choose>
<c:when test="${fn:length(qustnrItemList) < 1}">
<tr>
<th>1</th>
<td>
<input type="text" name="iemCn" style='width:90%; float:left;' maxlength="50" />
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" name="iemCn" style='width:90%; float:left;' maxlength="50" />
</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach var="resultList" items="${qustnrItemList}" varStatus="status">
<tr>
<th>${status.count}</th>
<td>
<input type="text" name="iemCn" maxlength="50" style='width:90%; float:left;' value="${resultList.iemCn}"/>
</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="area_left">
<input type="button" class="btnType04" value="문항추가" onclick="addRow(); return false;">
<input type="button" class="btnType04" value="문항삭제" onclick="delRow(); return false;">
</div>
<div class="area_right">
<input type="button" class="btnType03" value="이전페이지" onclick="fnList(); return false;">
<c:choose>
<c:when test="${fn:length(qustnrItemList) == 0}">
<input type="button" class="btnType06" value="저장" onclick="fn_egov_save_QustnrItemManage('regi'); return false; ">
</c:when>
<c:otherwise>
<input type="button" class="btnType06" value="수정" onclick="fn_egov_save_QustnrItemManage('upda'); return false; ">
</c:otherwise>
</c:choose>
</div>
</div>
</div>
</div>
</div>
</form>
<div style="display: none;">
<table id="tempTable">
<tr>
<th>1</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50"/>
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50"/>
</td>
</tr>
</table>
<table id="tempTable_10">
<tr>
<th>1</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="매우만족" readonly/>
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="만족" readonly/>
</td>
</tr>
<tr>
<th>3</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="보통" readonly/>
</td>
</tr>
<tr>
<th>4</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="불만족" readonly/>
</td>
</tr>
<tr>
<th>5</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="매우 불만족" readonly/>
</td>
</tr>
</table>
<table id="tempTable_30">
<tr>
<th>1</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="전혀 그렇지 않다" readonly/>
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="그렇지 않다" readonly/>
</td>
</tr>
<tr>
<th>3</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="약간 그렇지 않다" readonly/>
</td>
</tr>
<tr>
<th>4</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="보통이다" readonly/>
</td>
</tr>
<tr>
<th>5</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="약간 그렇다" readonly/>
</td>
</tr>
<tr>
<th>6</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="그렇다" readonly/>
</td>
</tr>
<tr>
<th>7</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="매우 그렇다" readonly/>
</td>
</tr>
</table>
</div>
<form name="searchForm" id="searchForm" method="get" action="<c:url value='/uss/olp/qmc/UserQustnrManageModify.do'/>" >
<input name="qestnrId" type="hidden" value="${qustnrQestnManageVO.qestnrId}" />
</form>

View File

@ -512,7 +512,7 @@
<div class="tooltip-wrap srvyPopupPrintDiv" id="srvyPopupPrintDiv">
<div class="popup_wrap popType05" tabindex="0" data-tooltip-con="sub37_pop02" data-focus="sub37_pop02" data-focus-prev="sub37_pop02_close">
<div class="popup_tit">
<p>강의만족도 결과 출력</p>
<p>강의만족도 설문지 출력</p>
<button class="btn_popup_close tooltip-close" data-focus="sub37_pop02_close" title="팝업 닫기"><i></i></button>
</div>
<div class="popup_cont">