diff --git a/src/main/java/kcc/kccadr/adjReqMgrOff/service/AdjReqMgrOffLineService.java b/src/main/java/kcc/kccadr/adjReqMgrOff/service/AdjReqMgrOffLineService.java index a62c6d10..f67d75b9 100644 --- a/src/main/java/kcc/kccadr/adjReqMgrOff/service/AdjReqMgrOffLineService.java +++ b/src/main/java/kcc/kccadr/adjReqMgrOff/service/AdjReqMgrOffLineService.java @@ -25,6 +25,8 @@ public interface AdjReqMgrOffLineService { Integer adjReqMgrOffListCount(AdjReqMgrOffLineVO adjReqMgrOffLineVO) throws Exception; List adjReqMgrOffList(AdjReqMgrOffLineVO adjReqMgrOffLineVO) throws Exception; + + List adjReqMgrSttstList(AdjReqMgrSttstVO adjReqMgrSttstVO) throws Exception; List selectAdjstReqMgrOffPersonList(AdjReqMgrOffLineVO adjReqMgrOffLineVO) throws Exception; diff --git a/src/main/java/kcc/kccadr/adjReqMgrOff/service/AdjReqMgrSttstVO.java b/src/main/java/kcc/kccadr/adjReqMgrOff/service/AdjReqMgrSttstVO.java new file mode 100644 index 00000000..bca71d54 --- /dev/null +++ b/src/main/java/kcc/kccadr/adjReqMgrOff/service/AdjReqMgrSttstVO.java @@ -0,0 +1,201 @@ +package kcc.kccadr.adjReqMgrOff.service; + +import java.io.Serializable; + +import kcc.com.cmm.ComDefaultVO; + +public class AdjReqMgrSttstVO extends ComDefaultVO implements Serializable { + // 검색조건 + private String srchYear = ""; // 검색 년도 + private String srchType1 = ""; // 검색 조건1 월/반기/분기 + private String srchType2 = ""; // 검색 조건2 1~12월/상,하반기/1분기~4분기 + + + // 조정위원 + private String memSeq = ""; // 조정위원번호 + private String memNm = ""; // 조정위원이름 + + private String blank = ""; // 조정위원이름 + + //분야별 + private String cctySum = ""; // 전체 + private String ccty01 = ""; // 어문저작물 + private String ccty02 = ""; // 음악저작물 + private String ccty03 = ""; // 연극저작물 + private String ccty04 = ""; // 도형저작물 + private String ccty05 = ""; // 영상저작물 + private String ccty06 = ""; // 사진저작물 + private String ccty07 = ""; // 미술저작물 + private String ccty08 = ""; // 편집저작물 + private String ccty09 = ""; // 저작인접물 + private String ccty10 = ""; // 데이터베이스 + private String ccty11 = ""; // 건축저작물 + private String ccty12 = ""; // 컴퓨터프로그램 + private String ccty13 = ""; // 저작인격권 + + //사용상태별 + private String statCdSum = ""; // 전체 + private String statCd3070 = ""; // 불성립 + private String statCd3050 = ""; // 취하종결 + private String statCd3060 = ""; // 직권조정 + private String statCd3030 = ""; // 조정권고 + private String statCd4000 = ""; // 성립 + + public String getSrchYear() { + return srchYear; + } + public void setSrchYear(String srchYear) { + this.srchYear = srchYear; + } + public String getSrchType1() { + return srchType1; + } + public void setSrchType1(String srchType1) { + this.srchType1 = srchType1; + } + public String getSrchType2() { + return srchType2; + } + public void setSrchType2(String srchType2) { + this.srchType2 = srchType2; + } + public String getMemSeq() { + return memSeq; + } + public void setMemSeq(String memSeq) { + this.memSeq = memSeq; + } + public String getCctySum() { + return cctySum; + } + public void setCctySum(String cctySum) { + this.cctySum = cctySum; + } + public String getCcty01() { + return ccty01; + } + public void setCcty01(String ccty01) { + this.ccty01 = ccty01; + } + public String getCcty02() { + return ccty02; + } + public void setCcty02(String ccty02) { + this.ccty02 = ccty02; + } + public String getCcty03() { + return ccty03; + } + public void setCcty03(String ccty03) { + this.ccty03 = ccty03; + } + public String getCcty04() { + return ccty04; + } + public void setCcty04(String ccty04) { + this.ccty04 = ccty04; + } + public String getCcty05() { + return ccty05; + } + public void setCcty05(String ccty05) { + this.ccty05 = ccty05; + } + public String getCcty06() { + return ccty06; + } + public void setCcty06(String ccty06) { + this.ccty06 = ccty06; + } + public String getCcty07() { + return ccty07; + } + public void setCcty07(String ccty07) { + this.ccty07 = ccty07; + } + public String getCcty08() { + return ccty08; + } + public void setCcty08(String ccty08) { + this.ccty08 = ccty08; + } + public String getCcty09() { + return ccty09; + } + public void setCcty09(String ccty09) { + this.ccty09 = ccty09; + } + public String getCcty10() { + return ccty10; + } + public void setCcty10(String ccty10) { + this.ccty10 = ccty10; + } + public String getCcty11() { + return ccty11; + } + public void setCcty11(String ccty11) { + this.ccty11 = ccty11; + } + public String getCcty12() { + return ccty12; + } + public void setCcty12(String ccty12) { + this.ccty12 = ccty12; + } + public String getCcty13() { + return ccty13; + } + public void setCcty13(String ccty13) { + this.ccty13 = ccty13; + } + public String getStatCdSum() { + return statCdSum; + } + public void setStatCdSum(String statCdSum) { + this.statCdSum = statCdSum; + } + public String getStatCd3070() { + return statCd3070; + } + public void setStatCd3070(String statCd3070) { + this.statCd3070 = statCd3070; + } + public String getStatCd3050() { + return statCd3050; + } + public void setStatCd3050(String statCd3050) { + this.statCd3050 = statCd3050; + } + public String getStatCd3060() { + return statCd3060; + } + public void setStatCd3060(String statCd3060) { + this.statCd3060 = statCd3060; + } + public String getStatCd3030() { + return statCd3030; + } + public void setStatCd3030(String statCd3030) { + this.statCd3030 = statCd3030; + } + public String getMemNm() { + return memNm; + } + public void setMemNm(String memNm) { + this.memNm = memNm; + } + public String getStatCd4000() { + return statCd4000; + } + public void setStatCd4000(String statCd4000) { + this.statCd4000 = statCd4000; + } + public String getBlank() { + return blank; + } + public void setBlank(String blank) { + this.blank = blank; + } + +} diff --git a/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineDAO.java b/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineDAO.java index dbf15f8e..eaf9cd29 100644 --- a/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineDAO.java +++ b/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineDAO.java @@ -6,6 +6,7 @@ import org.springframework.stereotype.Repository; import egovframework.rte.psl.dataaccess.EgovAbstractDAO; import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrOffLineVO; +import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrSttstVO; @Repository("AdjReqMgrOffLineDAO") public class AdjReqMgrOffLineDAO extends EgovAbstractDAO { @@ -73,6 +74,9 @@ public class AdjReqMgrOffLineDAO extends EgovAbstractDAO { return (List) list("AdjReqMgrOffLineDAO.adjReqMgrOffList", adjReqMgrOffLineVO); } + public List adjReqMgrSttstList(AdjReqMgrSttstVO adjReqMgrSttstVO) throws Exception { + return (List) list("AdjReqMgrOffLineDAO.adjReqMgrSttstList", adjReqMgrSttstVO); + } public List selectAdjstReqMgrOffPersonList(AdjReqMgrOffLineVO adjReqMgrOffLineVO) throws Exception { return (List) list("adjReqMgrOffLineDAO.selectAdjstReqMgrOffPersonList", adjReqMgrOffLineVO); diff --git a/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineServiceImpl.java b/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineServiceImpl.java index cdeadd56..2161f136 100644 --- a/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineServiceImpl.java +++ b/src/main/java/kcc/kccadr/adjReqMgrOff/service/impl/AdjReqMgrOffLineServiceImpl.java @@ -13,6 +13,7 @@ import kcc.com.cmm.service.CmmnDetailCode; import kcc.com.utl.user.service.CheckAdrProcessUtil; import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrOffLineService; import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrOffLineVO; +import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrSttstVO; import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO; import kcc.kccadr.adjreqmgr.service.impl.AdjReqMgrDAO; import kcc.kccadr.adjst.service.AdjstReqVO; @@ -723,6 +724,11 @@ public String insertAdjReqMgrRpplReq(AdjReqMgrOffLineVO adjReqMgrOffLineVO) thro return adjReqMgrOffLineDAO.adjReqMgrOffList(adjReqMgrOffLineVO); } + @Override + public List adjReqMgrSttstList(AdjReqMgrSttstVO adjReqMgrSttstVO) throws Exception { + return adjReqMgrOffLineDAO.adjReqMgrSttstList(adjReqMgrSttstVO); + } + @Override public List selectAdjstReqMgrOffPersonList(AdjReqMgrOffLineVO adjReqMgrOffLineVO) throws Exception { return adjReqMgrOffLineDAO.selectAdjstReqMgrOffPersonList(adjReqMgrOffLineVO); diff --git a/src/main/java/kcc/kccadr/advcSttst/web/AdvcSttstController.java b/src/main/java/kcc/kccadr/advcSttst/web/AdvcSttstController.java index 32043448..8895cec3 100644 --- a/src/main/java/kcc/kccadr/advcSttst/web/AdvcSttstController.java +++ b/src/main/java/kcc/kccadr/advcSttst/web/AdvcSttstController.java @@ -6,6 +6,7 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Properties; @@ -15,6 +16,7 @@ import javax.servlet.http.HttpServletResponse; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.ModelAttribute; @@ -35,10 +37,12 @@ import kcc.com.cmm.service.EgovCmmUseService; import kcc.com.cmm.service.EgovFileMngService; import kcc.com.cmm.service.EgovFileMngUtil; import kcc.com.cmm.service.FileVO; +import kcc.com.cmm.spring.data.util.ExcelUtil; import kcc.com.cmm.util.StringUtil; import kcc.com.utl.fcc.service.EgovStringUtil; import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrOffLineService; import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrOffLineVO; +import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrSttstVO; import kcc.let.sym.mnu.mpm.service.MenuManageJTreeVO; import kcc.let.utl.fcc.service.EgovCryptoUtil; @@ -429,7 +433,10 @@ public class AdvcSttstController { * date : 2021.09.111 */ @RequestMapping("/kccadr/advcSttst/memSttstList.do") - public String memSttstList(@ModelAttribute("adjReqMgrOffLineVO") AdjReqMgrOffLineVO adjReqMgrOffLineVO, ModelMap model) throws Exception { + public String memSttstList( + @ModelAttribute("adjReqMgrSttstVO") AdjReqMgrSttstVO adjReqMgrSttstVO + , ModelMap model + ) throws Exception { // 제출 시 // adr_mgr_master 테이블 stat_cd 제출 완료(ADR_REQ_COMP, 101010)로, lastupdtPnttm, lastupdtId 업데이트 @@ -438,6 +445,7 @@ public class AdvcSttstController { LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + /* if(adjReqMgrOffLineVO.getPageUnit() != 10) { adjReqMgrOffLineVO.setPageUnit(adjReqMgrOffLineVO.getPageUnit()); } @@ -450,7 +458,7 @@ public class AdvcSttstController { adjReqMgrOffLineVO.setSearchKeyword(egovCryptoUtil.encrypt(adjReqMgrOffLineVO.getSearchKeyword())); } - /** paging */ + // paging PaginationInfo paginationInfo = new PaginationInfo(); paginationInfo.setCurrentPageNo(adjReqMgrOffLineVO.getPageIndex()); paginationInfo.setRecordCountPerPage(adjReqMgrOffLineVO.getPageUnit()); @@ -461,19 +469,87 @@ public class AdvcSttstController { adjReqMgrOffLineVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); paginationInfo.setTotalRecordCount(adjReqMgrOffLineService.adjReqMgrOffListCount(adjReqMgrOffLineVO)); model.addAttribute("paginationInfo", paginationInfo); - List list = adjReqMgrOffLineService.adjReqMgrOffList(adjReqMgrOffLineVO); + */ + List list = adjReqMgrOffLineService.adjReqMgrSttstList(adjReqMgrSttstVO); // 복호화 - decryptInfomation(list, null); + //decryptInfomation(list, null); + decryptInfomation4Sttst(list, null); model.addAttribute("list", list); + /* if(("3".equals(adjReqMgrOffLineVO.getSearchCondition()) || "4".equals(adjReqMgrOffLineVO.getSearchCondition())) && StringUtils.isNotBlank(adjReqMgrOffLineVO.getSearchKeyword())){ adjReqMgrOffLineVO.setSearchKeyword(egovCryptoUtil.decrypt(adjReqMgrOffLineVO.getSearchKeyword())); } + */ return "kccadr/advcSttst/memSttstList"; } + /** + * 조정진행목록 목록 Excel + * + * @param apmVO + * @param model + * @return + * @throws Exception + */ + @SuppressWarnings("rawtypes") + @RequestMapping("/kccadr/advcSttst/excel.do") + public ModelAndView excel( + @ModelAttribute("adjReqMgrSttstVO") AdjReqMgrSttstVO adjReqMgrSttstVO + , ModelMap model + ) throws Exception { + + List list = adjReqMgrOffLineService.adjReqMgrSttstList(adjReqMgrSttstVO); + // 복호화 + //decryptInfomation(list, null); + decryptInfomation4Sttst(list, null); + + //cmmVO.setExcelYn("Y"); + //List list = cmmService.selectPgrCmmList(cmmVO); + + + // 세팅값 + String title = "조정위원 사건 관리 통계"; + int[] width = { + 4000, 4000, 4000, 4000, 4000 + , 4000, 4000, 4000, 4000, 4000 + , 4000, 4000, 4000, 4000, 4000 + , 4000, 4000, 4000, 4000, 4000 + , 4000, 4000, 4000, 4000, 4000 + , 4000, 4000 + }; // 너비 + String[] header = { + "이름" + , "사용상태별(건수)" + , "전체", "성립", "불성립", "취하종결", "직권조정", "조정권고", "반려" + , "분야별(건수)" + , "전체", "어문저작물", "음악저작물", "연극저작물", "미술저작물", "건축저작물", "사진저작물" + , "cctySum", "도형저작물", "컴퓨터프로그램", "편집저작물", "데이터베이스", "저작인격권", "저작인접권" + }; // 헤더에 들어갈 이름 + String[] order = { + "MemNm" + , "Blank" + , "StatCdSum", "StatCd4000", "StatCd3070", "StatCd3050", "StatCd3060", "StatCd3030", "Blank" + , "Blank" + , "CctySum", "Ccty01", "Ccty02", "Ccty03", "Ccty07", "Ccty11", "Ccty06" + , "Ccty05", "Ccty04", "Ccty12", "Ccty08", "Ccty10", "Ccty09", "Ccty13" + }; // vo 내부의 필드 이름 (첫글자 대문자, 낙타체 사용) + + // 호출 + SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(list, header, order, width, title); + model.addAttribute("locale", Locale.KOREA); + model.addAttribute("workbook", workbook); + model.addAttribute("workbookName", title); + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("excelDownloadView"); + modelAndView.addObject(model); + + + return modelAndView; + } @RequestMapping("/kccadr/advcSttst/adjReqMgrOffDetail.do") public String adjReqMgrOffDetail(@ModelAttribute("adjReqMgrOffLineVO") AdjReqMgrOffLineVO adjReqMgrOffLineVO, ModelMap model) throws Exception { @@ -693,4 +769,18 @@ public class AdvcSttstController { info.setAppliCantNm(egovCryptoUtil.decrypt(info.getAppliCantNm())); } } + + private void decryptInfomation4Sttst( + List list + , AdjReqMgrSttstVO info){ + if(CollectionUtils.isNotEmpty(list)){ + for(AdjReqMgrSttstVO model : list){ + model.setMemNm(egovCryptoUtil.decrypt(model.getMemNm())); + } + } + + if(info != null){ + info.setMemNm(egovCryptoUtil.decrypt(info.getMemNm())); + } + } } diff --git a/src/main/resources/egovframework/sqlmap/kccadr/adjReqMgrOff/AdjReqMgrOff_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/kccadr/adjReqMgrOff/AdjReqMgrOff_SQL_Mysql.xml index 6097d62f..4e896a1d 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/adjReqMgrOff/AdjReqMgrOff_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/adjReqMgrOff/AdjReqMgrOff_SQL_Mysql.xml @@ -4,6 +4,7 @@ + @@ -506,6 +507,297 @@ LIMIT #recordCountPerPage# OFFSET #firstIndex# + + + + - + + + + + + - - + @@ -131,11 +149,87 @@

조정위원

- +
    + +
  • +
    +
    ${item.memNm}
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    사용상태별
    (건수)
    전체성립불성립취하종결직권조정조정권고반려
    분야별
    (건수)
    전체어문저작물음악저작물연극저작물미술저작물건축저작물사진저작물
    영상저작물도형저작물컴퓨터프로그램편집저작물데이터베이스저작인격권저작인접권
    +
    +
    +
  • +
    + + +
- - -