Merge branch 'advc' of http://yongjoon.cho@vcs.iten.co.kr:9999/hylee/offedu into advc
This commit is contained in:
commit
4bcb8e5ffe
@ -3,6 +3,8 @@ package kcc.com.cmm.service;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
|
||||
/**
|
||||
* @Class Name : EgovFileMngService.java
|
||||
* @Description : 파일정보의 관리를 위한 서비스 인터페이스
|
||||
@ -127,4 +129,6 @@ public interface EgovFileMngService {
|
||||
public void deleteFmsFileInf(FileVO fileVO) throws Exception;
|
||||
|
||||
public void updateFileName(FileVO fileVO) throws Exception;
|
||||
|
||||
public void deleteOffeduFile(FileVO fvo, VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||
}
|
||||
|
||||
@ -12,6 +12,8 @@ import org.springframework.stereotype.Service;
|
||||
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.FileVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.rprtInfo.service.VEEduRprtVO;
|
||||
|
||||
/**
|
||||
* @Class Name : EgovFileMngServiceImpl.java
|
||||
@ -196,4 +198,20 @@ public class EgovFileMngServiceImpl extends EgovAbstractServiceImpl implements E
|
||||
public void updateFileName(FileVO fileVO) throws Exception {
|
||||
fileMngDAO.updateFileName(fileVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteOffeduFile(FileVO fileVO, VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||
|
||||
//결과 보고 첨부파일 ID 삭제 처리
|
||||
fileMngDAO.updateOffeduFileNull(vEEduAplctVO);
|
||||
|
||||
//파일 삭제처리
|
||||
FileVO returnFileVO = new FileVO();
|
||||
returnFileVO = fileMngDAO.selectFileInf(fileVO);
|
||||
if(returnFileVO !=null) {
|
||||
File delFile = new File(returnFileVO.getFileStreCours()+returnFileVO.getStreFileNm());
|
||||
delFile.delete();
|
||||
}
|
||||
fileMngDAO.deleteFileInf(fileVO); //DB삭제
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,6 +6,7 @@ import java.util.List;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import kcc.com.cmm.service.FileVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
|
||||
/**
|
||||
* @Class Name : EgovFileMngDAO.java
|
||||
@ -198,4 +199,8 @@ public class FileManageDAO extends EgovComAbstractDAO {
|
||||
public void updateFileName(FileVO vo) throws Exception {
|
||||
insert("FileManageDAO.updateFileName", vo);
|
||||
}
|
||||
|
||||
public int updateOffeduFileNull(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||
return update("FileManageDAO.updateOffeduFileNull", vEEduAplctVO);
|
||||
}
|
||||
}
|
||||
|
||||
@ -12,10 +12,15 @@ import org.springframework.ui.ModelMap;
|
||||
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.ModelAndView;
|
||||
|
||||
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
|
||||
import kcc.com.cmm.LoginVO;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.FileVO;
|
||||
import kcc.com.uss.ion.fms.service.FmsFileVO;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
|
||||
/**
|
||||
* 파일 조회, 삭제, 다운로드 처리를 위한 컨트롤러 클래스
|
||||
@ -40,6 +45,9 @@ public class EgovFileMngController {
|
||||
@Resource(name = "EgovFileMngService")
|
||||
private EgovFileMngService fileService;
|
||||
|
||||
//로그인 체크 util
|
||||
@Resource(name = "checkLoginUtil")
|
||||
private CheckLoginUtil checkLoginUtil;
|
||||
/**
|
||||
* 첨부파일에 대한 목록을 조회한다.
|
||||
*
|
||||
@ -410,4 +418,61 @@ public class EgovFileMngController {
|
||||
|
||||
return "cmm/fms/selectForNmChgFile";
|
||||
}
|
||||
|
||||
/**
|
||||
* ve_edu_aplct 첨부파일 목록 - 타입별로 첨부파일 삭제 및 데이터 null 처리를 위한
|
||||
*
|
||||
* @param fileVO
|
||||
* @param commandMap
|
||||
* @param model
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@RequestMapping("/cmm/fms/selectOffeduFile.do")
|
||||
public String selectEduAplctFile(@ModelAttribute("searchVO") FileVO fileVO, @RequestParam Map<String, Object> commandMap, ModelMap model) throws Exception {
|
||||
String atchFileId = (String) commandMap.get("param_atchFileId");
|
||||
String type = (String) commandMap.get("type");
|
||||
String deleteFlag = (String) commandMap.get("deleteFlag");
|
||||
String dateFlag = (String) commandMap.get("dateFlag");
|
||||
String table = (String) commandMap.get("table");
|
||||
String eduAplctOrd = (String) commandMap.get("eduAplctOrd");
|
||||
|
||||
fileVO.setAtchFileId(atchFileId);
|
||||
List<FileVO> result = fileService.selectFileInfs(fileVO);
|
||||
model.addAttribute("fileList", result);
|
||||
model.addAttribute("fileListCnt", result.size());
|
||||
model.addAttribute("atchFileId", atchFileId);
|
||||
model.addAttribute("type", type);
|
||||
model.addAttribute("deleteFlag", deleteFlag);
|
||||
model.addAttribute("dateFlag", dateFlag);
|
||||
model.addAttribute("table", table);
|
||||
model.addAttribute("eduAplctOrd", eduAplctOrd);
|
||||
|
||||
return "cmm/fms/selectEduAplctFile";
|
||||
}
|
||||
|
||||
/* 교육신청관리 첨부파일 삭제 */
|
||||
@RequestMapping(value = "/cmm/fms/offedufileDeleteAjax.do")
|
||||
public ModelAndView fmsfileDeleteAjax(
|
||||
FmsFileVO fmsFileVO,
|
||||
@ModelAttribute("fileVO") FileVO fileVO,
|
||||
VEEduAplctVO vEEduAplctVO
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
|
||||
vEEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
|
||||
try {
|
||||
fileService.deleteOffeduFile(fileVO, vEEduAplctVO);
|
||||
modelAndView.addObject("result", "success");
|
||||
}catch (Exception e) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
System.out.println("Exception Occured!!!");
|
||||
return modelAndView;
|
||||
}
|
||||
return modelAndView;
|
||||
}
|
||||
}
|
||||
|
||||
@ -223,6 +223,8 @@ public class InnorixFileServiceImpl extends EgovAbstractServiceImpl implements I
|
||||
vEEduAplctVO.setAttendAtchFileId(atchFileId); //강사 참석 확인서 첨부파일
|
||||
} else if("PHT".equals(fileType)) {
|
||||
vEEduAplctVO.setPhtAtchFileId(atchFileId); //교육사진 첨부파일
|
||||
} else if("RSLT".equals(fileType)) {
|
||||
vEEduAplctVO.setRsltAtchFileId(atchFileId); //결과보고 첨부파일
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,273 +1,274 @@
|
||||
package kcc.let.cop.bbs.service.impl;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
||||
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||
import egovframework.rte.fdl.property.EgovPropertyService;
|
||||
import egovframework.rte.psl.dataaccess.util.EgovMap;
|
||||
import kcc.com.cmm.ComDefaultVO;
|
||||
import kcc.let.cop.bbs.service.BoardMaster;
|
||||
import kcc.let.cop.bbs.service.BoardMasterVO;
|
||||
import kcc.let.cop.bbs.service.BoardVO;
|
||||
import kcc.let.cop.bbs.service.EgovBBSAttributeManageService;
|
||||
import kcc.let.cop.com.service.EgovUserInfManageService;
|
||||
import kcc.let.cop.com.service.impl.BBSUseInfoManageDAO;
|
||||
|
||||
/**
|
||||
* 게시판 속성관리를 위한 서비스 구현 클래스
|
||||
* @author 공통 서비스 개발팀 이삼섭
|
||||
* @since 2009.03.24
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
* <pre>
|
||||
* << 개정이력(Modification Information) >>
|
||||
*
|
||||
* 수정일 수정자 수정내용
|
||||
* ------- -------- ---------------------------
|
||||
* 2009.03.24 이삼섭 최초 생성
|
||||
* 2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
|
||||
* 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
|
||||
*
|
||||
* </pre>
|
||||
*/
|
||||
@Service("EgovBBSAttributeManageService")
|
||||
public class EgovBBSAttributeManageServiceImpl extends EgovAbstractServiceImpl implements EgovBBSAttributeManageService {
|
||||
|
||||
@Resource(name = "BBSAttributeManageDAO")
|
||||
private BBSAttributeManageDAO attrbMngDAO;
|
||||
|
||||
@Resource(name = "BBSUseInfoManageDAO")
|
||||
private BBSUseInfoManageDAO bbsUseDAO;
|
||||
|
||||
@Resource(name = "EgovUserInfManageService")
|
||||
private EgovUserInfManageService userService;
|
||||
|
||||
@Resource(name = "egovBBSMstrIdGnrService")
|
||||
private EgovIdGnrService idgenService;
|
||||
|
||||
@Resource(name = "propertiesService")
|
||||
protected EgovPropertyService propertyService;
|
||||
|
||||
/**
|
||||
* 등록된 게시판 속성정보를 삭제한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public void deleteBBSMasterInf(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.deleteBBSMasterInf(boardMaster);
|
||||
|
||||
// BoardUseInf bdUseInf = new BoardUseInf();
|
||||
//
|
||||
// bdUseInf.setBbsId(boardMaster.getBbsId());
|
||||
// bdUseInf.setLastUpdusrId(boardMaster.getLastUpdusrId());
|
||||
//
|
||||
// bbsUseDAO.deleteBBSUseInfByBoardId(bdUseInf);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성 정보의 목록을 조회 한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectAllBBSMasteInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public List<BoardMasterVO> selectAllBBSMasteInf(BoardMasterVO vo) throws Exception {
|
||||
return attrbMngDAO.selectAllBBSMasteInf(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성 정보의 목록을 조회 한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInfs(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public Map<String, Object> selectBBSMasterInfs(BoardMasterVO searchVO) throws Exception {
|
||||
List<BoardMasterVO> result = attrbMngDAO.selectBBSMasterInfs(searchVO);
|
||||
int cnt = attrbMngDAO.selectBBSMasterInfsCnt(searchVO);
|
||||
|
||||
Map<String, Object> map = new HashMap<String, Object>();
|
||||
|
||||
map.put("resultList", result);
|
||||
map.put("resultCnt", Integer.toString(cnt));
|
||||
|
||||
return map;
|
||||
}
|
||||
|
||||
/**
|
||||
* 신규 게시판 속성정보를 생성한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMastetInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public String insertBBSMastetInf(BoardMaster boardMaster) throws Exception {
|
||||
String bbsId = idgenService.getNextStringId();
|
||||
|
||||
boardMaster.setBbsId(bbsId);
|
||||
|
||||
attrbMngDAO.insertBBSMasterInf(boardMaster);
|
||||
|
||||
// 게시판 관리자 등록
|
||||
if (!"".equals(boardMaster.getBbsMngIds())) {
|
||||
String[] bbsMngIds = boardMaster.getBbsMngIds().split("\\|");
|
||||
|
||||
for (int i = 0; i < bbsMngIds.length; i++) {
|
||||
if (bbsMngIds[i] != null && !("".equals(bbsMngIds[i]))) {
|
||||
BoardMaster vo = new BoardMaster();
|
||||
vo.setBbsId(bbsId);
|
||||
vo.setMngId(attrbMngDAO.selectBBSMaxMngId());
|
||||
vo.setBbsMngId(bbsMngIds[i]);
|
||||
|
||||
attrbMngDAO.insertBBSMngInf(vo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return bbsId;
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성정보 한 건을 상세조회한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public BoardMasterVO selectBBSMasterInf(BoardMasterVO searchVO) throws Exception {
|
||||
BoardMasterVO result = attrbMngDAO.selectBBSMasterInf(searchVO);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성정보를 수정한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#updateBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public void updateBBSMasterInf(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.updateBBSMasterInf(boardMaster);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 관리자ID 목록을 조회한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMngIdList(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public List<EgovMap> selectBBSMngIdList(BoardMaster vo) throws Exception {
|
||||
return attrbMngDAO.selectBBSMngIdList(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 관리자 정보를 등록한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public int insertBBSMngInf(BoardMaster vo) throws Exception {
|
||||
// 게시판 관리자 중복 체크
|
||||
int resultCnt = attrbMngDAO.selectBBSMngInfCnt(vo);
|
||||
int mngId = 0;
|
||||
|
||||
if (!(resultCnt > 0)) {
|
||||
mngId = attrbMngDAO.selectBBSMaxMngId();
|
||||
vo.setMngId(mngId);
|
||||
|
||||
attrbMngDAO.insertBBSMngInf(vo);
|
||||
}
|
||||
|
||||
return mngId;
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 관리자 정보를 삭제한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public void deleteBBSMngInf(BoardMaster vo) throws Exception {
|
||||
attrbMngDAO.deleteBBSMngInf(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 ID 정보의 목록을 조회 한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSIdList(kcc.com.cmm.ComDefaultVO)
|
||||
*/
|
||||
public Map<String, Object> selectBBSIdList(ComDefaultVO searchVO) throws Exception {
|
||||
List<EgovMap> result = attrbMngDAO.selectBBSIdList(searchVO);
|
||||
int cnt = attrbMngDAO.selectBBSIdListCnt(searchVO);
|
||||
|
||||
Map<String, Object> map = new HashMap<String, Object>();
|
||||
|
||||
map.put("resultList", result);
|
||||
map.put("resultCnt", Integer.toString(cnt));
|
||||
|
||||
return map;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupNoticeBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupNoticeBbsid(boardMaster);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupQnaBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupQnaBbsid(boardMaster);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupNewsBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupNewsBbsid(boardMaster);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public BoardMaster getSiteMainNbsVO(BoardMasterVO searchVO) throws Exception {
|
||||
return attrbMngDAO.getSiteMainNbsVO(searchVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupLibraryBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupLibraryBbsid(boardMaster);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BoardMasterVO> selectMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
|
||||
return attrbMngDAO.selectMenuBbs(boardMasterVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
|
||||
attrbMngDAO.deleteMenuBbs(boardMasterVO);
|
||||
|
||||
for(int i=0; i < boardMasterVO.getBbsIds().size(); i++){
|
||||
BoardMasterVO tempBoardMaster= new BoardMasterVO();
|
||||
tempBoardMaster.setBbsId(boardMasterVO.getBbsIds().get(i));
|
||||
tempBoardMaster.setBbsSort( boardMasterVO.getBbsSorts().size()==0 ? "0" : boardMasterVO.getBbsSorts().get(i));
|
||||
tempBoardMaster.setMenuNo(boardMasterVO.getMenuNo());
|
||||
attrbMngDAO.updateMenuBbs(tempBoardMaster);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BoardMasterVO> selectBBSMenuByUrl(BoardMasterVO boardMasterVO) throws Exception {
|
||||
return attrbMngDAO.selectBBSMenuByUrl(boardMasterVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int selectBBSMngInfCnt(BoardMasterVO bmVO) throws Exception {
|
||||
return attrbMngDAO.selectBBSMngInfCnt(bmVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BoardMasterVO selectBbsIdByNttId(BoardVO boardVO) throws Exception {
|
||||
return attrbMngDAO.selectBbsIdByNttId(boardVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BoardVO> selectBbsAdmin(BoardVO bbsVO) throws Exception {
|
||||
return attrbMngDAO.selectBbsAdmin(bbsVO);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
package kcc.let.cop.bbs.service.impl;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
||||
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||
import egovframework.rte.fdl.property.EgovPropertyService;
|
||||
import egovframework.rte.psl.dataaccess.util.EgovMap;
|
||||
import kcc.com.cmm.ComDefaultVO;
|
||||
import kcc.let.cop.bbs.service.BoardMaster;
|
||||
import kcc.let.cop.bbs.service.BoardMasterVO;
|
||||
import kcc.let.cop.bbs.service.BoardVO;
|
||||
import kcc.let.cop.bbs.service.EgovBBSAttributeManageService;
|
||||
import kcc.let.cop.com.service.EgovUserInfManageService;
|
||||
import kcc.let.cop.com.service.impl.BBSUseInfoManageDAO;
|
||||
|
||||
/**
|
||||
* 게시판 속성관리를 위한 서비스 구현 클래스
|
||||
* @author 공통 서비스 개발팀 이삼섭
|
||||
* @since 2009.03.24
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
* <pre>
|
||||
* << 개정이력(Modification Information) >>
|
||||
*
|
||||
* 수정일 수정자 수정내용
|
||||
* ------- -------- ---------------------------
|
||||
* 2009.03.24 이삼섭 최초 생성
|
||||
* 2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
|
||||
* 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
|
||||
*
|
||||
* </pre>
|
||||
*/
|
||||
@Service("EgovBBSAttributeManageService")
|
||||
public class EgovBBSAttributeManageServiceImpl extends EgovAbstractServiceImpl implements EgovBBSAttributeManageService {
|
||||
|
||||
@Resource(name = "BBSAttributeManageDAO")
|
||||
private BBSAttributeManageDAO attrbMngDAO;
|
||||
|
||||
@Resource(name = "BBSUseInfoManageDAO")
|
||||
private BBSUseInfoManageDAO bbsUseDAO;
|
||||
|
||||
@Resource(name = "EgovUserInfManageService")
|
||||
private EgovUserInfManageService userService;
|
||||
|
||||
@Resource(name = "egovBBSMstrIdGnrService")
|
||||
private EgovIdGnrService idgenService;
|
||||
|
||||
@Resource(name = "propertiesService")
|
||||
protected EgovPropertyService propertyService;
|
||||
|
||||
/**
|
||||
* 등록된 게시판 속성정보를 삭제한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public void deleteBBSMasterInf(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.deleteBBSMasterInf(boardMaster);
|
||||
|
||||
// BoardUseInf bdUseInf = new BoardUseInf();
|
||||
//
|
||||
// bdUseInf.setBbsId(boardMaster.getBbsId());
|
||||
// bdUseInf.setLastUpdusrId(boardMaster.getLastUpdusrId());
|
||||
//
|
||||
// bbsUseDAO.deleteBBSUseInfByBoardId(bdUseInf);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성 정보의 목록을 조회 한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectAllBBSMasteInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public List<BoardMasterVO> selectAllBBSMasteInf(BoardMasterVO vo) throws Exception {
|
||||
return attrbMngDAO.selectAllBBSMasteInf(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성 정보의 목록을 조회 한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInfs(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public Map<String, Object> selectBBSMasterInfs(BoardMasterVO searchVO) throws Exception {
|
||||
List<BoardMasterVO> result = attrbMngDAO.selectBBSMasterInfs(searchVO);
|
||||
int cnt = attrbMngDAO.selectBBSMasterInfsCnt(searchVO);
|
||||
|
||||
Map<String, Object> map = new HashMap<String, Object>();
|
||||
|
||||
map.put("resultList", result);
|
||||
map.put("resultCnt", Integer.toString(cnt));
|
||||
|
||||
return map;
|
||||
}
|
||||
|
||||
/**
|
||||
* 신규 게시판 속성정보를 생성한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMastetInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public String insertBBSMastetInf(BoardMaster boardMaster) throws Exception {
|
||||
String bbsId = idgenService.getNextStringId();
|
||||
|
||||
boardMaster.setBbsId(bbsId);
|
||||
|
||||
attrbMngDAO.insertBBSMasterInf(boardMaster);
|
||||
|
||||
// 게시판 관리자 등록
|
||||
if (!"".equals(boardMaster.getBbsMngIds())) {
|
||||
String[] bbsMngIds = boardMaster.getBbsMngIds().split("\\|");
|
||||
|
||||
for (int i = 0; i < bbsMngIds.length; i++) {
|
||||
if (bbsMngIds[i] != null && !("".equals(bbsMngIds[i]))) {
|
||||
BoardMaster vo = new BoardMaster();
|
||||
vo.setBbsId(bbsId);
|
||||
vo.setMngId(attrbMngDAO.selectBBSMaxMngId());
|
||||
vo.setBbsMngId(bbsMngIds[i]);
|
||||
|
||||
attrbMngDAO.insertBBSMngInf(vo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return bbsId;
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성정보 한 건을 상세조회한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public BoardMasterVO selectBBSMasterInf(BoardMasterVO searchVO) throws Exception {
|
||||
BoardMasterVO result = attrbMngDAO.selectBBSMasterInf(searchVO);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 속성정보를 수정한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#updateBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public void updateBBSMasterInf(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.updateBBSMasterInf(boardMaster);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 관리자ID 목록을 조회한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMngIdList(kcc.let.cop.bbs.brd.service.BoardMasterVO)
|
||||
*/
|
||||
public List<EgovMap> selectBBSMngIdList(BoardMaster vo) throws Exception {
|
||||
return attrbMngDAO.selectBBSMngIdList(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 관리자 정보를 등록한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public int insertBBSMngInf(BoardMaster vo) throws Exception {
|
||||
// 게시판 관리자 중복 체크
|
||||
int resultCnt = attrbMngDAO.selectBBSMngInfCnt(vo);
|
||||
int mngId = 0;
|
||||
|
||||
if (!(resultCnt > 0)) {
|
||||
mngId = attrbMngDAO.selectBBSMaxMngId();
|
||||
vo.setMngId(mngId);
|
||||
|
||||
attrbMngDAO.insertBBSMngInf(vo);
|
||||
}
|
||||
|
||||
return mngId;
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 관리자 정보를 삭제한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
|
||||
*/
|
||||
public void deleteBBSMngInf(BoardMaster vo) throws Exception {
|
||||
attrbMngDAO.deleteBBSMngInf(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 게시판 ID 정보의 목록을 조회 한다.
|
||||
*
|
||||
* @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSIdList(kcc.com.cmm.ComDefaultVO)
|
||||
*/
|
||||
public Map<String, Object> selectBBSIdList(ComDefaultVO searchVO) throws Exception {
|
||||
List<EgovMap> result = attrbMngDAO.selectBBSIdList(searchVO);
|
||||
int cnt = attrbMngDAO.selectBBSIdListCnt(searchVO);
|
||||
|
||||
System.out.println("22222222222222222222");
|
||||
Map<String, Object> map = new HashMap<String, Object>();
|
||||
|
||||
map.put("resultList", result);
|
||||
map.put("resultCnt", Integer.toString(cnt));
|
||||
|
||||
return map;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupNoticeBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupNoticeBbsid(boardMaster);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupQnaBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupQnaBbsid(boardMaster);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupNewsBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupNewsBbsid(boardMaster);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public BoardMaster getSiteMainNbsVO(BoardMasterVO searchVO) throws Exception {
|
||||
return attrbMngDAO.getSiteMainNbsVO(searchVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insupLibraryBbsid(BoardMaster boardMaster) throws Exception {
|
||||
attrbMngDAO.insupLibraryBbsid(boardMaster);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BoardMasterVO> selectMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
|
||||
return attrbMngDAO.selectMenuBbs(boardMasterVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
|
||||
attrbMngDAO.deleteMenuBbs(boardMasterVO);
|
||||
|
||||
for(int i=0; i < boardMasterVO.getBbsIds().size(); i++){
|
||||
BoardMasterVO tempBoardMaster= new BoardMasterVO();
|
||||
tempBoardMaster.setBbsId(boardMasterVO.getBbsIds().get(i));
|
||||
tempBoardMaster.setBbsSort( boardMasterVO.getBbsSorts().size()==0 ? "0" : boardMasterVO.getBbsSorts().get(i));
|
||||
tempBoardMaster.setMenuNo(boardMasterVO.getMenuNo());
|
||||
attrbMngDAO.updateMenuBbs(tempBoardMaster);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BoardMasterVO> selectBBSMenuByUrl(BoardMasterVO boardMasterVO) throws Exception {
|
||||
return attrbMngDAO.selectBBSMenuByUrl(boardMasterVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int selectBBSMngInfCnt(BoardMasterVO bmVO) throws Exception {
|
||||
return attrbMngDAO.selectBBSMngInfCnt(bmVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BoardMasterVO selectBbsIdByNttId(BoardVO boardVO) throws Exception {
|
||||
return attrbMngDAO.selectBbsIdByNttId(boardVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BoardVO> selectBbsAdmin(BoardVO bbsVO) throws Exception {
|
||||
return attrbMngDAO.selectBbsAdmin(bbsVO);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -200,6 +200,8 @@ public class CommonWebController {
|
||||
fileVO.setAtchFileId(vEEduAplctVO.getAttendAtchFileId());
|
||||
} else if("PHT".equals(fileType)) {
|
||||
fileVO.setAtchFileId(vEEduAplctVO.getPhtAtchFileId());
|
||||
} else if("RSLT".equals(fileType)) {
|
||||
fileVO.setAtchFileId(vEEduAplctVO.getRsltAtchFileId());
|
||||
}
|
||||
|
||||
List<FileVO> result = fileService.selectFileInfs(fileVO);
|
||||
|
||||
@ -1,7 +1,10 @@
|
||||
package kcc.ve.aplct.fndtnEnhanceTrn.service;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
|
||||
public interface FndtnEnhanceTrnService {
|
||||
|
||||
@ -9,5 +12,9 @@ public interface FndtnEnhanceTrnService {
|
||||
|
||||
VEEduAplctVO findByAprvlCd(VEEduAplctVO vEEduAplctReqVO);
|
||||
|
||||
void insertVeEduQna(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
List<VEPrcsDetailVO> selectVeEduQna(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -48,4 +48,15 @@ public class FndtnEnhanceTrnServiceImpl implements FndtnEnhanceTrnService {
|
||||
public VEEduAplctVO findByAprvlCd(VEEduAplctVO vEEduAplctReqVO) {
|
||||
return vEEduAplctDAO.findByAprvlCd(vEEduAplctReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||
vEEduAplctDAO.insertVeEduQna(vEPrcsDetailVO);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<VEPrcsDetailVO> selectVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||
return vEEduAplctDAO.selectVeEduQna(vEPrcsDetailVO);
|
||||
}
|
||||
}
|
||||
|
||||
@ -131,6 +131,10 @@ public class FndtnEnhanceTrnController {
|
||||
@Resource(name="eduChasiGnrService")
|
||||
private EgovIdGnrService eduChasiGnrService;
|
||||
|
||||
//qna순번
|
||||
@Resource(name="prcsAplctPrdQnaOrdGnrService")
|
||||
private EgovIdGnrService prcsAplctPrdQnaOrdGnrService;
|
||||
|
||||
//교육신청온라인
|
||||
@Resource(name = "vEEduAplctOnlnService")
|
||||
private VEEduAplctOnlnService vEEduAplctOnlnService;
|
||||
@ -219,6 +223,12 @@ public class FndtnEnhanceTrnController {
|
||||
model.addAttribute("list", vEPrcsDetailVOList);
|
||||
model.addAttribute("countMap", countMap);
|
||||
|
||||
|
||||
// Q&A 영역
|
||||
vEPrcsDetailVO.setQnaRegist(loginVO.getUniqId());
|
||||
List<VEPrcsDetailVO> vEPrcsDetailQnaVOList = fndtnEnhanceTrnService.selectVeEduQna(vEPrcsDetailVO);
|
||||
model.addAttribute("qnaList", vEPrcsDetailQnaVOList);
|
||||
|
||||
//3.pageing step3
|
||||
return "/web/ve/aplct/fndtnEnhanceTrn/main";
|
||||
}
|
||||
@ -503,6 +513,65 @@ public class FndtnEnhanceTrnController {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : fndthEduPrcsAplctPrdMngRegAjax
|
||||
* @author : 이호영
|
||||
* @date : 2023.11.16
|
||||
* @description :
|
||||
* @param vEPrcsDetailVO
|
||||
* @param model
|
||||
* @param request
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@RequestMapping("/web/ve/aplct/fndtnEnhanceTrn/qnaRegAjax.do")
|
||||
public ModelAndView qnaRegAjax(
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "loginFail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//로그인 처리====================================
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||
|
||||
|
||||
vEPrcsDetailVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
|
||||
vEPrcsDetailVO.setQnaRegist(loginVO.getUniqId()); //esntl_id
|
||||
vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
vEPrcsDetailVO.setPrcsAplctPrdQnaOrd(prcsAplctPrdQnaOrdGnrService.getNextStringId());
|
||||
vEPrcsDetailVO.setQnaRegist(loginVO.getUniqId());
|
||||
|
||||
String msg = "등록되었습니다";
|
||||
try {
|
||||
fndtnEnhanceTrnService.insertVeEduQna(vEPrcsDetailVO);
|
||||
|
||||
} catch (Exception e) {
|
||||
// TODO: handle exception
|
||||
e.printStackTrace();
|
||||
msg = "등록에 실패하였습니다. 관리자에게 문의해주세요";
|
||||
}
|
||||
|
||||
|
||||
modelAndView.addObject("msg", msg);
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 교육 list select
|
||||
*/
|
||||
|
||||
@ -99,6 +99,7 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
||||
private String broadroomEdu; //방송실교육 여부
|
||||
|
||||
private String rndsOrd; //회차순번(해당 신청이 속하는 회차 고유 순번)
|
||||
private String rsltAtchFileId; //결과보고첨부파일아이디
|
||||
|
||||
|
||||
|
||||
@ -324,6 +325,9 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String lastYear; //불성실여부 작년
|
||||
|
||||
private String type; //첨부파일 삭제 종류
|
||||
private String table; //첨부파일 삭제 테이블
|
||||
|
||||
|
||||
public String getPrcsAplctPrdOrd() {
|
||||
return prcsAplctPrdOrd;
|
||||
@ -1708,6 +1712,25 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
||||
public void setTrgtId(String trgtId) {
|
||||
this.trgtId = trgtId;
|
||||
}
|
||||
public String getRsltAtchFileId() {
|
||||
return rsltAtchFileId;
|
||||
}
|
||||
public void setRsltAtchFileId(String rsltAtchFileId) {
|
||||
this.rsltAtchFileId = rsltAtchFileId;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
public String getTable() {
|
||||
return table;
|
||||
}
|
||||
public void setTable(String table) {
|
||||
this.table = table;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -105,6 +105,9 @@ public class VEEduChasiVO extends ComDefaultVO implements Serializable {
|
||||
private String onewayDstnc;
|
||||
private String acmdtAprvlCd;
|
||||
|
||||
|
||||
private String rsltAtchFileId; //ve_edu_aplct 결과보고 첨부파일아이디
|
||||
|
||||
public String getQustnrRespondId() {
|
||||
return qustnrRespondId;
|
||||
}
|
||||
@ -569,4 +572,11 @@ public class VEEduChasiVO extends ComDefaultVO implements Serializable {
|
||||
public void setMemoCn(String memoCn) {
|
||||
this.memoCn = memoCn;
|
||||
}
|
||||
public String getRsltAtchFileId() {
|
||||
return rsltAtchFileId;
|
||||
}
|
||||
public void setRsltAtchFileId(String rsltAtchFileId) {
|
||||
this.rsltAtchFileId = rsltAtchFileId;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -7,6 +7,7 @@ import org.springframework.stereotype.Repository;
|
||||
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
|
||||
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
|
||||
@Repository("vEEduAplctDAO")
|
||||
public class VEEduAplctDAO extends EgovAbstractDAO {
|
||||
@ -159,4 +160,14 @@ public class VEEduAplctDAO extends EgovAbstractDAO {
|
||||
public void updateSbmtAtchFileId(VEEduAplctVO paramVO) throws Exception {
|
||||
insert("VEEduAplctDAO.updateSbmtAtchFileId", paramVO);
|
||||
}
|
||||
|
||||
public void insertVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||
insert("VEEduAplctDAO.insertVeEduQna", vEPrcsDetailVO);
|
||||
}
|
||||
|
||||
public List<VEPrcsDetailVO> selectVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||
return (List<VEPrcsDetailVO>) list("VEEduAplctDAO.selectVeEduQna", vEPrcsDetailVO);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -143,6 +143,13 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
private String prcsAplctPrdEtcOrd;
|
||||
|
||||
|
||||
private String prcsAplctPrdQnaOrd;
|
||||
private String qnaRegist;
|
||||
private String qnaCn;
|
||||
private String qnaAnswerCn;
|
||||
private String qnaAnswerer;
|
||||
|
||||
|
||||
|
||||
|
||||
public String getSearchDiv() {
|
||||
@ -686,6 +693,36 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setPrcsAplctPrdEtcOrd(String prcsAplctPrdEtcOrd) {
|
||||
this.prcsAplctPrdEtcOrd = prcsAplctPrdEtcOrd;
|
||||
}
|
||||
public String getPrcsAplctPrdQnaOrd() {
|
||||
return prcsAplctPrdQnaOrd;
|
||||
}
|
||||
public void setPrcsAplctPrdQnaOrd(String prcsAplctPrdQnaOrd) {
|
||||
this.prcsAplctPrdQnaOrd = prcsAplctPrdQnaOrd;
|
||||
}
|
||||
public String getQnaRegist() {
|
||||
return qnaRegist;
|
||||
}
|
||||
public void setQnaRegist(String qnaRegist) {
|
||||
this.qnaRegist = qnaRegist;
|
||||
}
|
||||
public String getQnaCn() {
|
||||
return qnaCn;
|
||||
}
|
||||
public void setQnaCn(String qnaCn) {
|
||||
this.qnaCn = qnaCn;
|
||||
}
|
||||
public String getQnaAnswerCn() {
|
||||
return qnaAnswerCn;
|
||||
}
|
||||
public void setQnaAnswerCn(String qnaAnswerCn) {
|
||||
this.qnaAnswerCn = qnaAnswerCn;
|
||||
}
|
||||
public String getQnaAnswerer() {
|
||||
return qnaAnswerer;
|
||||
}
|
||||
public void setQnaAnswerer(String qnaAnswerer) {
|
||||
this.qnaAnswerer = qnaAnswerer;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -208,6 +208,54 @@ public class FndthPrcsInfoMngController {
|
||||
///kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do
|
||||
}
|
||||
|
||||
@RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduQnaMngList.do")
|
||||
public String fndthEduQnaMngList(
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, ModelMap model
|
||||
) throws Exception {
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
|
||||
|
||||
//임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함
|
||||
//paginationInfo.setRecordCountPerPage(10000);
|
||||
|
||||
//2. pageing step2
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
//기반강화 조회
|
||||
vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
|
||||
if(StringUtil.isNotEmpty(vEPrcsDetailVO.getSearchKeyword())){
|
||||
String selectCondition = "AND a.PRCS_NM LIKE CONCAT ('%', '" +vEPrcsDetailVO.getSearchKeyword() + "', '%')";
|
||||
vEPrcsDetailVO.setSelectPagingListQuery(selectCondition);
|
||||
}
|
||||
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO);
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
||||
|
||||
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEPrcsDetailVOList);
|
||||
|
||||
|
||||
return "oprtn/fndthEnhanceTrn/fndthEduQnaMngList";
|
||||
// return "oprtn/fndthEnhanceTrn/fndthEduPrcsMngList";
|
||||
}
|
||||
|
||||
/**
|
||||
* 기반강화연수과정 등록 화면
|
||||
*/
|
||||
|
||||
@ -3013,5 +3013,20 @@
|
||||
<property name="cipers" value="7" /><!-- 일련번호(순번) 전체 길이(prefix길이 미포함) -->
|
||||
<property name="fillChar" value="0" />
|
||||
</bean>
|
||||
|
||||
<!-- Q&A -->
|
||||
<bean name="prcsAplctPrdQnaOrdGnrService" class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrServiceImpl" destroy-method="destroy">
|
||||
<property name="dataSource" ref="dataSource" />
|
||||
<property name="strategy" ref="prcsAplctPrdQnaOrdStrategy" /><!-- strategy 값 수정 -->
|
||||
<property name="blockSize" value="10"/>
|
||||
<property name="table" value="IDS"/>
|
||||
<property name="tableName" value="PRCS_APLCT_QNA_ORD"/><!-- tableName 값 수정 -->
|
||||
</bean>
|
||||
<!-- 과정신청기간 ID Generation Strategy Config -->
|
||||
<bean name="prcsAplctPrdQnaOrdStrategy" class="egovframework.rte.fdl.idgnr.impl.strategy.EgovIdGnrStrategyImpl"><!-- bean name 값에 strategy 값 입력 -->
|
||||
<property name="prefix" value="prcsAplctQna_" /><!-- prefix 값 수정 -->
|
||||
<property name="cipers" value="7" /><!-- 일련번호(순번) 전체 길이(prefix길이 미포함) -->
|
||||
<property name="fillChar" value="0" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
|
||||
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
||||
<typeAlias alias="FileVO" type="kcc.com.cmm.service.FileVO"/>
|
||||
<typeAlias alias="vEEduAplctVO" type="kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO"/>
|
||||
|
||||
<resultMap id="fileList" class="kcc.com.cmm.service.FileVO">
|
||||
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
|
||||
@ -243,4 +244,13 @@
|
||||
AND ATCH_FILE_ID = #atchFileId#
|
||||
AND FILE_SN = #fileSn#
|
||||
</update>
|
||||
|
||||
<update id="FileManageDAO.updateOffeduFileNull" parameterClass="VEEduAplctVO" >
|
||||
UPDATE
|
||||
$table$
|
||||
SET
|
||||
$type$ = null
|
||||
WHERE 1=1
|
||||
AND edu_aplct_ord = #eduAplctOrd#
|
||||
</update>
|
||||
</sqlMap>
|
||||
|
||||
@ -606,20 +606,23 @@
|
||||
</delete>
|
||||
|
||||
<select id="BBSAttributeManageDAO.selectBBSIdList" parameterClass="ComDefaultVO" resultClass="egovMap" >
|
||||
SELECT BBS_ID
|
||||
,BBS_NM , IF(B.MENU_NM='root' , '', B.MENU_NM) AS MENU_NM
|
||||
FROM LETTNBBSMASTER A LEFT OUTER JOIN LETTNMENUINFO B ON A.MENU_NO = B.MENU_NO
|
||||
SELECT A.BBS_ID
|
||||
, A.BBS_NM
|
||||
, CASE WHEN B.MENU_NM = 'root' THEN '' ELSE B.MENU_NM END AS MENU_NM
|
||||
FROM LETTNBBSMASTER A
|
||||
LEFT OUTER JOIN LETTNMENUINFO B
|
||||
ON A.MENU_NO = B.MENU_NO
|
||||
WHERE USE_AT = 'Y'
|
||||
AND BBS_NM LIKE CONCAT('%', #searchKeyword#, '%')
|
||||
AND BBS_NM LIKE '%'|| #searchKeyword# ||'%'
|
||||
ORDER BY BBS_NM
|
||||
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
||||
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY
|
||||
</select>
|
||||
|
||||
<select id="BBSAttributeManageDAO.selectBBSIdListCnt" parameterClass="ComDefaultVO" resultClass="java.lang.Integer" >
|
||||
SELECT COUNT(1)
|
||||
FROM LETTNBBSMASTER A
|
||||
WHERE USE_AT = 'Y'
|
||||
AND BBS_NM LIKE CONCAT('%', #searchKeyword#, '%')
|
||||
AND BBS_NM LIKE '%'|| #searchKeyword# ||'%'
|
||||
<isNotEmpty property="siteId">
|
||||
AND SITE_ID = #siteId#
|
||||
</isNotEmpty>
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
||||
<typeAlias alias="VEEduAplctVO" type="kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO"/>
|
||||
<typeAlias alias="VEAStngVO" type="kcc.ve.adv.tngr.stngInfo.service.VEAStngVO"/>
|
||||
<typeAlias alias="VEPrcsDetailVO" type="kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO"/>
|
||||
|
||||
|
||||
<!-- 공통 테이블 명 -->
|
||||
@ -159,6 +160,7 @@
|
||||
A.BROADROOM_EDU AS broadroomEdu
|
||||
, A.RNDS_ORD AS rndsOrd
|
||||
, A.APLCT_CN AS aplctCn
|
||||
, A.RSLT_ATCH_FILE_ID AS rsltAtchFileId
|
||||
</sql>
|
||||
|
||||
<!-- 강사 등록 C -->
|
||||
@ -855,6 +857,9 @@
|
||||
<isNotEmpty property="phtAtchFileId">
|
||||
, PHT_ATCH_FILE_ID = #phtAtchFileId#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="rsltAtchFileId">
|
||||
, RSLT_ATCH_FILE_ID = #rsltAtchFileId#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="isWait">
|
||||
, IS_WAIT = #isWait#
|
||||
</isNotEmpty>
|
||||
@ -1317,4 +1322,44 @@
|
||||
WHERE
|
||||
EDU_DOC_REQ_ORD = #eduDocReqOrd#
|
||||
</update>
|
||||
|
||||
<insert id="VEEduAplctDAO.insertVeEduQna" parameterClass="VEPrcsDetailVO">
|
||||
INSERT INTO VEA_PRCS_APLCT_PRD_QNA
|
||||
(
|
||||
PRCS_APLCT_PRD_QNA_ORD
|
||||
, LCTR_DIV_CD
|
||||
, QNA_REGIST
|
||||
, QNA_CN
|
||||
, FRST_REGIST_PNTTM
|
||||
, FRST_REGISTER_ID
|
||||
)VALUES(
|
||||
#prcsAplctPrdQnaOrd#
|
||||
, #lctrDivCd#
|
||||
, #qnaRegist#
|
||||
, #qnaCn#
|
||||
, SYSDATE
|
||||
, #frstRegisterId#
|
||||
)
|
||||
</insert>
|
||||
|
||||
<select id="VEEduAplctDAO.selectVeEduQna" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
||||
|
||||
SELECT
|
||||
PRCS_APLCT_PRD_QNA_ORD as prcsAplctPrdQnaOrd
|
||||
, LCTR_DIV_CD as lctrDivCd
|
||||
, QNA_REGIST as qnaRegist
|
||||
, QNA_CN as qnaCn
|
||||
, QNA_ANSWER_CN as qnaAnswerCn
|
||||
, QNA_ANSWERER as qnaAnswerer
|
||||
, FRST_REGIST_PNTTM as frstRegistPnttm
|
||||
, FRST_REGISTER_ID as frstRegisterId
|
||||
, LAST_UPDT_PNTTM as lastUpdtPnttm
|
||||
, LAST_UPDUSR_ID as lastUpdusrId
|
||||
FROM
|
||||
VEA_PRCS_APLCT_PRD_QNA
|
||||
WHERE
|
||||
QNA_REGIST = #qnaRegist#
|
||||
|
||||
|
||||
</select>
|
||||
</sqlMap>
|
||||
|
||||
@ -3640,6 +3640,7 @@
|
||||
, G.sbmt_yn AS acmdtSbmtYn
|
||||
, G.aprvl_cd AS acmdtAprvlCd
|
||||
, H.oneway_dstnc AS onewayDstnc
|
||||
, A.rslt_atch_file_id AS rsltAtchFileId
|
||||
FROM
|
||||
VE_EDU_APLCT A
|
||||
, VE_EDU_CHASI B
|
||||
|
||||
@ -158,6 +158,7 @@
|
||||
<pattern>*/kccadr/oprtn/cpyrgExprnClsrm/cautionGuidePreView.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||
|
||||
<pattern>*/kccadr/oprtn/cpyrgExprnClsrm/popup/slctnTeacherPopup.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||
<pattern>*/cop/bbs/EgovBBSIdListSearch.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||
|
||||
<!-- <pattern>*/tngrVisitEdu/popup/*Popup.do</pattern>
|
||||
<pattern>*/adultVisitEdu/popup/*Popup.do</pattern> -->
|
||||
|
||||
104
src/main/webapp/WEB-INF/jsp/cmm/fms/selectEduAplctFile.jsp
Normal file
104
src/main/webapp/WEB-INF/jsp/cmm/fms/selectEduAplctFile.jsp
Normal file
@ -0,0 +1,104 @@
|
||||
<%@ 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="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%
|
||||
|
||||
/**
|
||||
* @Class Name : selectScholSealInfs.jsp
|
||||
* @Description : 파일 목록화면
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ---------- ------ ---------------------------
|
||||
* @ 2009.03.26 이삼섭 최초 생성
|
||||
* @ 2011.07.20 옥찬우 <Input> Tag id속성 추가( Line : 68 )
|
||||
*
|
||||
* @author 공통서비스 개발팀 이삼섭
|
||||
* @since 2009.03.26
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<!-- link href="<c:url value='/css/egovframework/com/com.css' />" rel="stylesheet" type="text/css"-->
|
||||
<script type="text/javascript">
|
||||
|
||||
function fn_egov_downFile(atchFileId, fileSn){
|
||||
window.open("<c:url value='/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"'/>");
|
||||
}
|
||||
|
||||
/* 등록되어 있는 파일 삭제버튼 클릭시 */
|
||||
function delEduAplctFile(itemId , fileSn){
|
||||
if(!confirm("삭제하시겠습니까?")){
|
||||
return false;
|
||||
}
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "<c:url value='/cmm/fms/offedufileDeleteAjax.do' />",
|
||||
data:{ "atchFileId" : itemId , "fileSn" : fileSn, "eduAplctOrd" : "${eduAplctOrd}", "type" : '${type}', "table" : '${table}'},
|
||||
dataType:'json',
|
||||
cache: false,
|
||||
async: false,
|
||||
timeout: 600000,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){
|
||||
if(returnData.result == 'fail'){
|
||||
alert("삭제처리가 실패하였습니다.");
|
||||
}else if(returnData.result == 'auth_fail'){
|
||||
alert("세션이 종료되었습니다.");
|
||||
}else if(returnData.result =='success'){
|
||||
$('.item_'+returnData.fmsFileVO.atchFileId+"_"+returnData.fmsFileVO.fileSn).remove();
|
||||
alert("삭제되었습니다.");
|
||||
window.location.reload()
|
||||
}
|
||||
}else{
|
||||
alert("삭제처리에 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function (e) {
|
||||
console.log("ERROR : ", e);
|
||||
alert("삭제처리에 실패하였습니다.");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
</script>
|
||||
<style type="text/css">
|
||||
.cursor {
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- <form name="fileForm" action="" method="post" > -->
|
||||
<input type="hidden" name="atchFileId" value="${atchFileId}">
|
||||
<input type="hidden" name="fileSn" >
|
||||
<input type="hidden" name="fileListCnt" id="fileListCnt" value="${fileListCnt}">
|
||||
<input type="hidden" name="chgNm" id="chgNm" value="${chgNm}">
|
||||
<input type="hidden" name="type" id="type" value="${type}">
|
||||
<input type="hidden" name="table" id="table" value="${table}">
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${eduAplctOrd}">
|
||||
<c:set var="fileCount" value="${fn:length(fileList) }" />
|
||||
<!-- </form> -->
|
||||
<!--<title>파일목록</title> -->
|
||||
<c:forEach var="fileVO" items="${fileList}" varStatus="status">
|
||||
<a href="javascript:fn_egov_downFile('<c:out value="${fileVO.atchFileId}"/>','<c:out value="${fileVO.fileSn}"/>')" class="file_download_a" title="다운로드" style="display:inline-block;">
|
||||
<c:out value="${fileVO.orignlFileNm}"/>
|
||||
<c:if test="${dateFlag eq 'Y' }">
|
||||
<fmt:parseDate value="${fileVO.creatDt}" var="creatDt" pattern="yyyy-MM-dd HH:mm:ss"/>
|
||||
(<fmt:formatDate value="${creatDt}" pattern="yyyy년MM월dd일"/>)
|
||||
</c:if>
|
||||
</a>
|
||||
<c:if test="${deleteFlag eq 'Y' }">
|
||||
<img src="<c:url value='/images/egovframework/com/cmm/btn/btn_del.png' />" class="cursor" onClick="delEduAplctFile('<c:out value="${fileVO.atchFileId}"/>','<c:out value="${fileVO.fileSn}" />'); return false;" alt="첨부파일">
|
||||
</c:if>
|
||||
<br/>
|
||||
</c:forEach>
|
||||
|
||||
<c:if test="${fn:length(fileList) == 0}">
|
||||
</c:if>
|
||||
|
||||
@ -314,11 +314,14 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><p>교육사진파일</p></th>
|
||||
<th scope="row"><p>결과보고</p></th>
|
||||
<td>
|
||||
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
|
||||
<c:param name="param_atchFileId" value="${info.phtAtchFileId}" />
|
||||
<c:param name="pdf_view" value="Y" />
|
||||
<c:import url="/cmm/fms/selectOffeduFile.do" charEncoding="utf-8">
|
||||
<c:param name="param_atchFileId" value="${info.rsltAtchFileId}" />
|
||||
<c:param name="type" value="rslt_atch_file_id" />
|
||||
<c:param name="table" value="ve_edu_aplct" />
|
||||
<c:param name="deleteFlag" value="Y" />
|
||||
<c:param name="eduAplctOrd" value="${vEEduAplctVO.eduAplctOrd}" />
|
||||
</c:import>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@ -36,7 +36,6 @@
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
|
||||
function fncGoList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
@ -0,0 +1,287 @@
|
||||
<!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="kc" 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="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" />
|
||||
<%
|
||||
/**
|
||||
* @Class Name : fndthEduPrcsMngList.jsp
|
||||
* @Description : 기반강화연수 과정관리 목록
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ------- -------- ---------------------------
|
||||
* @ 2021.12.14 조용준 최초 생성
|
||||
* @author 조용준
|
||||
* @since 2021.12.14
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<style>
|
||||
input:read-only{
|
||||
background-color: #ededed;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
|
||||
function fncGoList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
listForm.searchKeyword.value = $('#searchKeyword').val();
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncGoDetail(prcsOrd){
|
||||
var listForm = document.listForm ;
|
||||
listForm.prcsOrd.value = prcsOrd ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngDetail.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncCreate() {
|
||||
var listForm = document.listForm ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngReg.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
function fncDelete(prcsOrd){
|
||||
document.listForm.prcsOrd.value = prcsOrd ;
|
||||
|
||||
var pageIndex = document.listForm.pageIndex.value;
|
||||
if($(".listCount").length == '1'){
|
||||
pageIndex = pageIndex -1;
|
||||
}
|
||||
var data = new FormData(document.getElementById("listForm"));
|
||||
if(confirm("삭제하시겠습니까?")){
|
||||
var url = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngDeleteAjax.do'/>";
|
||||
console.log(data);
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url: url,
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == "success"){
|
||||
alert("삭제되었습니다.");
|
||||
document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화
|
||||
linkPage(pageIndex);
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
}
|
||||
event.stopImmediatePropagation();
|
||||
|
||||
}
|
||||
|
||||
function fncSaveSort(prcsOrd, count){
|
||||
|
||||
var sortNo = $('#prcsSortNo'+count).val();
|
||||
|
||||
if(sortNo == ''){
|
||||
|
||||
alert("표시순서를 입력해 주세요.");
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
$('#prcsOrd').val(prcsOrd);
|
||||
$('#prcsSortNo').val(sortNo);
|
||||
var data = new FormData(document.getElementById("listForm"));
|
||||
var url = "<c:url value='/kccadr/oprtn/otsdCprtnPrcs/eduPrcsSortUpdateAjax.do'/>";
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url: url,
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == "success"){
|
||||
alert("저장되었습니다.");
|
||||
document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화
|
||||
fncGoList();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
</script>
|
||||
<title>교육과정관리</title>
|
||||
</head>
|
||||
<body>
|
||||
<form:form id="listForm" name="listForm" method="post" commandName="vEPrcsDetailVO" onsubmit="return false;">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEPrcsDetailVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" />
|
||||
<input type="hidden" id="prcsOrd" name="prcsOrd" value="" />
|
||||
<input type="hidden" id="prcsSortNo" name="prcsSortNo" value="" />
|
||||
|
||||
<div class="cont_wrap">
|
||||
<div class="box">
|
||||
|
||||
<!-- 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="tb_tit01">
|
||||
<p>교육 과정 관리</p>
|
||||
</div>
|
||||
<!-- list_top -->
|
||||
<div class="list_top search-only">
|
||||
<div class="list_top_1">
|
||||
<div class="util_right">
|
||||
|
||||
<ve:select codeId="VEA001" name="searchStatus" id="searchStatus" css="class='sel_type1'"
|
||||
selectedValue="${vEPrcsDetailVO.searchStatus }" defaultValue=""
|
||||
defaultText="전체"
|
||||
/>
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="시작일 선택" id="searchSmbtStartDt" name="searchSmbtStartDt" value="${vEPrcsDetailVO.searchSmbtStartDt}">
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="종료일 선택" id="searchSmbtEndDt" name="searchSmbtEndDt" value="${vEPrcsDetailVO.searchSmbtEndDt}">
|
||||
</div>
|
||||
<input type="text" id="searchKeyword" name="searchKeyword" placeholder="과정명를 입력하세요." title="검색어 입력" class="search_input" value="<c:out value='${vEEduAplctVO.searchFullName}'/>">
|
||||
<button type="button" class="btn_type08" onclick="fncGoList(); return false;">검색</button>
|
||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="list_util">
|
||||
<p class="list_util_p"><span><c:out value="${paginationInfo.totalRecordCount}" /></span>건의 접수가 검색되었습니다.</p>
|
||||
<div>
|
||||
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px" class="sel_type1">
|
||||
<option value='10' <c:if test="${vEPrcsDetailVO.pageUnit == '10' or vEPrcsDetailVO.pageUnit == ''}">selected</c:if>>10줄</option>
|
||||
<option value='20' <c:if test="${vEPrcsDetailVO.pageUnit == '20'}">selected</c:if>>20줄</option>
|
||||
<option value='30' <c:if test="${vEPrcsDetailVO.pageUnit == '30'}">selected</c:if>>30줄</option>
|
||||
<option value='100' <c:if test="${vEPrcsDetailVO.pageUnit == '100'}">selected</c:if>>100줄</option>
|
||||
</select>
|
||||
<%--<button type="button" class="btn_down_excel">엑셀 다운로드</button>--%>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- //list_top -->
|
||||
|
||||
|
||||
<!-- list -->
|
||||
<div class="tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 10%">
|
||||
<col style="width: 20%">
|
||||
<col style="width: auto">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 10%">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>교육부문</th>
|
||||
<th>과정명</th>
|
||||
<th>설명</th>
|
||||
<th>등록일시</th>
|
||||
<th>사용여부 </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr class="listCount">
|
||||
<td>
|
||||
<kc:code codeId="VEA001" code="${list.prcsDiv}"/>
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value='${list.prcsNm}'/>
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value='${list.prcsCn}'/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value='${list.frstRegistPnttm}'/>
|
||||
</td>
|
||||
<td>
|
||||
<c:if test="${list.useYn eq 'Y'}">
|
||||
사용
|
||||
</c:if>
|
||||
<c:if test="${list.useYn ne 'Y'}">
|
||||
미사용
|
||||
</c:if>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- //list -->
|
||||
|
||||
<!-- page -->
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btn_type01" onclick="fncCreate(); return false;">등록</button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //page -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //cont -->
|
||||
<!-- //cont -->
|
||||
|
||||
</form:form>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -1031,18 +1031,18 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><p>교육 사진</p></th>
|
||||
<th scope="row"><p>결과보고</p></th>
|
||||
<td colspan="3">
|
||||
|
||||
<c:choose>
|
||||
<c:when test="${info.phtAtchFileId ne null}">
|
||||
<c:when test="${info.rsltAtchFileId ne null}">
|
||||
<c:import url="/cmm/fms/selectSimpleDownInfs.do" charEncoding="utf-8">
|
||||
<c:param name="param_atchFileId" value="${info.phtAtchFileId}" />
|
||||
<c:param name="param_atchFileId" value="${info.rsltAtchFileId}" />
|
||||
</c:import>
|
||||
<button type="button" class="btnType01 updownRoad" data-tooltip="sub35_pop01" id="PHT" onclick="filePopupLayer('PHT')" title="팝업 열림">교육 사진 변경</button>
|
||||
<!-- <button type="button" class="btnType01 updownRoad" data-tooltip="sub35_pop01" id="PHT" onclick="filePopupLayer('PHT')" title="팝업 열림">결과보고 변경</button> -->
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<button type="button" class="btnType01 updownRoad" data-tooltip="sub35_pop01" id="PHT" onclick="filePopupLayer('PHT')" title="팝업 열림">교육 사진 업로드</button>
|
||||
<button type="button" class="btnType01 updownRoad" data-tooltip="sub35_pop01" id="PHT" onclick="filePopupLayer('RSLT')" title="팝업 열림">결과보고 업로드</button>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
|
||||
@ -165,7 +165,7 @@
|
||||
<td>
|
||||
<a href="javascript:goDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');">
|
||||
<c:choose>
|
||||
<c:when test="${not empty list.qustnrRespondId}">
|
||||
<c:when test="${not empty list.rsltAtchFileId}">
|
||||
제출
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
|
||||
@ -39,6 +39,62 @@
|
||||
$(this).val('');
|
||||
});
|
||||
}
|
||||
//FAQ 답변 open&close
|
||||
function faqOpen(item) {
|
||||
if($(item).is(".slide_open") == true) {
|
||||
$(item).removeClass("slide_open");
|
||||
$(item).next(".answer").slideUp(300);
|
||||
$(item).attr("title","답변 열기");
|
||||
} else {
|
||||
$(item).addClass("slide_open");
|
||||
$(item).next(".answer").slideDown(300);
|
||||
$(item).attr("title","답변 닫기");
|
||||
$(item).closest("li").siblings("li").children(".question").removeClass("slide_open");
|
||||
$(item).closest("li").siblings("li").children(".answer").slideUp(300);
|
||||
$(item).closest("li").siblings("li").children(".question").attr("title","답변 열기");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function fn_qnaReg(){
|
||||
|
||||
|
||||
var data = new FormData(document.getElementById("qnaForm"));
|
||||
|
||||
var url = "${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/qnaRegAjax.do";
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url: url,
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
console.log('returnData : ', returnData);
|
||||
if(returnData.result == "success"){
|
||||
// 대상자 테이블 pk 값
|
||||
var sspnIdtmtTrgtOrd = returnData.id;
|
||||
alert(returnData.msg);
|
||||
}else{
|
||||
alert(returnData.msg);
|
||||
}
|
||||
// fn_target_confirm_clean();
|
||||
location.reload();
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
$('#target_confirm_popup-close').click();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<!-- content -->
|
||||
@ -71,7 +127,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_list02">
|
||||
<div class="tb_list02" style="padding: 0 0 40px 0;">
|
||||
<table>
|
||||
<caption>최근 교육 목록표</caption>
|
||||
<colgroup>
|
||||
@ -136,6 +192,101 @@
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType04" data-info="prcsAplctPrd_0000220" data-tooltip="target_confirm_popup">교육문의</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_tit02">
|
||||
<div class="tb_tit02_left">
|
||||
<div class="t_best">Q&A</div>
|
||||
</div>
|
||||
<div class="btn_wrap1">
|
||||
<%-- <button type="button" title="최근 교육 목록 더보기" class="con_more" onclick="location.href='<c:url value="/web/ve/aplct/fndtnEnhanceTrn/fndtnEduAplctList.do" />'">더보기</button> --%>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tb_list02">
|
||||
<div class="faq_Wrap">
|
||||
<ul class="faq">
|
||||
<c:forEach var="list" items="${qnaList}" varStatus="status">
|
||||
<li>
|
||||
<button type="button" title="답변 열기" class="question" onclick="faqOpen(this);">
|
||||
<p class="qst_text"><span>질문</span>Q</p>
|
||||
<p class="qst_cont">${list.qnaCn }</p>
|
||||
</button>
|
||||
<div class="answer">
|
||||
<div class="answer_in">
|
||||
<p class="qst_text"><span>답변</span>A</p>
|
||||
<p class="awr_cont">
|
||||
<c:choose>
|
||||
<c:when test="${not empty list.qnaAnswerCn }">
|
||||
${list.qnaAnswerCn }
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
내용이 없습니다.
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<li><spring:message code="common.nodata.msg" /></li>
|
||||
</c:if>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</form:form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form id="qnaForm" name="qnaForm" method="post">
|
||||
<!-- 교육대상자 확인 -->
|
||||
<div class="tooltip-wrap">
|
||||
<div class="popup_wrap popType01" tabindex="0" data-tooltip-con="target_confirm_popup" data-focus="target_confirm_popup" data-focus-prev="target_confirm_popup_close">
|
||||
<div class="popup_tit">
|
||||
<p>교육문의하기</p>
|
||||
<button class="btn_popup_close tooltip-close" data-focus="target_confirm_popup_close" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="cont_body">
|
||||
<div class="pop_tb_type01" style="overflow:visible;">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width:27%;">
|
||||
<col style="width:auto;">
|
||||
</colgroup>
|
||||
<tr>
|
||||
<th>문의내용</th>
|
||||
<td>
|
||||
<textarea type="text" id="qnaCn" name="qnaCn" style="height: 220px;width: 100%;"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btnType05" onclick="fn_qnaReg()">문의</button>
|
||||
<button type="button" class="btnType02 tooltip-close" id="target_confirm_popup-close" data-focus="target_confirm_popup-close" data-focus-next="target_confirm_popup">취소</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--// 신청 클릭 > 기소유예 대상자 확인 팝업 -->
|
||||
</form>
|
||||
@ -454,7 +454,7 @@ $(document).ready(function(){
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType01" onclick="fn_eduInquiry()">교육문의(미개발)</button>
|
||||
<!-- <button type="button" class="btnType01" onclick="fn_eduInquiry()">교육문의(미개발)</button> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -233,6 +233,8 @@
|
||||
setMsg = "강사 참석 확인서";
|
||||
} else if (type == 'PHT') {
|
||||
setMsg = "교육사진";
|
||||
} else if (type == 'RSLT') {
|
||||
setMsg = "결과보고";
|
||||
}
|
||||
|
||||
var url = "<c:url value='/web/common/insertInnorixFileAjax.do' />";
|
||||
@ -278,6 +280,7 @@
|
||||
<c:if test="${fileType eq 'PLAN'}">계획서</c:if>
|
||||
<c:if test="${fileType eq 'ATTEND'}">강사 참석 확인서</c:if>
|
||||
<c:if test="${fileType eq 'PHT'}">교육 사진</c:if>
|
||||
<c:if test="${fileType eq 'RSLT'}">결과보고</c:if>
|
||||
업로드
|
||||
</p>
|
||||
<button class="btn_popup_close tooltip-close" data-focus="list_popup_close" title="팝업 닫기"><i></i></button>
|
||||
|
||||
@ -305,13 +305,6 @@ $( document ).ready(function() {
|
||||
</c:import>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>교육 사진</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${cryptoUtil.decrypt(info.chrgNm)}"/></td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
@ -297,7 +297,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
|
||||
.best_list .best_con img {border-radius:20px 0 0 0; width: 100%; height: 215px; object-fit: cover;}
|
||||
.best_list .best_con ul {padding: 14px;}
|
||||
.best_list .best_con .con_title {display: inline-block; font-size:22px; font-weight:500; padding:5px 0; width:100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
|
||||
.best_list .best_con .con_date {background: url(../images/content/calendar1_icon.jpg) no-repeat 5px; font-size: 18px; color:#444; padding:5px 0 10px 25px; font-weight: 300; letter-spacing:-0.5px; }
|
||||
.best_list .best_con .con_date {background: url(../images/content/calendar1_icon.jpg) no-repeat 5px 5px; font-size: 18px; color:#444; padding:5px 0 10px 25px; font-weight: 300; letter-spacing:-0.5px; overflow-wrap: break-word;}
|
||||
.best_list .best_con .con_btn button {position: relative; width:100%; background-color: #666666; color:#fff; text-align: center; border-radius:3px; padding:3px 0 5px 0; font-size:18px; z-index: 1;}
|
||||
.best_list .best_con:hover .con_btn button {width:100%; background-color: #ed5908; color:#fff; text-align: center; border-radius:3px; padding:3px 0 5px 0; font-size:18px;}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user