diff --git a/src/main/java/kcc/com/cmm/service/AdrInnorixFileVO.java b/src/main/java/kcc/com/cmm/service/AdrInnorixFileVO.java new file mode 100644 index 00000000..1073b936 --- /dev/null +++ b/src/main/java/kcc/com/cmm/service/AdrInnorixFileVO.java @@ -0,0 +1,92 @@ +package kcc.com.cmm.service; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +import kcc.com.cmm.ComDefaultVO; + + +/** + * + * @author : 이호영 + * @fileName : InnorixVO.java + * @date : 2022.11.01 + * @description : 대용량 파일 등록 솔루션 VO + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- * + * 2022.11.01 이호영 최초 생성 + * + * + * + */ +public class AdrInnorixFileVO extends ComDefaultVO implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 4400281789694196418L; + + + public String adrSeq = ""; + + public String adrDocTy = ""; + + private String frstRegistPnttm; //등록일시 + private String frstRegisterId; //등록자 + private String lastUpdtPnttm; //수정일시 + private String lastUpdusrId; //수정자 + + public List innorixFileListVO = new ArrayList(); + + + + public String getAdrSeq() { + return adrSeq; + } + public void setAdrSeq(String adrSeq) { + this.adrSeq = adrSeq; + } + public String getAdrDocTy() { + return adrDocTy; + } + public void setAdrDocTy(String adrDocTy) { + this.adrDocTy = adrDocTy; + } + 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 List getInnorixFileListVO() { + return innorixFileListVO; + } + public void setInnorixFileListVO(List innorixFileListVO) { + this.innorixFileListVO = innorixFileListVO; + } + + + + + +} \ No newline at end of file diff --git a/src/main/java/kcc/com/cmm/service/InnorixFileService.java b/src/main/java/kcc/com/cmm/service/InnorixFileService.java new file mode 100644 index 00000000..1cdda6c8 --- /dev/null +++ b/src/main/java/kcc/com/cmm/service/InnorixFileService.java @@ -0,0 +1,27 @@ +package kcc.com.cmm.service; + +import java.util.List; +import java.util.Map; + +import egovframework.rte.fdl.cmmn.exception.FdlException; +import kcc.kccadr.cmm.RestResponse; + +/** + * @Class Name : EgovFileMngService.java + * @Description : 파일정보의 관리를 위한 서비스 인터페이스 + * @Modification Information + * + * 수정일 수정자 수정내용 + * ------- ------- ------------------- + * 2009. 3. 25. 이삼섭 최초생성 + * + * @author 공통 서비스 개발팀 이삼섭 + * @since 2009. 3. 25. + * @version + * @see + * + */ +public interface InnorixFileService { + + RestResponse insertInnorixFileAjax(AdrInnorixFileVO adrInnorixFileVO) throws FdlException, Exception; +} diff --git a/src/main/java/kcc/com/cmm/service/InnorixFileVO.java b/src/main/java/kcc/com/cmm/service/InnorixFileVO.java new file mode 100644 index 00000000..2aac2304 --- /dev/null +++ b/src/main/java/kcc/com/cmm/service/InnorixFileVO.java @@ -0,0 +1,180 @@ +package kcc.com.cmm.service; + +import java.io.Serializable; +import java.util.List; + +import kcc.com.cmm.ComDefaultVO; + + +/** + * + * @author : 이호영 + * @fileName : InnorixVO.java + * @date : 2022.11.01 + * @description : 대용량 파일 등록 솔루션 VO + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- * + * 2022.11.01 이호영 최초 생성 + * + * + * + */ +public class InnorixFileVO extends ComDefaultVO implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 5641887401063483713L; + + public String rowID = ""; + + public String controlId = ""; + + public String uploadUrl = ""; + + public String clientFilePath = ""; + + public String clientFileName = ""; + + public String rootName = ""; + + public String fileState = ""; + + public Integer fileSize = 0; + + public String serverFilePath = ""; + + public String serverFileName = ""; + + public Boolean isFolder = null; + + public Boolean firstTransferCompleted = null; + + public Integer totalTransferTime = 0; + + public Integer transferTime = 0; + + private String frstRegistPnttm; + + private String frstRegisterId; + + private String lastUpdtPnttm; + + private String lastUpdusrId; + + + + + public String getRowID() { + return rowID; + } + public void setRowID(String rowID) { + this.rowID = rowID; + } + public String getControlId() { + return controlId; + } + public void setControlId(String controlId) { + this.controlId = controlId; + } + public String getUploadUrl() { + return uploadUrl; + } + public void setUploadUrl(String uploadUrl) { + this.uploadUrl = uploadUrl; + } + public String getClientFilePath() { + return clientFilePath; + } + public void setClientFilePath(String clientFilePath) { + this.clientFilePath = clientFilePath; + } + public String getClientFileName() { + return clientFileName; + } + public void setClientFileName(String clientFileName) { + this.clientFileName = clientFileName; + } + public String getRootName() { + return rootName; + } + public void setRootName(String rootName) { + this.rootName = rootName; + } + public String getFileState() { + return fileState; + } + public void setFileState(String fileState) { + this.fileState = fileState; + } + public Integer getFileSize() { + return fileSize; + } + public void setFileSize(Integer fileSize) { + this.fileSize = fileSize; + } + public String getServerFilePath() { + return serverFilePath; + } + public void setServerFilePath(String serverFilePath) { + this.serverFilePath = serverFilePath; + } + public String getServerFileName() { + return serverFileName; + } + public void setServerFileName(String serverFileName) { + this.serverFileName = serverFileName; + } + public Boolean getIsFolder() { + return isFolder; + } + public void setIsFolder(Boolean isFolder) { + this.isFolder = isFolder; + } + public Boolean getFirstTransferCompleted() { + return firstTransferCompleted; + } + public void setFirstTransferCompleted(Boolean firstTransferCompleted) { + this.firstTransferCompleted = firstTransferCompleted; + } + public Integer getTotalTransferTime() { + return totalTransferTime; + } + public void setTotalTransferTime(Integer totalTransferTime) { + this.totalTransferTime = totalTransferTime; + } + public Integer getTransferTime() { + return transferTime; + } + public void setTransferTime(Integer transferTime) { + this.transferTime = transferTime; + } + 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; + } + + + +} \ No newline at end of file diff --git a/src/main/java/kcc/com/cmm/service/impl/InnorixFileDAO.java b/src/main/java/kcc/com/cmm/service/impl/InnorixFileDAO.java new file mode 100644 index 00000000..7dcc1ef4 --- /dev/null +++ b/src/main/java/kcc/com/cmm/service/impl/InnorixFileDAO.java @@ -0,0 +1,31 @@ +package kcc.com.cmm.service.impl; + +import egovframework.rte.psl.dataaccess.EgovAbstractDAO; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Repository; + +import com.ibatis.sqlmap.client.SqlMapClient; + +/** + * EgovComAbstractDAO.java 클래스 + * + * @author 서준식 + * @since 2011. 9. 23. + * @version 1.0 + * @see + * + *
+ * << 개정이력(Modification Information) >>
+ *
+ *   수정일      수정자           수정내용
+ *  -------    -------------    ----------------------
+ *   2011. 9. 23.   서준식        최초 생성
+ * 
+ */ +@Repository("InnorixFileDAO") +public class InnorixFileDAO extends EgovAbstractDAO { + + +} diff --git a/src/main/java/kcc/com/cmm/service/impl/InnorixFileServiceImpl.java b/src/main/java/kcc/com/cmm/service/impl/InnorixFileServiceImpl.java new file mode 100644 index 00000000..7eca7322 --- /dev/null +++ b/src/main/java/kcc/com/cmm/service/impl/InnorixFileServiceImpl.java @@ -0,0 +1,136 @@ +package kcc.com.cmm.service.impl; + +import java.io.File; +import java.io.IOException; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; + +import javax.annotation.Resource; + +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.FilenameUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.HttpStatus; +import org.springframework.stereotype.Service; + +import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; +import egovframework.rte.fdl.cmmn.exception.FdlException; +import egovframework.rte.fdl.idgnr.EgovIdGnrService; +import kcc.com.cmm.service.AdrInnorixFileVO; +import kcc.com.cmm.service.FileVO; +import kcc.com.cmm.service.InnorixFileService; +import kcc.com.cmm.service.InnorixFileVO; +import kcc.com.cmm.web.InnorixFileController; +import kcc.kccadr.accdnt.ans.service.AnsVO; +import kcc.kccadr.accdnt.ans.service.impl.AnsDAO; +import kcc.kccadr.cmm.RestResponse; +import kcc.let.utl.fcc.service.EgovStringUtil; + +/** + * @Class Name : EgovCmmUseServiceImpl.java + * @Description : 공통코드등 전체 업무에서 공용해서 사용해야 하는 서비스를 정의하기위한 서비스 구현 클래스 + * @Modification Information + * + * 수정일 수정자 수정내용 + * ------- ------- ------------------- + * 2009. 3. 11. 이삼섭 + * + * @author 공통 서비스 개발팀 이삼섭 + * @since 2009. 3. 11. + * @version + * @see + * + */ +@Service("InnorixFileService") +public class InnorixFileServiceImpl extends EgovAbstractServiceImpl implements InnorixFileService { + + private static final Logger logger = LoggerFactory.getLogger(InnorixFileServiceImpl.class); + + @Resource(name = "InnorixFileDAO") + private InnorixFileDAO innorixDAO; + + @Resource(name = "FileManageDAO") + private FileManageDAO fileManageDAO; + + @Value("#{globalSettings['Globals.Innorix.FilePath']}") + private String innoFilePath; + + @Resource(name = "ansDAO") + private AnsDAO ansDAO; + + @Resource(name = "egovFileIdGnrService") + private EgovIdGnrService idgenService; + + //답변서 idgen 서비스 + @Resource(name = "egovRldMgrManageGnrService") + private EgovIdGnrService egovRldMgrManageGnrService; + + @Override + public RestResponse insertInnorixFileAjax(AdrInnorixFileVO adrInnorixFileListVO) throws FdlException, Exception { + + List result = new ArrayList(); + + String fileNextId = idgenService.getNextStringId(); + + int fileSn = 0; + + logger.info(" file data 반복문 시작 :: [{}]", adrInnorixFileListVO.getInnorixFileListVO().size()); + for(InnorixFileVO innorixFileVO : adrInnorixFileListVO.getInnorixFileListVO()) + { + FileVO fileVO = new FileVO(); + // new 파일명 + String newName = "PST_" + EgovStringUtil.getTimeStamp(); + + logger.info("[{}]번쨰 newName :: [{}]", fileSn, newName); + + String oriFullPath = innoFilePath + innorixFileVO.getServerFileName(); + String newFullPath = innoFilePath + newName; + + logger.info("oriFullPath :: [{}]", oriFullPath); + logger.info("newFullPath :: [{}]", newFullPath); + + try { + File orifile = FileUtils.getFile(oriFullPath); + File newfile = FileUtils.getFile(newFullPath); + FileUtils.moveFile(orifile, newfile); + } catch (IOException e) { + e.printStackTrace(); + } + + fileVO.setAtchFileId(fileNextId); + fileVO.setFileSn(Integer.toString(fileSn)); + fileVO.setFileStreCours(innoFilePath); + fileVO.setStreFileNm(newName); + fileVO.setOrignlFileNm(innorixFileVO.getServerFileName()); + fileVO.setFileExtsn(FilenameUtils.getExtension(oriFullPath)); + fileVO.setFileSize(Integer.toString(innorixFileVO.getFileSize())); + + result.add(fileVO); + + fileSn++; + + } + + logger.info(" // file data 반복문 끝 "); + // 파일 업로드 + fileManageDAO.insertFileInfs(result); + + + // RpplDoc + AnsVO ansVO = new AnsVO(); + ansVO.setAdrSeq(adrInnorixFileListVO.getAdrSeq()); + ansVO.setAdrSn("1"); + ansVO.setRpplDocSeq(egovRldMgrManageGnrService.getNextStringId()); + ansVO.setAdrDocTy(adrInnorixFileListVO.getAdrDocTy()); + ansVO.setAtchFileId(fileNextId); + ansVO.setFrstRegistPnttm(adrInnorixFileListVO.getFrstRegistPnttm()); + ansVO.setLastUpdtPnttm(adrInnorixFileListVO.getFrstRegistPnttm()); + ansDAO.ansSubmitAjax_setp1(ansVO); + + return new RestResponse(HttpStatus.OK, "등록 되었습니다.", LocalDateTime.now()); + } + +} diff --git a/src/main/java/kcc/com/cmm/web/InnorixFileController.java b/src/main/java/kcc/com/cmm/web/InnorixFileController.java new file mode 100644 index 00000000..eb5ce7c5 --- /dev/null +++ b/src/main/java/kcc/com/cmm/web/InnorixFileController.java @@ -0,0 +1,69 @@ +package kcc.com.cmm.web; + +import java.time.LocalDateTime; +import java.util.List; + +import javax.annotation.Resource; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import kcc.com.cmm.LoginVO; +import kcc.com.cmm.service.AdrInnorixFileVO; +import kcc.com.cmm.service.InnorixFileService; +import kcc.com.utl.fcc.service.EgovStringUtil; +import kcc.kccadr.cmm.RestResponse; + +/** + * + * @author : 이호영 + * @fileName : InnorixFileController.java + * @date : 2022.11.01 + * @description : innorix 대용량 파일 업로드 솔루션 + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- * + * 2022.11.01 이호영 최초 생성 + * + * + * + */ +@Controller +public class InnorixFileController { + + private static final Logger logger = LoggerFactory.getLogger(InnorixFileController.class); + + /** EgovPropertyService */ + @Resource(name = "InnorixFileService") + protected InnorixFileService innorixService; + + @RequestMapping(value = {"/kccadr/common/insertInnorixFileAjax.do"}, method = RequestMethod.POST) + public ResponseEntity insertInnorixFileAjax(@RequestBody AdrInnorixFileVO adrInnorixFileVO) throws Exception { + + logger.info(" ++ adrSeq :: [{}], adrDocTy :: [{}], frstRegistPnttm :: [{}] ", adrInnorixFileVO.getAdrSeq(), adrInnorixFileVO.getAdrDocTy(), adrInnorixFileVO.getFrstRegistPnttm()); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + if(userId.equals("")) { + return ResponseEntity.ok(new RestResponse(HttpStatus.UNAUTHORIZED, "로그인이 필요합니다.", LocalDateTime.now())); + } + + adrInnorixFileVO.setFrstRegisterId(userId); + adrInnorixFileVO.setLastUpdusrId(userId); + + + + return ResponseEntity.ok(innorixService.insertInnorixFileAjax(adrInnorixFileVO)); + } + + +} \ No newline at end of file diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/cmm/service/PgrCmmVO.java b/src/main/java/kcc/kccadr/adjPgrMgr/cmm/service/PgrCmmVO.java index ba48f848..0f6edfd7 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/cmm/service/PgrCmmVO.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/cmm/service/PgrCmmVO.java @@ -61,6 +61,7 @@ public class PgrCmmVO extends ComDefaultVO implements Serializable { private String frstRegisterId; private String frstRegistPnttm; private String lastUpdusrId; + private String lastUpdtPnttm; private String memDeptNm; // 조정부명 private String memDeptSeq; // 조정부 private String memName; // 조정부장명 @@ -488,7 +489,15 @@ public class PgrCmmVO extends ComDefaultVO implements Serializable { this.lastUpdusrId = lastUpdusrId; } - public String getMemDeptNm() { + public String getLastUpdtPnttm() { + return lastUpdtPnttm; + } + + public void setLastUpdtPnttm(String lastUpdtPnttm) { + this.lastUpdtPnttm = lastUpdtPnttm; + } + + public String getMemDeptNm() { return memDeptNm; } diff --git a/src/main/java/kcc/kccadr/adjcclt/opinion/web/AdjstOpinionController.java b/src/main/java/kcc/kccadr/adjcclt/opinion/web/AdjstOpinionController.java index e9cf9198..b3836900 100644 --- a/src/main/java/kcc/kccadr/adjcclt/opinion/web/AdjstOpinionController.java +++ b/src/main/java/kcc/kccadr/adjcclt/opinion/web/AdjstOpinionController.java @@ -1,19 +1,13 @@ package kcc.kccadr.adjcclt.opinion.web; -import java.util.List; - import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.ModelAttribute; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; @@ -22,9 +16,6 @@ import kcc.com.cmm.LoginVO; import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService; import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO; import kcc.kccadr.adjcclt.opinion.service.AdjstOpinionService; -import kcc.kccadr.adjcclt.opinion.service.AdjstOpinionVO; -import kcc.kccadr.adjcclt.service.AdjstConciliatorVO; -import kcc.kccadr.cmm.RestResponse; /** * diff --git a/src/main/resources/egovframework/egovProps/globals_local.properties b/src/main/resources/egovframework/egovProps/globals_local.properties index d66b853b..044698bf 100644 --- a/src/main/resources/egovframework/egovProps/globals_local.properties +++ b/src/main/resources/egovframework/egovProps/globals_local.properties @@ -177,4 +177,7 @@ Globals.ozFontPath=/home/oz80/fontTestDir/ #Globals.ozFontPath=/home/oz80/fontTestDir/ #\uc624\uc988\ub9ac\ud3ec\ud2b8 \ud3f0\ud2b8 \uc885\ub958 -Globals.ozFont=NanumSquareR.ttf \ No newline at end of file +Globals.ozFont=NanumSquareR.ttf + +#\ub300\uc6a9\ub7c9 innorix filePath +Globals.Innorix.FilePath=D:\\usr\\local\\tomcat\\file\\sht\\ diff --git a/src/main/resources/egovframework/egovProps/globals_svr.properties b/src/main/resources/egovframework/egovProps/globals_svr.properties index cbdeb079..6846f62d 100644 --- a/src/main/resources/egovframework/egovProps/globals_svr.properties +++ b/src/main/resources/egovframework/egovProps/globals_svr.properties @@ -175,4 +175,7 @@ Globals.prod.islocal=real Globals.ozFontPath=/home/oz80/fontTestDir/ #\uc624\uc988\ub9ac\ud3ec\ud2b8 \ud3f0\ud2b8 \uc885\ub958 -Globals.ozFont=NanumSquareR.ttf \ No newline at end of file +Globals.ozFont=NanumSquareR.ttf + +#\ub300\uc6a9\ub7c9 innorix filePath +Globals.Innorix.FilePath=/usr/local/tomcat/file/sht/ \ No newline at end of file diff --git a/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ans/AnsSubmit_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ans/AnsSubmit_SQL_Mysql.xml index 1d344800..76baf702 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ans/AnsSubmit_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ans/AnsSubmit_SQL_Mysql.xml @@ -77,9 +77,19 @@ , SYS_DATETIME , #usrCi# , #atchFileId# + + ,TO_DATETIME(TO_CHAR(#frstRegistPnttm#,'YYYY-MM-DD')) + + , SYS_DATETIME + , #frstRegisterId# + + ,TO_DATETIME(TO_CHAR(#lastUpdtPnttm#,'YYYY-MM-DD')) + + , SYS_DATETIME + , #lastUpdusrId# ) diff --git a/src/main/webapp/WEB-INF/jsp/kccadr/adjReqMgrPast/adjReqMgrPastFileRegist.jsp b/src/main/webapp/WEB-INF/jsp/kccadr/adjReqMgrPast/adjReqMgrPastFileRegist.jsp index 8a396e40..67c9d9b9 100644 --- a/src/main/webapp/WEB-INF/jsp/kccadr/adjReqMgrPast/adjReqMgrPastFileRegist.jsp +++ b/src/main/webapp/WEB-INF/jsp/kccadr/adjReqMgrPast/adjReqMgrPastFileRegist.jsp @@ -28,6 +28,7 @@ + + 사건관련문서 등록 -
- -
- -
- - " /> -<%-- " /> --%> -<%-- " /> --%> - -<%-- " /> --%> -<%-- " /> --%> - -<%-- " /> --%> -<%-- " /> --%> - <%-- " /> --%> - -
- -
-
@@ -113,14 +164,8 @@ function fn_goListPage(){
+

파일 등록

- -
- <%--

총 진행 회차 :

--%> - -
- -
@@ -141,122 +186,86 @@ function fn_goListPage(){ - - - +
- -
- -
- + - +

- - -
- - - - - - - - - - - - - - - - - - - -
첨부파일 추가 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
-

- 첨부하실 파일을 - 마우스로 끌어서 - 넣어주세요. -

-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
첨부파일 추가 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
- - - "> - - - - "> - - - - -
-
-
-
- +
+ +
- - +
+ + +

신청 정보

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
일자 + + 문건명
+

2022-09-30

+
조정신청서 +
+

2022-09-30

+
+ test.txt  +
+
+
+ + +
diff --git a/src/main/webapp/innorix/exam/download.html b/src/main/webapp/innorix/exam/download.html index e99b142b..caa6d0ff 100644 --- a/src/main/webapp/innorix/exam/download.html +++ b/src/main/webapp/innorix/exam/download.html @@ -15,9 +15,10 @@ control.on('loadComplete', function (p) { // 다운로드 파일 추가 var urlBase = location.href.substring(0, location.href.lastIndexOf("/") + 1); + console.log('urlBase :', urlBase); control.presetDownloadFiles( [{ - printFileName: "INNORIX WP 브로셔.pdf", + printFileName: "INNORIX WP 브로셔!!!.pdf", fileSize: 1433885, downloadUrl: urlBase + "download.jsp?fileID=1" }, diff --git a/src/main/webapp/innorix/exam/html5Combine.html b/src/main/webapp/innorix/exam/html5Combine.html index 377b9e6b..90394cac 100644 --- a/src/main/webapp/innorix/exam/html5Combine.html +++ b/src/main/webapp/innorix/exam/html5Combine.html @@ -1 +1 @@ - ← 예제 목록


| \ No newline at end of file +

| \ No newline at end of file diff --git a/src/main/webapp/innorix/exam/html5Combine_ori.html b/src/main/webapp/innorix/exam/html5Combine_ori.html new file mode 100644 index 00000000..377b9e6b --- /dev/null +++ b/src/main/webapp/innorix/exam/html5Combine_ori.html @@ -0,0 +1 @@ + ← 예제 목록


| \ No newline at end of file diff --git a/src/main/webapp/innorix/exam/html5Upload.html b/src/main/webapp/innorix/exam/html5Upload.html index 8f91619c..2044e196 100644 --- a/src/main/webapp/innorix/exam/html5Upload.html +++ b/src/main/webapp/innorix/exam/html5Upload.html @@ -27,7 +27,7 @@ - ← 예제 목록

+

diff --git a/src/main/webapp/innorix/exam/html5Upload_ori.html b/src/main/webapp/innorix/exam/html5Upload_ori.html new file mode 100644 index 00000000..8f91619c --- /dev/null +++ b/src/main/webapp/innorix/exam/html5Upload_ori.html @@ -0,0 +1,37 @@ + + + + + + + + + ← 예제 목록

+ +

+ + + + + diff --git a/src/main/webapp/innorix/exam/upload.html b/src/main/webapp/innorix/exam/upload.html index 74dfaffc..f8d87e54 100644 --- a/src/main/webapp/innorix/exam/upload.html +++ b/src/main/webapp/innorix/exam/upload.html @@ -30,7 +30,7 @@ var files = JSON.stringify(f); var innoJquery = innorix._load("innoJquery"); innoJquery('form#f_write').append(''); - innoJquery('form#f_write').submit(); +// innoJquery('form#f_write').submit(); }); }; diff --git a/src/main/webapp/innorix/exam/upload.jsp b/src/main/webapp/innorix/exam/upload.jsp index c6955bd8..65dffe30 100644 --- a/src/main/webapp/innorix/exam/upload.jsp +++ b/src/main/webapp/innorix/exam/upload.jsp @@ -6,6 +6,7 @@ if (request.getMethod().equals("POST")) { String directory = InnorixUpload.getServletAbsolutePath(request); + System.out.println("========== directory :: " + directory + " =========="); directory = directory.substring(0, directory.lastIndexOf("/") + 1) + "data"; int maxPostSize = 2147482624; // bytes diff --git a/src/main/webapp/innorix/exam/uploadCustomTable.html b/src/main/webapp/innorix/exam/uploadCustomTable.html index d94ac52a..0be34b54 100644 --- a/src/main/webapp/innorix/exam/uploadCustomTable.html +++ b/src/main/webapp/innorix/exam/uploadCustomTable.html @@ -51,6 +51,7 @@ // 업로드 완료 이벤트 control.on('uploadComplete', function (p) { var f = p.files; + console.log('f : ', f); var r = "Upload complete\n\n"; for (var i = 0; i < f.length; i++ ) { r += f[i].clientFileName + " " + f[i].fileSize + "\n"; @@ -138,7 +139,7 @@ - ← 예제 목록

+
diff --git a/src/main/webapp/innorix/exam/uploadCustomTable_ori.html b/src/main/webapp/innorix/exam/uploadCustomTable_ori.html new file mode 100644 index 00000000..09f3c728 --- /dev/null +++ b/src/main/webapp/innorix/exam/uploadCustomTable_ori.html @@ -0,0 +1,165 @@ + + + + + + + + + + + ← 예제 목록

+
+
+ + + + + + + + + + + + +
filePathfileSizefileType파일명용량구분삭제
+
+ +
+ + + + + \ No newline at end of file diff --git a/src/main/webapp/innorix/exam/upload_test_220916.jsp b/src/main/webapp/innorix/exam/upload_test_220916.jsp index c6955bd8..b4daa909 100644 --- a/src/main/webapp/innorix/exam/upload_test_220916.jsp +++ b/src/main/webapp/innorix/exam/upload_test_220916.jsp @@ -1,12 +1,14 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="com.innorix.transfer.InnorixUpload" %> - +<%-- <%@ page import="egovframework.rte.fdl.property.EgovPropertyService" %> --%> <% // CORS체크를 위한 OPTIONS 메소드가 들어오므로 POST 일 경우에만 동작하도록 조건 추가 if (request.getMethod().equals("POST")) { String directory = InnorixUpload.getServletAbsolutePath(request); - directory = directory.substring(0, directory.lastIndexOf("/") + 1) + "data"; +// directory = directory.substring(0, directory.lastIndexOf("/") + 1) + "data"; +// directory = PropertyService.getString("Globals.fileStorePath"); + directory = "/usr/local/tomcat/file/sht/"; int maxPostSize = 2147482624; // bytes InnorixUpload uploader = new InnorixUpload(request, response, maxPostSize, directory); diff --git a/src/main/webapp/innorix/innorix.js b/src/main/webapp/innorix/innorix.js index b710d5a8..e37b2f56 100644 --- a/src/main/webapp/innorix/innorix.js +++ b/src/main/webapp/innorix/innorix.js @@ -41,7 +41,7 @@ resource:c.resourceGetter("total"),thumbnail:m,watermark:g})},uploadFallback:fun i.uploadUrl&&(i.uploadUrl=n.url.addOriginIfNot(i.uploadUrl)),i.uploadCompletedEvent&&i.uploadCompletedEvent.url&&(i.uploadCompletedEvent.url=n.url.addOriginIfNot(i.uploadCompletedEvent.url)),i.downloadCompletedEvent&&i.downloadCompletedEvent.url&&(i.downloadCompletedEvent.url=n.url.addOriginIfNot(i.downloadCompletedEvent.url)),i.isStream="stream"===i.downloadType,i.width=i.width||this.view.defaultSize.width,i.height=i.height||this.view.defaultSize.height,this.setSize(i.width,i.height),e(".irx_transferWin_wrapper .irx_custom_title").text(i.progressTitle),t||"download"==i.transferMode&&(this.option.$el.find(".irx_filetree").removeClass("empty-uploader"),this.option.$el.find(".irx_filetree").addClass("empty-downloader"),this.option.$el.find(".irx_filetree").find(".irx-empty-download-text").text(i.emptyDownloadFileText),this.option.$el.find(".irx_filetree").find(".irx-empty-download-text").show()),this.option.transferWindowMode&&(this.option.transferStart={upload:"manual",download:"manual"},this.option.$el.hide()),this.option.transferWindowModeOpen&&(this.option.transferStart={upload:"manual",download:"manual"},this.option.$el.hide());var o=this;i.events&&e.each(i.events,function(t,e){o.hasHandler(t,e)||o.on(t,e)})},addLocalFiles:function(t){if(!this.checkState())return!1;if(0==this.option.agent)return!1;if(this.fileloadingState="","undefined"==typeof FormData){var e=this;return this.module.addLocalFilesFallback(this.option.transferMode,t,function(t){!1===t.value?(e.fileloadingState="hide",e.emit(g.FILE_PROCESSING_STATE_HIDE),e.module.licenseNotValidate(t.error)):e._addFiles(t.value)}),this}var e=this;return this.module.addLocalFiles(this.option.transferMode,t,function(t){!1===t.value?(e.fileloadingState="hide",e.emit(g.FILE_PROCESSING_STATE_HIDE),e.module.licenseNotValidate(t.error)):e._addFiles(t.value)},this.option.$el),this},checkState:function(){return"ready"!=this.state?(alert(o("agent.exception.notReady")),!1):1!=this.getControlDisabledState()},openFileDialogInput:function(t){this.openFileDialog()},openFileDialog:function(t){if(!this.checkState())return!1;if(this.fileloadingState="",this.option.agent,"undefined"==typeof FormData){var e=this;return this.module.openFileDialogFallback(this.option.transferMode,t,this.option.allowExtension,function(t){!1===t.value?(e.fileloadingState="hide",e.emit(g.FILE_PROCESSING_STATE_HIDE),e.module.licenseNotValidate(t.error)):e._addFiles(t.value)}),this}var e=this;return this.module.openFileDialog(this.option.transferMode,t,this.option.allowExtension,function(t){!1===t.value?(e.fileloadingState="hide",e.emit(g.FILE_PROCESSING_STATE_HIDE),e.module.licenseNotValidate(t.error)):e._addFiles(t.value)},this.option.$el),this},openFileDialogSingle:function(t){if(!this.checkState())return!1;if(this.fileloadingState="",this.option.agent,"undefined"==typeof FormData){var e=this;return this.module.openFileDialogSingleFallback(this.option.transferMode,t,this.option.allowExtension,function(t){!1===t.value?(e.fileloadingState="hide",e.emit(g.FILE_PROCESSING_STATE_HIDE),e.module.licenseNotValidate(t.error)):e._addFiles(t.value)}),this}var e=this;return this.module.openFileDialogSingle(this.option.transferMode,t,this.option.allowExtension,function(t){!1===t.value?(e.fileloadingState="hide",e.emit(g.FILE_PROCESSING_STATE_HIDE),e.module.licenseNotValidate(t.error)):e._addFiles(t.value)},this.option.$el),this},openDirectorySelectDialog:function(t,e){if(!this.checkState())return!1;if("function"==typeof t&&(e=t,t=""),0==this.option.agent){if(void 0!==e){var i={value:"",result:!1};e(i)}}else"undefined"==typeof FormData?this.module.downloadPathDialogFallback(t,e):this.module.downloadPathDialog(t,e)},execute:function(t){if(!this.checkState())return!1;"undefined"==typeof FormData?this.module.executeFallback(t,function(t){}):this.module.execute(t)},setDownloadPathValue:function(t,e){if(!this.checkState())return!1;if("function"==typeof t&&(e=t,t=""),0==this.option.agent){if(void 0!==e){var i={result:!0};e(i)}}else{this.option.downloadPath=t,v.setOption(this.option),r.setOption(this.option)}},setDownloadPath:function(t,e){if(!this.checkState())return!1;if("function"==typeof t&&(e=t,t=""),0==this.option.agent){if(void 0!==e){var i={result:!0};e(i)}}else{var n=this;this.setControlDisabledState(!0),a.setDisabledState(!0),"undefined"==typeof FormData?this.module.downloadPathDialogFallback(t,function(t){n.setControlDisabledState(!1),a.setDisabledState(!1),n.option.downloadPath=t.value,n.setOption(n.option),e(t)}):this.module.downloadPathDialog(t,function(t){n.setControlDisabledState(!1),a.setDisabledState(!1),n.option.downloadPath=t.value,n.setOption(n.option),e(t)})}},setTransferDownloadPath:function(t,e){if(!this.checkState())return!1;if("function"==typeof t&&(e=t,t=""),0==this.option.agent){if(void 0!==e){var i={result:!0};e(i)}}else{var n=this;this.setControlDisabledState(!0),a.setDisabledState(!0),"undefined"==typeof FormData?this.module.downloadPathDialogFallback(t,function(t){n.setControlDisabledState(!1),a.setDisabledState(!1),n.option.downloadPath=t.value,n.setOption(n.option),a.setManagerDownloadPath(t.value),e(t)}):this.module.downloadPathDialog(t,function(t){n.setControlDisabledState(!1),a.setDisabledState(!1),n.option.downloadPath=t.value,n.setOption(n.option),a.setManagerDownloadPath(t.value),e(t)})}},openFolderDialog:function(){return!!this.checkState()&&(0!=this.option.agent&&void this.directoryDialog())},openDownloadFolder:function(){if(!this.checkState())return!1;if(0==this.option.agent)return!1;var t=this;if(!t.option.downloadPath)return void("undefined"==typeof FormData?t.module.getDownloadPathFallback(function(e){t.option.downloadPath=e.path||"",t.openDownloadFolder()}):t.module.getDownloadPath(function(e){t.option.downloadPath=e.path||"",t.openDownloadFolder()}));this.module.openDownloadFolder(function(t){},this.option)},directoryDialog:function(){if(!this.checkState())return!1;var t=this;return"undefined"==typeof FormData?this.module.directoryDialogFallback(this.option.transferMode,function(e){!1===e.value?t.module.licenseNotValidate(e.error):t._addFiles(e.value)}):this.module.directoryDialog(this.option.transferMode,function(e){!1===e.value?t.module.licenseNotValidate(e.error):t._addFiles(e.value)},this.option.$el),this},getFolderPath:function(t,e){"undefined"==typeof FormData?this.module.getFolderPathFallback({id:t},e):this.module.getFolderPath({id:t},e)},uploadInput:function(t){this.upload()},upload:function(t){var i=this;return!!this.checkState()&&(1==_.additionalProcess?(a.prepareHtmlThumbnailUpload([],i,i.option),a.emit(g.TRANSFER_UPLOAD_THUMBNAIL),_.await(function(){_.additionalProcess=!1,a.emit(g.TRANSFER_UPLOAD_THUMBNAIL_STOP),setTimeout(function(){i._upload(null,!0)},1e3)})):(e(".irx_thumb_prog_wrapper").hide(),e(".irx_thumb_progressBar").parent().hide(),this._upload()),this)},_upload:function(t,i){var r=this;if(!this.checkState())return!1;var s={},l=!0;if(void 0===t||null==t?s=this.fileList.getUploadFiles():(l=!1,s=t),this.qqoInformation)for(var h=0;h0&&(i=!0,this._download(n))}else{var r=this.getFileById(t);r&&(i=!0,this._download([r]))}return 0==i&&this._download(this.fileList.getDownloadFiles()),this},downloadAll:function(){return!!this.checkState()&&(e(".irx_thumb_prog_wrapper").hide(),e(".irx_thumb_progressBar").parent().hide(),this.download())},downloadSelectedFiles:function(){return!!this.checkState()&&(e(".irx_thumb_prog_wrapper").hide(),e(".irx_thumb_progressBar").parent().hide(),this._download(this.fileList.getSelectedDownloadFiles()),this)},downloadAndOpen:function(){if(!this.checkState()&&!this.option.transferWindowMode)return!1;var t=this,e=this.fileList.getSelectedDownloadFiles();0==e.length&&(e=this.fileList.getDownloadFiles());var i=e[e.length-1];return i?(0==this.option.agent?s.downloadAndOpen(i,this,this.option):("compact"==this.option.skin?t.setCompactTemplate():t.option.iframeView?t.setIframeTemplate():t.option.isMobile&&t.setMobileTemplate(),a.downloadAndOpen(i,this,this.option)),this):(alert(o("controlBox.noFile")),this)},downloadAndOpenFile:function(t){if(!this.checkState())return!1;var i=this,r=this.getTotalSize();if(1==this.option.platformDepend)1==this.option.cloudPlatformMode?e.ajax({url:p.getBaseUrl()+"/api/webpage/getGroupId",data:{api_key:p.getKey()},method:"get",dataType:"html"}).done(function(l){i.option.custom||(i.option.custom={}),i.option.custom.groupId=l,e.ajax({url:p.getBaseUrl()+"/api/transfer/"+i.option.licenseGroup,data:{api_key:p.getKey(),fileSize:r},method:"get",dataType:"json"}).done(function(e){if(e.result){if(0==i.option.agent)return s.downloadAndOpen(t,i,i.option),!0;if(!i.option.downloadPath)return void("undefined"==typeof FormData?i.module.getDownloadPathFallback(function(e){i.option.downloadPath=e.path||"",i.downloadAndOpenFile(t)}):i.module.getDownloadPath(function(e){i.option.downloadPath=e.path||"",i.downloadAndOpenFile(t)}));"compact"==i.option.skin?i.setCompactTemplate():i.option.iframeView?i.setIframeTemplate():i.option.isMobile&&i.setMobileTemplate(),a.downloadAndOpen(t,i,i.option)}else if("disabled"==e.remain)alert(o("license.disabled"));else if("expired"==e.remain)alert(o("license.expired"));else if("storageLimit"==e.remain)alert(o("license.storageLimit"));else if("trafficLimit"==e.remain)alert(o("license.trafficLimit"));else{var r=n.string.humanFileSize(e.remain);alert(o("wp.overlimit",{size:r}))}})}):e.ajax({url:p.getBaseUrl()+"/api/transfer/"+i.option.licenseGroup,data:{api_key:p.getKey(),fileSize:r},method:"get",dataType:"json"}).done(function(e){if(e.result){if(0==i.option.agent)return s.downloadAndOpen(t,i,i.option),!0;if(!i.option.downloadPath)return void("undefined"==typeof FormData?i.module.getDownloadPathFallback(function(e){i.option.downloadPath=e.path||"",i.downloadAndOpenFile(t)}):i.module.getDownloadPath(function(e){i.option.downloadPath=e.path||"",i.downloadAndOpenFile(t)}));a.downloadAndOpen(t,i,i.option)}else if("disabled"==e.remain)alert(o("license.disabled"));else if("expired"==e.remain)alert(o("license.expired"));else if("storageLimit"==e.remain)alert(o("license.storageLimit"));else if("trafficLimit"==e.remain)alert(o("license.trafficLimit"));else{var r=n.string.humanFileSize(e.remain);alert(o("wp.overlimit",{size:r}))}});else{if(0==i.option.agent)return s.htmlDownload(files,i,i.option),!0;if(!i.option.downloadPath)return void("undefined"==typeof FormData?i.module.getDownloadPathFallback(function(e){i.option.downloadPath=e.path||"",i.downloadAndOpenFile(t)}):i.module.getDownloadPath(function(e){i.option.downloadPath=e.path||"",i.downloadAndOpenFile(t)}));"compact"==i.option.skin?i.setCompactTemplate():i.option.iframeView?i.setIframeTemplate():i.option.isMobile&&i.setMobileTemplate(),a.downloadAndOpen(t,this,this.option)}return this},_download:function(t){var i=this;if(!this.checkState()&&!this.option.transferWindowMode)return!1;if(0===t.length)return void alert(o("controlBox.noFile"));if(this.qqoInformation)for(var r=0;rfunction forceCloseTransferWindow(el){setTimeout(function(){if (!jQuery('.irx_transferWin_wrapper').hasClass('isClosing')){jQuery('.irx_transferWin_wrapper').remove()}},1000);}<\/script>"),e(".irx_transferWin_wrapper").appendTo(i.jQuery("body"));var o=i.jQuery(".iframeControl_"+t.replace("#",""));try{1==this.option.draggableTransferWindow&&o.find(".irx_transferWin").draggable({handle:".irx_header",stop:function(t,i){e(t.target)}})}catch(c){}var r=(i.innerHeight-395)/2+"px",s=(i.innerWidth-500)/2+"px",l="0px",h="0px";if("default"!=this.option.iframeViewTop&&(r=this.option.iframeViewTop),"default"!=this.option.iframeViewLeft&&(s=this.option.iframeViewLeft),"default"!=this.option.iframeViewMarginLeft&&(l=this.option.iframeViewMarginLeft),"default"!=this.option.iframeViewMarginTop&&(h=this.option.iframeViewMarginTop),this.option.transferWindowMode){try{1==this.option.draggableTransferWindow&&i.jQuery(".irx_transferWin").draggable({handle:".irx_header",stop:function(t,i){e(t.target)}})}catch(c){}i.jQuery(".irx_transferWin_wrapper").find(".irx_filetree").html(this.option.$el.find(".irx_filetree").html()),i.jQuery(".irx_transferWin").css({top:r,left:s,"margin-left":l,"margin-top":h})}else o.find(".irx_filetree").html(this.option.$el.find(".irx_filetree").html()),o.find(".irx_transferWin").css({top:r,left:s,"margin-left":l,"margin-top":h})}else e.fn.center=function(t){return t=t?this.parent():window,(e(t).height()-this.outerHeight())/2+e(t).scrollTop()<0?this.css({top:"0px"}):this.css({top:(e(t).height()-this.outerHeight())/2+e(t).scrollTop()+"px"}),this},e(".irx_transferWin_wrapper").find(".irx_transferWin").center(!1),1==this.option.draggableTransferWindow&&e(".irx_transferWin_wrapper").find(".irx_transferWin").draggable({handle:".irx_header",stop:function(t,i){e(t.target)}}),this.option.transferWindowMode&&e(".irx_transferWin_wrapper").find(".irx_transferWin").css({top:"0px",left:"0px","margin-top":"0px","margin-left":"0px"})},setMobileTemplate:function(){a.views.initMobile()},setEncodingTemplate:function(t){var e="",i=0;t.status&&(e=t.status),t.percentage&&(i=t.percentage),a.views.initEncoding(this.option.isMobile,i,e)},setIframeTemplate:function(){if(a.views.initView(),e(".irx_transferWin_wrapper").find(".irx_close").attr("onclick","forceCloseTransferWindow(this)"),this.option.iframeView){var t=this.option.el,i=null;e(".irx_transferWin_wrapper").addClass("iframeControl_"+t.replace("#","")),i="parent"==this.option.iframeViewLocation?parent:"top"==this.option.iframeViewLocation?top:parent;var n=this.option.iframeViewCssUrl;""!=n&&i.jQuery("head").append(n);i.jQuery("head").append("