From e162c3d7a9193de4d3fb69ba27028d798af0d304 Mon Sep 17 00:00:00 2001 From: psh Date: Mon, 10 Jun 2024 18:32:12 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B3=B5=EC=9C=A0=EB=8D=B0=EC=9D=B4=ED=84=B0?= =?UTF-8?q?=20=EC=BB=AC=EB=9F=BC=20=EC=82=AD=EC=A0=9C=20=EC=8B=9C=20?= =?UTF-8?q?=EC=BB=AC=EB=9F=BC=20=EB=A9=94=ED=83=80=EB=8D=B0=EC=9D=B4?= =?UTF-8?q?=ED=84=B0=20=EC=82=AD=EC=A0=9C=EC=99=80=20=ED=95=A8=EA=BB=98=20?= =?UTF-8?q?json=20=EB=8D=B0=EC=9D=B4=ED=84=B0=EC=97=90=EC=84=9C=EB=8F=84?= =?UTF-8?q?=20=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../comtrls/mapper/ComtrlsdataMapper.java | 22 ++++++ .../comtrls/service/ComtrlsdataService.java | 25 +++---- .../service/impl/ComtrlsdataServiceImpl.java | 13 ++++ .../mtdata/comtrls/vo/ComtrlsMetaDataVO.java | 2 + .../comtrls/web/ComtrlsdataController.java | 74 +++++++++++++------ .../comtsrcdata/mapper/ComtsrcdataMapper.java | 17 ++--- .../mtdata/comtsrcdata/vo/ComtTableVO.java | 2 + .../database/web/DatabaseConnController.java | 12 +-- .../mappers/comtrls/Comtrlsdata_SQL.xml | 22 ++++++ 9 files changed, 140 insertions(+), 49 deletions(-) diff --git a/src/main/java/egovframework/com/mtdata/comtrls/mapper/ComtrlsdataMapper.java b/src/main/java/egovframework/com/mtdata/comtrls/mapper/ComtrlsdataMapper.java index 1ddf561..b3c7690 100644 --- a/src/main/java/egovframework/com/mtdata/comtrls/mapper/ComtrlsdataMapper.java +++ b/src/main/java/egovframework/com/mtdata/comtrls/mapper/ComtrlsdataMapper.java @@ -6,6 +6,8 @@ import egovframework.com.mtdata.comtrls.vo.ComtrlsSrcdataVO; import egovframework.com.mtdata.comtsrcdata.vo.ComtExtrtVO; import org.egovframe.rte.psl.dataaccess.mapper.Mapper; +import java.util.Map; + @Mapper("ComtrlsdataMapper") public interface ComtrlsdataMapper { /** @@ -18,4 +20,24 @@ public interface ComtrlsdataMapper { public int insertComtrlsMetadataInfo(ComtrlsMetaDataVO vo) throws Exception; + /** + * 공유데이터 컬럼정보 삭제 + * + * @param param + * @return + * @throws Exception + */ + int deleteComtrlsCol(Map param) throws Exception; + + + /** + * 공유데이터 데이터 내에서 컬럼 삭제 + * + * @param param + * @return + * @throws Exception + */ + int deleteComtrlsData(Map param) throws Exception; + + } diff --git a/src/main/java/egovframework/com/mtdata/comtrls/service/ComtrlsdataService.java b/src/main/java/egovframework/com/mtdata/comtrls/service/ComtrlsdataService.java index 5eb8dd6..1f055f2 100644 --- a/src/main/java/egovframework/com/mtdata/comtrls/service/ComtrlsdataService.java +++ b/src/main/java/egovframework/com/mtdata/comtrls/service/ComtrlsdataService.java @@ -1,8 +1,6 @@ package egovframework.com.mtdata.comtrls.service; - -import egovframework.com.mtdata.comtrls.vo.ComtrlsColVO; import egovframework.com.mtdata.comtrls.vo.ComtrlsMetaDataVO; -import egovframework.com.mtdata.comtrls.vo.ComtrlsSrcdataVO; +import java.util.Map; public interface ComtrlsdataService { @@ -15,16 +13,17 @@ public interface ComtrlsdataService { * @throws Exception */ public int insertComtrlsMetadataInfo(ComtrlsMetaDataVO vo) throws Exception; -// -// -// /** -// * 원천데이터를 [comtsrcdata]테이블에 저장 -// * -// * @param vo -// * @return -// * @throws Exception -// */ -// public int insertComtTabledataInfo(ComtrlsMetaDataVO vo) throws Exception; + + + /** + * 공유데이터 컬럼메타정보 삭제 : DELETE [comtrlsdatacol], json 데이터에서도 삭제 : UPDATE [COMTRLSDATA] + * + * @param param + * @return + * @throws Exception + */ + public int deleteComtrlsColAndData(Map param) throws Exception; + // // // /** diff --git a/src/main/java/egovframework/com/mtdata/comtrls/service/impl/ComtrlsdataServiceImpl.java b/src/main/java/egovframework/com/mtdata/comtrls/service/impl/ComtrlsdataServiceImpl.java index 967777b..6b37a7b 100644 --- a/src/main/java/egovframework/com/mtdata/comtrls/service/impl/ComtrlsdataServiceImpl.java +++ b/src/main/java/egovframework/com/mtdata/comtrls/service/impl/ComtrlsdataServiceImpl.java @@ -10,6 +10,7 @@ import org.json.simple.parser.JSONParser; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Map; @Service("ComtrlsdataService") public class ComtrlsdataServiceImpl extends EgovAbstractServiceImpl implements ComtrlsdataService { @@ -23,4 +24,16 @@ public class ComtrlsdataServiceImpl extends EgovAbstractServiceImpl implements C return comtrlsdataMapper.insertComtrlsMetadataInfo(vo); } + @Override + public int deleteComtrlsColAndData(Map param) throws Exception { + int colCnt = comtrlsdataMapper.deleteComtrlsCol(param); + int colDataCnt = 0; + if(colCnt>0){ + colDataCnt = comtrlsdataMapper.deleteComtrlsData(param); + } + + return colDataCnt; + } + + } diff --git a/src/main/java/egovframework/com/mtdata/comtrls/vo/ComtrlsMetaDataVO.java b/src/main/java/egovframework/com/mtdata/comtrls/vo/ComtrlsMetaDataVO.java index 4c2ef43..e57b518 100644 --- a/src/main/java/egovframework/com/mtdata/comtrls/vo/ComtrlsMetaDataVO.java +++ b/src/main/java/egovframework/com/mtdata/comtrls/vo/ComtrlsMetaDataVO.java @@ -1,10 +1,12 @@ package egovframework.com.mtdata.comtrls.vo; +import com.fasterxml.jackson.annotation.JsonInclude; import lombok.Getter; import lombok.Setter; @Getter @Setter +@JsonInclude(JsonInclude.Include.NON_NULL) public class ComtrlsMetaDataVO { /** 공유데이터ID(PK) */ diff --git a/src/main/java/egovframework/com/mtdata/comtrls/web/ComtrlsdataController.java b/src/main/java/egovframework/com/mtdata/comtrls/web/ComtrlsdataController.java index 520f8b0..3657fcc 100644 --- a/src/main/java/egovframework/com/mtdata/comtrls/web/ComtrlsdataController.java +++ b/src/main/java/egovframework/com/mtdata/comtrls/web/ComtrlsdataController.java @@ -9,10 +9,10 @@ import egovframework.com.mtdata.database.vo.DatabaseInfoVO; import org.json.simple.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.ModelAttribute; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.sql.*; @@ -32,33 +32,63 @@ public class ComtrlsdataController { private static final Logger log = LoggerFactory.getLogger(ComtrlsdataController.class); - @RequestMapping("/comtrls.do") - @Transactional(rollbackFor = Exception.class) - public String comtrls() throws Exception { + // 공유데이터 요청 +// @PostMapping(value="/insert/getComtrls.do") +// @ResponseBody +//// @Transactional(rollbackFor = Exception.class) +// public ResponseEntity comtrls(@RequestBody ComtTableVO comtTbVO) throws Exception { +// +// try { +// comtTbVO.setSrcDataMetaId(3); +// ComtTableVO tableVo = comtsrcdataService.selectSrcMetaData(comtTbVO); +// +// ComtrlsMetaDataVO metaVo = new ComtrlsMetaDataVO(); +// metaVo.setRlsDataNm("공유데이터 가져오기 테스트 DATA NAME"); +// metaVo.setRlsDataAplcntId(1); // 공유데이터 요청자 ID +// metaVo.setRlsDataRvwId(3); // 공유데이터 검토자 ID +// metaVo.setRlsDataMngDeptId(tableVo.getSysId()); // 관리기관 ID +// metaVo.setRlsDataSrcInstId(tableVo.getSysId()); // 공유데이터 출처기관 ID +// metaVo.setDwnldType("JSON"); // 제공방식 +// metaVo.setRlsDataSttsChg("PROGRESS"); // 현재상태 +// metaVo.setRlsYn("Y"); // 공개여부 +// +// return ResponseEntity.ok().build(); +// } catch (Exception e) { +// log.error("Exception {}", e); +// return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); +// +// } +// +// } + + + + + // 공유데이터 컬럼삭제 + @PostMapping(value="/delete/deleteComtrlsColAndData.do") + @ResponseBody + public ResponseEntity deleteComtrlsCol(@RequestBody Map param) throws Exception { try { - ComtTableVO vo = new ComtTableVO(); - vo.setSrcDataMetaId(3); - ComtTableVO tableVo = comtsrcdataService.selectSrcMetaData(vo); - ComtrlsMetaDataVO metaVo = new ComtrlsMetaDataVO(); - metaVo.setRlsDataNm("공유데이터 가져오기 테스트 DATA NAME"); -// metaVo.setRlsDataMngDeptId(tableVo.get); - metaVo.setRlsDataAplcntId(1); - metaVo.setRlsDataRvwId(3); - metaVo.setRlsDataSrcInstId(4); - metaVo.setDwnldType("JSON"); - metaVo.setRlsDataSttsChg("PROGRESS"); - metaVo.setRlsDataSttsChg("Y"); + Map returnMap = new HashMap<>(); + int cnt = comtrlsdataService.deleteComtrlsColAndData(param); + if (cnt>0){ + returnMap.put("message", "성공"); + }else{ + returnMap.put("message", "삭제할 내용이 없습니다."); - - - return "공유데이터 컨트롤러 ::"; + } + return ResponseEntity.ok().body(returnMap); } catch (Exception e) { log.error("Exception {}", e); - throw new RuntimeException(e.getMessage()); + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); + } } + + + } diff --git a/src/main/java/egovframework/com/mtdata/comtsrcdata/mapper/ComtsrcdataMapper.java b/src/main/java/egovframework/com/mtdata/comtsrcdata/mapper/ComtsrcdataMapper.java index 9123361..8caf432 100644 --- a/src/main/java/egovframework/com/mtdata/comtsrcdata/mapper/ComtsrcdataMapper.java +++ b/src/main/java/egovframework/com/mtdata/comtsrcdata/mapper/ComtsrcdataMapper.java @@ -22,16 +22,15 @@ public interface ComtsrcdataMapper { */ public ComtTableVO selectSrcMetaData(ComtTableVO vo) throws Exception; -// -//SELECT src_data_meta_id, -// extr_id, -// src_data_tbl_nm -//FROM comtsrcdatameta_new meta, -// comtextrtblinfo ex -// WHERE 1=1 -// meta.extr_id = ex.extr_id -// src_data_meta_id = #{srcDataMetaId} + /** + * [comtsrcdatameta_new] 값 체크 + * + * @param vo + * @return + * @throws Exception + */ + public int checkSrcMeta(ComtTableVO vo) throws Exception; /** diff --git a/src/main/java/egovframework/com/mtdata/comtsrcdata/vo/ComtTableVO.java b/src/main/java/egovframework/com/mtdata/comtsrcdata/vo/ComtTableVO.java index 424b080..1a17372 100644 --- a/src/main/java/egovframework/com/mtdata/comtsrcdata/vo/ComtTableVO.java +++ b/src/main/java/egovframework/com/mtdata/comtsrcdata/vo/ComtTableVO.java @@ -1,11 +1,13 @@ package egovframework.com.mtdata.comtsrcdata.vo; +import com.fasterxml.jackson.annotation.JsonInclude; import lombok.Getter; import lombok.Setter; // author : psh @Getter @Setter +@JsonInclude(JsonInclude.Include.NON_NULL) public class ComtTableVO { /** 원천데이터 테이블 ID */ private int srcDataMetaId; diff --git a/src/main/java/egovframework/com/mtdata/database/web/DatabaseConnController.java b/src/main/java/egovframework/com/mtdata/database/web/DatabaseConnController.java index cab27d6..3f90856 100644 --- a/src/main/java/egovframework/com/mtdata/database/web/DatabaseConnController.java +++ b/src/main/java/egovframework/com/mtdata/database/web/DatabaseConnController.java @@ -27,9 +27,10 @@ public class DatabaseConnController { private static final Logger log = LoggerFactory.getLogger(DatabaseConnController.class); - @RequestMapping("/insertDbConn.do") + @PostMapping(value="/insertDbConn.do") + @ResponseBody @Transactional(rollbackFor = Exception.class) - public String insertDbConn(@ModelAttribute DatabaseInfoVO vo) throws Exception { + public ResponseEntity insertDbConn(@RequestBody DatabaseInfoVO vo) throws Exception { /** 하단의 vo.setting은 임시설정으로, 사용자가 입력한 데이터를 vo객체에 받아올 것임 */ vo.setSysId(1); // [inst_sys_info]테이블의 sysId를 참조하고 있음.sysId : 정보시스템 고유 아이디값 @@ -52,7 +53,7 @@ public class DatabaseConnController { DatabaseInfoVO infoVo = dbService.selectSysDb(vo); viService.selectSchema(infoVo); - return "연결정보 저장 및 스키마 조회 성공"; + return ResponseEntity.ok().build(); } else { // 오류 발생시 롤백 throw new RuntimeException("연결정보 저장 실패"); @@ -60,11 +61,12 @@ public class DatabaseConnController { } else { log.debug("===================================="); log.debug("dbConnIp : '{}'에 대한 정보가 {}건 저장되어있습니다.", vo.getDbConnIp(), check); - return "기존 입력된 정보가 존재함"; + String msg = "기존 입력된 정보가 존재함"; + return ResponseEntity.ok().body(msg); } } catch (Exception e) { log.error("Exception {}", e); - throw new RuntimeException(e.getMessage()); + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); } } diff --git a/src/main/resources/egovframework/sqlmap/mtdata/mappers/comtrls/Comtrlsdata_SQL.xml b/src/main/resources/egovframework/sqlmap/mtdata/mappers/comtrls/Comtrlsdata_SQL.xml index d1a31f8..a3c1350 100644 --- a/src/main/resources/egovframework/sqlmap/mtdata/mappers/comtrls/Comtrlsdata_SQL.xml +++ b/src/main/resources/egovframework/sqlmap/mtdata/mappers/comtrls/Comtrlsdata_SQL.xml @@ -47,4 +47,26 @@ values (#{rlsDataColId}, #{rlsDataId}, #{rlsDataColNm} ) + + DELETE FROM comtrlsdatacol + WHERE + + rls_data_col_id IN + + #{item} + + + + + + UPDATE COMTRLSDATA + SET RLS_DATA_VL = RLS_DATA_VL + + + - #{item} + + + WHERE RLS_DATA_ID = #{rlsDataId} + +