diff --git a/src/main/java/kcc/kccadr/textsense/service/TextSenseService.java b/src/main/java/kcc/kccadr/textsense/service/TextSenseService.java index 4a1a85d0..80b162e4 100644 --- a/src/main/java/kcc/kccadr/textsense/service/TextSenseService.java +++ b/src/main/java/kcc/kccadr/textsense/service/TextSenseService.java @@ -16,10 +16,17 @@ public interface TextSenseService { //TextSense OCR 상세내용 불러오기 public TextSenseVO selectTextSenseDetail(TextSenseVO textSenseVO) throws Exception; + //TextSense OCR 상세내용 불러오기 팝업 + public TextSenseVO selectTextSenseDetailPop(TextSenseVO textSenseVO) throws Exception; + //TextSense Callback 데이터 내용 업데이트 해주기 public void updateTextSenseCallbackData(TextSenseVO textSenseVO) throws Exception; //TextSense Status Update public void updateTextSenseStatus(TextSenseVO textSenseVO) throws Exception; + public void updateTextSenseModify(TextSenseVO textSenseVO) throws Exception; + + public void deleteTextSense(TextSenseVO textSenseVO) throws Exception; + } \ No newline at end of file diff --git a/src/main/java/kcc/kccadr/textsense/service/TextSenseVO.java b/src/main/java/kcc/kccadr/textsense/service/TextSenseVO.java index 578ed6cf..a8c3a699 100644 --- a/src/main/java/kcc/kccadr/textsense/service/TextSenseVO.java +++ b/src/main/java/kcc/kccadr/textsense/service/TextSenseVO.java @@ -38,6 +38,16 @@ public class TextSenseVO extends ComDefaultVO implements Serializable{ private String frstRegisterId; private String frstRegistPnttm; + private String fileContents; + private String fileContentsModify; + + private String refresh; + + private String fileName; + + private String lastUpdusrId; + private String lastUpdtPnttm; + public String getApiUrl() { return apiUrl; @@ -117,7 +127,6 @@ public class TextSenseVO extends ComDefaultVO implements Serializable{ public void setStatus(String status) { this.status = status; } - public String getInputFileLength() { return inputFileLength; } @@ -142,7 +151,6 @@ public class TextSenseVO extends ComDefaultVO implements Serializable{ public void setQueuedat(String queuedat) { this.queuedat = queuedat; } - public String getStartedat() { return startedat; } @@ -197,5 +205,41 @@ public class TextSenseVO extends ComDefaultVO implements Serializable{ public void setFrstRegistPnttm(String frstRegistPnttm) { this.frstRegistPnttm = frstRegistPnttm; } + public String getFileContents() { + return fileContents; + } + public void setFileContents(String fileContents) { + this.fileContents = fileContents; + } + public String getFileContentsModify() { + return fileContentsModify; + } + public void setFileContentsModify(String fileContentsModify) { + this.fileContentsModify = fileContentsModify; + } + public String getRefresh() { + return refresh; + } + public void setRefresh(String refresh) { + this.refresh = refresh; + } + public String getFileName() { + return fileName; + } + public void setFileName(String fileName) { + this.fileName = fileName; + } + public String getLastUpdusrId() { + return lastUpdusrId; + } + public void setLastUpdusrId(String lastUpdusrId) { + this.lastUpdusrId = lastUpdusrId; + } + public String getLastUpdtPnttm() { + return lastUpdtPnttm; + } + public void setLastUpdtPnttm(String lastUpdtPnttm) { + this.lastUpdtPnttm = lastUpdtPnttm; + } } diff --git a/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseDAO.java b/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseDAO.java index 66aa5da7..cf16b59b 100644 --- a/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseDAO.java +++ b/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseDAO.java @@ -74,6 +74,19 @@ public class TextSenseDAO extends EgovAbstractDAO{ return result; } + public TextSenseVO selectTextSenseDetailPop(TextSenseVO textSenseVO) throws Exception{ + TextSenseVO result = new TextSenseVO(); + + try { + + result = (TextSenseVO) select("textSenseDAO.selectTextSenseDetailPop", textSenseVO); + + } catch (Exception e) { + } + + return result; + } + //TextSense Callback 데이터 내용 업데이트 해주기 public void updateTextSenseCallbackData(TextSenseVO textSenseVO) throws Exception{ @@ -98,4 +111,24 @@ public class TextSenseDAO extends EgovAbstractDAO{ } } + public void updateTextSenseModify(TextSenseVO textSenseVO) throws Exception{ + try { + + update("textSenseDAO.updateTextSenseModify", textSenseVO); + + } catch (Exception e) { + System.out.println("updateTextSenseModify Service DAO Error !!! " + e); + } + } + + public void deleteTextSense(TextSenseVO textSenseVO) throws Exception{ + try { + + update("textSenseDAO.deleteTextSense", textSenseVO); + + } catch (Exception e) { + System.out.println("deleteTextSense Service DAO Error !!! " + e); + } + } + } diff --git a/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseServiceImpl.java b/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseServiceImpl.java index 873f0116..40ef5d05 100644 --- a/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseServiceImpl.java +++ b/src/main/java/kcc/kccadr/textsense/service/impl/TextSenseServiceImpl.java @@ -84,6 +84,22 @@ public class TextSenseServiceImpl implements TextSenseService{ return result; } + //TextSense OCR 상세내용 불러오기 팝업 + @Override + public TextSenseVO selectTextSenseDetailPop(TextSenseVO textSenseVO) throws Exception{ + TextSenseVO result = new TextSenseVO(); + + try { + + result = textSenseDAO.selectTextSenseDetailPop(textSenseVO); + + } catch (Exception e) { + System.out.println("selectTextSenseDetail Service Impl Error !!! " + e); + } + + return result; + } + //TextSense Callback 데이터 내용 업데이트 해주기 @Override public void updateTextSenseCallbackData(TextSenseVO textSenseVO) throws Exception{ @@ -112,4 +128,27 @@ public class TextSenseServiceImpl implements TextSenseService{ } + @Override + public void updateTextSenseModify(TextSenseVO textSenseVO) throws Exception{ + try { + + textSenseDAO.updateTextSenseModify(textSenseVO); + + } catch (Exception e) { + System.out.println("updateTextSenseModify Service Impl Error !!! " + e); + } + } + + @Override + public void deleteTextSense(TextSenseVO textSenseVO) throws Exception{ + try { + + textSenseDAO.deleteTextSense(textSenseVO); + + } catch (Exception e) { + System.out.println("deleteTextSense Service Impl Error !!! " + e); + } + } + + } diff --git a/src/main/java/kcc/kccadr/textsense/web/TextSenseController.java b/src/main/java/kcc/kccadr/textsense/web/TextSenseController.java index ece0382f..4a45c92f 100644 --- a/src/main/java/kcc/kccadr/textsense/web/TextSenseController.java +++ b/src/main/java/kcc/kccadr/textsense/web/TextSenseController.java @@ -26,6 +26,7 @@ import kcc.com.cmm.LoginVO; import kcc.com.cmm.service.EgovFileMngService; import kcc.com.cmm.service.EgovFileMngUtil; import kcc.com.cmm.service.FileVO; +import kcc.com.cmm.util.StringUtil; import kcc.kccadr.textsense.service.TextSenseService; import kcc.kccadr.textsense.service.TextSenseVO; import kcc.let.utl.fcc.service.EgovStringUtil; @@ -132,6 +133,33 @@ public class TextSenseController { return "kccadr/textSense/EgovTextSenseDetail"; } + @RequestMapping(value="/kccadr/textsence/popup/modifyTextSenseResultPop.do") + public String modifyTextSenseResultPop(@ModelAttribute("searchVO")TextSenseVO textSenseVO, ModelMap model) throws Exception{ + + LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser(); + + if(user == null) { + + return "redirect:/uat/uia/EgovLoginUsr.do"; + + } + + textSenseVO.setFrstRegisterId(user.getId()); + TextSenseVO resultVO = textSenseService.selectTextSenseDetailPop(textSenseVO); + + if(StringUtil.isEmpty(resultVO.getFileContentsModify())) { + resultVO.setFileContentsModify(resultVO.getFileContents()); + } + if("Y".equals(textSenseVO.getRefresh())) { + resultVO.setFileContentsModify(resultVO.getFileContents()); + } + + model.addAttribute("textSenseVO", resultVO); + + return "kccadr/textSense/pop/EgovTextSenseDetailPop"; + } + + /* * TextSense OCR API 요청처리해주기 @@ -385,4 +413,66 @@ public class TextSenseController { return modelAndView; } + @SuppressWarnings("unused") + @RequestMapping(value="/kccadr/textsence/textSenseModifyAjax.do") + public ModelAndView textSenseModifyAjax(TextSenseVO textSenseVO) throws Exception{ + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser(); + + textSenseVO.setLastUpdusrId(user.getId()); + + if(user == null) { + modelAndView.addObject("result", "FAIL"); + modelAndView.addObject("message", "다시 로그인 해주세요."); + return modelAndView; + + } + try { + textSenseService.updateTextSenseModify(textSenseVO); + + modelAndView.addObject("result", "SUCCESS"); + modelAndView.addObject("message", "저장되었습니다."); + } catch (Exception e) { + modelAndView.addObject("result", "FAIL"); + modelAndView.addObject("message", "저장에 실패했습니다."); + } + + return modelAndView; + + } + + @SuppressWarnings("unused") + @RequestMapping(value="/kccadr/textsence/textSenseDeleteAjax.do") + public ModelAndView textSenseDelete(TextSenseVO textSenseVO) throws Exception{ + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser(); + + textSenseVO.setLastUpdusrId(user.getId()); + + if(user == null) { + modelAndView.addObject("result", "FAIL"); + modelAndView.addObject("message", "다시 로그인 해주세요."); + return modelAndView; + + } + try { + textSenseService.deleteTextSense(textSenseVO); + + modelAndView.addObject("result", "SUCCESS"); + modelAndView.addObject("message", "삭제되었습니다."); + } catch (Exception e) { + modelAndView.addObject("result", "FAIL"); + modelAndView.addObject("message", "삭제에 실패했습니다."); + } + + return modelAndView; + + } + } diff --git a/src/main/java/kcc/kccadr/xxx/service/XxxService.java b/src/main/java/kcc/kccadr/xxx/service/XxxService.java index 8b9bcf68..aa4a3a2c 100644 --- a/src/main/java/kcc/kccadr/xxx/service/XxxService.java +++ b/src/main/java/kcc/kccadr/xxx/service/XxxService.java @@ -2,6 +2,8 @@ package kcc.kccadr.xxx.service; import java.util.List; +import kcc.kccadr.adjPgrMgr.cmm.service.PgrCmmVO; + /** * XXX 관리를 위한 서비스 인터페이스 클래스 * @author 여현준 @@ -37,4 +39,10 @@ public interface XxxService { // XXX 삭제 (update useYn='N'처리) public void deleteXxx2(XxxVO xxxVO) throws Exception; + + public void selectPgrCmm1() throws Exception; + public void selectPgrCmm2() throws Exception; + public void selectPgrCmm3() throws Exception; + public void selectPgrCmm4() throws Exception; + public void selectPgrCmm5() throws Exception; } diff --git a/src/main/java/kcc/kccadr/xxx/service/impl/XxxDAO.java b/src/main/java/kcc/kccadr/xxx/service/impl/XxxDAO.java index ba6b3ed7..338723b7 100644 --- a/src/main/java/kcc/kccadr/xxx/service/impl/XxxDAO.java +++ b/src/main/java/kcc/kccadr/xxx/service/impl/XxxDAO.java @@ -5,6 +5,7 @@ import java.util.List; import org.springframework.stereotype.Repository; import egovframework.rte.psl.dataaccess.EgovAbstractDAO; +import kcc.kccadr.adjPgrMgr.cmm.service.PgrCmmVO; import kcc.kccadr.xxx.service.XxxVO; /** @@ -56,4 +57,34 @@ public class XxxDAO extends EgovAbstractDAO { public void deleteXxx2(XxxVO xxxVO) throws Exception { update("XxxDAO.deleteXxx2", xxxVO); } + + public void selectPgrCmm1() throws Exception{ + + select("xxxDAO.selectPgrCmm1"); + + } + + public void selectPgrCmm2() throws Exception{ + + select("xxxDAO.selectPgrCmm2"); + + } + + public void selectPgrCmm3() throws Exception{ + + select("xxxDAO.selectPgrCmm3"); + + } + + public void selectPgrCmm4() throws Exception{ + + select("xxxDAO.selectPgrCmm4"); + + } + + public void selectPgrCmm5() throws Exception{ + + select("xxxDAO.selectPgrCmm5"); + + } } diff --git a/src/main/java/kcc/kccadr/xxx/service/impl/XxxServiceImpl.java b/src/main/java/kcc/kccadr/xxx/service/impl/XxxServiceImpl.java index 1f10abc3..2db2a2d8 100644 --- a/src/main/java/kcc/kccadr/xxx/service/impl/XxxServiceImpl.java +++ b/src/main/java/kcc/kccadr/xxx/service/impl/XxxServiceImpl.java @@ -10,8 +10,11 @@ import org.springframework.stereotype.Service; import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; import egovframework.rte.fdl.idgnr.EgovIdGnrService; +import kcc.com.cmm.util.StringUtil; +import kcc.kccadr.adjPgrMgr.cmm.service.PgrCmmVO; import kcc.kccadr.xxx.service.XxxService; import kcc.kccadr.xxx.service.XxxVO; +import kcc.let.utl.fcc.service.EgovCryptoUtil; /** * 평가정보 관리를 위한 서비스 구현 클래스 @@ -35,8 +38,7 @@ public class XxxServiceImpl extends EgovAbstractServiceImpl implements XxxServi // XXX DAO @Resource(name = "XxxDAO") private XxxDAO xxxDAO; - - + /** * 고유ID 설정 추가 * - 설정파일경로 : /resources/egovframework/spring/com/context-idgen.xml @@ -78,4 +80,20 @@ public class XxxServiceImpl extends EgovAbstractServiceImpl implements XxxServi public void deleteXxx2(XxxVO xxxVO) throws Exception { xxxDAO.deleteXxx2(xxxVO); } + + public void selectPgrCmm1() throws Exception{ + xxxDAO.selectPgrCmm1(); + } + public void selectPgrCmm2() throws Exception{ + xxxDAO.selectPgrCmm2(); + } + public void selectPgrCmm3() throws Exception{ + xxxDAO.selectPgrCmm3(); + } + public void selectPgrCmm4() throws Exception{ + xxxDAO.selectPgrCmm4(); + } + public void selectPgrCmm5() throws Exception{ + xxxDAO.selectPgrCmm5(); + } } diff --git a/src/main/java/kcc/kccadr/xxx/web/XxxController.java b/src/main/java/kcc/kccadr/xxx/web/XxxController.java index bc1ae673..b14fa3af 100644 --- a/src/main/java/kcc/kccadr/xxx/web/XxxController.java +++ b/src/main/java/kcc/kccadr/xxx/web/XxxController.java @@ -1,8 +1,11 @@ package kcc.kccadr.xxx.web; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.concurrent.TimeUnit; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -22,7 +25,6 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import kcc.com.cmm.CmmUtil; -import kcc.com.cmm.ComDefaultCodeVO; import kcc.com.cmm.EgovMessageSource; import kcc.com.cmm.LoginVO; import kcc.com.cmm.service.EgovCmmUseService; @@ -357,4 +359,114 @@ public class XxxController { return "/kccadr/xxx/xxxLeaderMainPage"; } + + @RequestMapping("/kccadr/xxx/DBSpeedTest1.do") + public String DBSpeedTest1() throws Exception { + + String startDate = dateFormat(); + //db 쿼리 + xxxService.selectPgrCmm1(); + + String endDate = dateFormat(); + + sysOut(startDate, endDate); + + return null; + } + + @RequestMapping("/kccadr/xxx/DBSpeedTest2.do") + public String DBSpeedTest2() throws Exception { + + String startDate = dateFormat(); + //db 쿼리 + xxxService.selectPgrCmm1(); + xxxService.selectPgrCmm2(); + + String endDate = dateFormat(); + + sysOut(startDate, endDate); + + return null; + } + + @RequestMapping("/kccadr/xxx/DBSpeedTest3.do") + public String DBSpeedTest3() throws Exception { + + String startDate = dateFormat(); + //db 쿼리 + xxxService.selectPgrCmm1(); + xxxService.selectPgrCmm2(); + xxxService.selectPgrCmm3(); + + String endDate = dateFormat(); + + sysOut(startDate, endDate); + + return null; + } + + @RequestMapping("/kccadr/xxx/DBSpeedTest4.do") + public String DBSpeedTest4() throws Exception { + + String startDate = dateFormat(); + //db 쿼리 + xxxService.selectPgrCmm1(); + xxxService.selectPgrCmm2(); + xxxService.selectPgrCmm3(); + xxxService.selectPgrCmm4(); + + + String endDate = dateFormat(); + + sysOut(startDate, endDate); + + return null; + } + + @RequestMapping("/kccadr/xxx/DBSpeedTest5.do") + public String DBSpeedTest5() throws Exception { + + String startDate = dateFormat(); + //db 쿼리 + xxxService.selectPgrCmm1(); + xxxService.selectPgrCmm2(); + xxxService.selectPgrCmm3(); + xxxService.selectPgrCmm4(); + xxxService.selectPgrCmm5(); + + String endDate = dateFormat(); + + sysOut(startDate, endDate); + + return null; + } + + + + + + + + + + + private String dateFormat() { + Date date = new Date(); + SimpleDateFormat fDate = new SimpleDateFormat("ss.SSS"); + return fDate.format(date); + } + + private void sysOut(String startDate, String endDate) { + + String diff = String.valueOf((Float.valueOf(endDate) - Float.valueOf(startDate))).substring(0, 5); + + System.out.println("==============================================DBSpeedTest==========================================="); + System.out.println("===================================================================================================="); + System.out.println("============================== start :: " + startDate + " end :: "+ endDate + " ============================="); + System.out.println("============================= timediff :: "+ diff +" ============================="); + System.out.println("===================================================================================================="); + System.out.println("===================================================================================================="); + + } + } diff --git a/src/main/resources/egovframework/sqlmap/kccadr/Xxx_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/kccadr/Xxx_SQL_Mysql.xml index e65c3f3d..5732e1ad 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/Xxx_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/Xxx_SQL_Mysql.xml @@ -73,5 +73,1626 @@ WHERE 1=1 AND BBS_ID = #bbsId# + + + + + + + + + + + + diff --git a/src/main/resources/egovframework/sqlmap/kccadr/textsense/TextSense_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/kccadr/textsense/TextSense_SQL_Mysql.xml index 5a160ba6..08de282a 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/textsense/TextSense_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/textsense/TextSense_SQL_Mysql.xml @@ -57,6 +57,7 @@ FROM ADR_TEXTSENSE_OCR A WHERE 1=1 AND A.FRST_REGISTER_ID = #frstRegisterId# + AND A.USE_YN = 'Y' TASK_NAME LIKE CONCAT('%' , #searchKeyword#, '%') @@ -102,8 +103,11 @@ A.CALLBACK_URI AS callbackUri, A.EXTERNAL_ID AS externalId, A.FRST_REGISTER_ID AS frstRegisterId, - DATE_FORMAT(A.FRST_REGIST_PNTTM,'%Y-%m-%d %T') AS frstRegistPnttm + DATE_FORMAT(A.FRST_REGIST_PNTTM,'%Y-%m-%d %T') AS frstRegistPnttm, + B.filecontents AS fileContents FROM ADR_TEXTSENSE_OCR A + LEFT JOIN ADR_TEXTSENSE_OCR_TEXTDATA B + ON B.filename = LTRIM(A.OUTPUT_URI, 'file:/home/kcc_adr_ocr_dir/') WHERE 1=1 AND A.FRST_REGISTER_ID = #frstRegisterId# AND A.ID = #id# @@ -140,4 +144,55 @@ + + + + + UPDATE adr_textsense_ocr_textdata + SET filecontents_modify = #fileContentsModify#, + last_updusr_id = #lastUpdusrId#, + last_updt_pnttm = NOW() + WHERE filename = #fileName# + + + + + + UPDATE adr_textsense_ocr + SET use_yn = 'N' + WHERE id = #id# + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/kccadr/textSense/EgovTextSenseDetail.jsp b/src/main/webapp/WEB-INF/jsp/kccadr/textSense/EgovTextSenseDetail.jsp index f01e5df6..b8cbbf9d 100644 --- a/src/main/webapp/WEB-INF/jsp/kccadr/textSense/EgovTextSenseDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/kccadr/textSense/EgovTextSenseDetail.jsp @@ -19,6 +19,12 @@ <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="double-submit" uri="http://www.egovframe.go.kr/tags/double-submit/jsp" %> <%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + +<% pageContext.setAttribute("CRLF", "\r\n"); %> +<% pageContext.setAttribute("LF", "\n"); %> +<% pageContext.setAttribute("TAB", "\t"); %> +<% pageContext.setAttribute("SP", " "); %> + @@ -28,13 +34,48 @@ - + +
+ +
+
@@ -53,7 +99,7 @@ function fnListPage(){
-

관리자수정

+

OCR 상세

  • @@ -100,7 +146,7 @@ function fnListPage(){ 처리 결과 - test +
    @@ -231,9 +277,10 @@ function fnListPage(){
-
- -
+
+ + +