package itn.com.cmm.service.impl; import java.io.File; 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 itn.com.cmm.service.EgovFileMngService; import itn.com.cmm.service.FileVO; /** * @Class Name : EgovFileMngServiceImpl.java * @Description : 파일정보의 관리를 위한 구현 클래스 * @Modification Information * * 수정일 수정자 수정내용 * ------- ------- ------------------- * 2009. 3. 25. 이삼섭 최초생성 * * @author 공통 서비스 개발팀 이삼섭 * @since 2009. 3. 25. * @version * @see * */ @Service("EgovFileMngService") public class EgovFileMngServiceImpl extends EgovAbstractServiceImpl implements EgovFileMngService { @Resource(name = "FileManageDAO") private FileManageDAO fileMngDAO; /** * 여러 개의 파일을 삭제한다. * * @see itn.com.cmm.service.EgovFileMngService#deleteFileInfs(java.util.List) */ @Override @SuppressWarnings("rawtypes") public void deleteFileInfs(List fvoList) throws Exception { fileMngDAO.deleteFileInfs(fvoList); } /** * 하나의 파일에 대한 정보(속성 및 상세)를 등록한다. * * @see itn.com.cmm.service.EgovFileMngService#insertFileInf(itn.com.cmm.service.FileVO) */ @Override public String insertFileInf(FileVO fvo) throws Exception { String atchFileId = fvo.getAtchFileId(); fileMngDAO.insertFileInf(fvo); return atchFileId; } /** * 여러 개의 파일에 대한 정보(속성 및 상세)를 등록한다. * * @see itn.com.cmm.service.EgovFileMngService#insertFileInfs(java.util.List) */ @SuppressWarnings("rawtypes") @Override public String insertFileInfs(List fvoList) throws Exception { String atchFileId = ""; if (fvoList.size() != 0) { atchFileId = fileMngDAO.insertFileInfs(fvoList); } if (atchFileId == "") { atchFileId = null; } return atchFileId; } /** * 파일에 대한 목록을 조회한다. * * @see itn.com.cmm.service.EgovFileMngService#selectFileInfs(itn.com.cmm.service.FileVO) */ @Override public List selectFileInfs(FileVO fvo) throws Exception { return fileMngDAO.selectFileInfs(fvo); } /** * 여러 개의 파일에 대한 정보(속성 및 상세)를 수정한다. * * @see itn.com.cmm.service.EgovFileMngService#updateFileInfs(java.util.List) */ @SuppressWarnings("rawtypes") @Override public void updateFileInfs(List fvoList) throws Exception { //Delete & Insert fileMngDAO.updateFileInfs(fvoList); } /** * 하나의 파일을 삭제한다. * * @see itn.com.cmm.service.EgovFileMngService#deleteFileInf(itn.com.cmm.service.FileVO) */ @Override public void deleteFileInf(FileVO fvo) throws Exception { fileMngDAO.deleteFileInf(fvo); } /** * 파일에 대한 상세정보를 조회한다. * * @see itn.com.cmm.service.EgovFileMngService#selectFileInf(itn.com.cmm.service.FileVO) */ @Override public FileVO selectFileInf(FileVO fvo) throws Exception { return fileMngDAO.selectFileInf(fvo); } /** * 파일 구분자에 대한 최대값을 구한다. * * @see itn.com.cmm.service.EgovFileMngService#getMaxFileSN(itn.com.cmm.service.FileVO) */ @Override public int getMaxFileSN(FileVO fvo) throws Exception { return fileMngDAO.getMaxFileSN(fvo); } /** * 전체 파일을 삭제한다. * * @see itn.com.cmm.service.EgovFileMngService#deleteAllFileInf(itn.com.cmm.service.FileVO) */ @Override public void deleteAllFileInf(FileVO fvo) throws Exception { fileMngDAO.deleteAllFileInf(fvo); } /** * 파일명 검색에 대한 목록을 조회한다. * * @see itn.com.cmm.service.EgovFileMngService#selectFileListByFileNm(itn.com.cmm.service.FileVO) */ @Override public Map selectFileListByFileNm(FileVO fvo) throws Exception { List result = fileMngDAO.selectFileListByFileNm(fvo); int cnt = fileMngDAO.selectFileListCntByFileNm(fvo); Map map = new HashMap(); map.put("resultList", result); map.put("resultCnt", Integer.toString(cnt)); return map; } /** * 이미지 파일에 대한 목록을 조회한다. * * @see itn.com.cmm.service.EgovFileMngService#selectImageFileList(itn.com.cmm.service.FileVO) */ @Override public List selectImageFileList(FileVO vo) throws Exception { return fileMngDAO.selectImageFileList(vo); } /*단일 파일업데이트*/ @Override public void updateFileInfo(List fvoList) throws Exception { //Delete & Update fileMngDAO.updateFileInfo(fvoList); } @Override public void deleteFmsFileInf(FileVO fileVO) throws Exception { FileVO returnFileVO = new FileVO(); returnFileVO = fileMngDAO.selectFileInf(fileVO); if(returnFileVO !=null) { File delFile = new File(returnFileVO.getFileStreCours()+returnFileVO.getStreFileNm()); delFile.delete(); //실제파일 deletePerFile 삭제 } //lettnfiledetail pk 인 lettnfile 는 삭제 안함 fileMngDAO.deleteFileInf(fileVO); //DB삭제 } }