
+++ src/main/java/com/takensoft/cms/cntxtPth/dao/CntxtPthDAO.java
... | ... | @@ -0,0 +1,68 @@ |
1 | +package com.takensoft.cms.cntxtPth.dao; | |
2 | + | |
3 | +import com.takensoft.cms.cntxtPth.vo.CntxtPthVO; | |
4 | +import com.takensoft.common.Pagination; | |
5 | +import org.egovframe.rte.psl.dataaccess.mapper.Mapper; | |
6 | + | |
7 | +import java.util.List; | |
8 | + | |
9 | +/** | |
10 | + * @author 하석형 | |
11 | + * @since 2025.03.31 | |
12 | + * @modification | |
13 | + * since | author | description | |
14 | + * 2025.03.31 | 하석형 | 최초 등록 | |
15 | + * | |
16 | + * 컨텍스트 패스 정보 관련 DAO | |
17 | + */ | |
18 | +@Mapper("cntxtPthDAO") | |
19 | +public interface CntxtPthDAO { | |
20 | + | |
21 | + /** | |
22 | + * @param pagination - 페이징 정보 | |
23 | + * @return List<CntxtPthVO> - 컨텍스트 패스 정보를 담고 있는 객체 목록 | |
24 | + * | |
25 | + * 컨텍스트 패스 목록 조회 | |
26 | + */ | |
27 | + List<CntxtPthVO> findAll(Pagination pagination); | |
28 | + | |
29 | + /** | |
30 | + * @param pagination - 페이징 정보 | |
31 | + * @return int - 컨텍스트 패스 목록 갯수 | |
32 | + * | |
33 | + * 컨텍스트 패스 목록 갯수 | |
34 | + */ | |
35 | + int findAllCnt(Pagination pagination); | |
36 | + | |
37 | + /** | |
38 | + * @param cntxtPthId - 컨텍스트 패스 아이디 | |
39 | + * @return CntxtPthVO - 컨텍스트 패스 정보를 담고 있는 객체 | |
40 | + * | |
41 | + * 컨텍스트 패스 상세 조회 | |
42 | + */ | |
43 | + CntxtPthVO findByCntxtPthId(String cntxtPthId); | |
44 | + | |
45 | + /** | |
46 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
47 | + * @return int - 컨텍스트 패스 등록 결과 | |
48 | + * | |
49 | + * 컨텍스트 패스 등록 | |
50 | + */ | |
51 | + int save(CntxtPthVO cntxtPthVO); | |
52 | + | |
53 | + /** | |
54 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
55 | + * @return int - 컨텍스트 패스 수정 결과 | |
56 | + * | |
57 | + * 컨텍스트 패스 수정 | |
58 | + */ | |
59 | + int update(CntxtPthVO cntxtPthVO); | |
60 | + | |
61 | + /** | |
62 | + * @param cntxtPthId - 컨텍스트 패스 아이디 | |
63 | + * @return int - 컨텍스트 패스 삭제 결과 | |
64 | + * | |
65 | + * 컨텍스트 패스 삭제 | |
66 | + */ | |
67 | + int delete(String cntxtPthId); | |
68 | +} |
+++ src/main/java/com/takensoft/cms/cntxtPth/service/CntxtPthService.java
... | ... | @@ -0,0 +1,59 @@ |
1 | +package com.takensoft.cms.cntxtPth.service; | |
2 | + | |
3 | +import com.takensoft.cms.cntxtPth.vo.CntxtPthVO; | |
4 | + | |
5 | +import java.util.Map; | |
6 | + | |
7 | +/** | |
8 | + * @author 하석형 | |
9 | + * @since 2025.03.31 | |
10 | + * @modification | |
11 | + * since | author | description | |
12 | + * 2025.03.31 | 하석형 | 최초 등록 | |
13 | + * | |
14 | + * 컨텍스트 패스 정보 관련 인터페이스 | |
15 | + */ | |
16 | +public interface CntxtPthService { | |
17 | + | |
18 | + /** | |
19 | + * @param params - 검색조건 및 페이징 정보 | |
20 | + * @return Map<String, Object> | |
21 | + * - list : 컨텍스트 패스 목록 | |
22 | + * - pagination : 페이징 정보 | |
23 | + * | |
24 | + * 컨텍스트 패스 목록 조회 | |
25 | + */ | |
26 | + public Map<String, Object> findAllCntxtPth(Map<String, String> params); | |
27 | + | |
28 | + /** | |
29 | + * @param cntxtPthId - 컨텍스트 패스 아이디 | |
30 | + * @return CntxtPthVO - 컨텍스트 패스 정보를 담고 있는 객체 | |
31 | + * | |
32 | + * 컨텍스트 패스 상세 조회 | |
33 | + */ | |
34 | + Map<String, Object> findByCntxtPthId(String cntxtPthId); | |
35 | + | |
36 | + /** | |
37 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
38 | + * @return int - 컨텍스트 패스 등록 결과 | |
39 | + * | |
40 | + * 컨텍스트 패스 등록 | |
41 | + */ | |
42 | + public int cntxtPthSave(CntxtPthVO cntxtPthVO); | |
43 | + | |
44 | + /** | |
45 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
46 | + * @return int - 컨텍스트 패스 수정 결과 | |
47 | + * | |
48 | + * 컨텍스트 패스 수정 | |
49 | + */ | |
50 | + public int cntxtPthUpdate(CntxtPthVO cntxtPthVO); | |
51 | + | |
52 | + /** | |
53 | + * @param cntxtPthId - 컨텍스트 패스 아이디 | |
54 | + * @return int - 컨텍스트 패스 삭제 결과 | |
55 | + * | |
56 | + * 컨텍스트 패스 삭제 | |
57 | + */ | |
58 | + public int cntxtPthDelete(String cntxtPthId); | |
59 | +} |
+++ src/main/java/com/takensoft/cms/cntxtPth/service/Impl/CntxtPthServiceImpl.java
... | ... | @@ -0,0 +1,177 @@ |
1 | +package com.takensoft.cms.cntxtPth.service.Impl; | |
2 | + | |
3 | +import com.takensoft.cms.cntxtPth.dao.CntxtPthDAO; | |
4 | +import com.takensoft.cms.cntxtPth.service.CntxtPthService; | |
5 | +import com.takensoft.cms.cntxtPth.vo.CntxtPthVO; | |
6 | +import com.takensoft.common.Pagination; | |
7 | +import com.takensoft.common.exception.CustomDeleteFailException; | |
8 | +import com.takensoft.common.exception.CustomInsertFailException; | |
9 | +import com.takensoft.common.exception.CustomUpdateFailException; | |
10 | +import com.takensoft.common.idgen.service.IdgenService; | |
11 | +import com.takensoft.common.util.JWTUtil; | |
12 | +import lombok.RequiredArgsConstructor; | |
13 | +import org.egovframe.rte.fdl.cmmn.EgovAbstractServiceImpl; | |
14 | +import org.springframework.dao.DataAccessException; | |
15 | +import org.springframework.stereotype.Service; | |
16 | +import org.springframework.transaction.annotation.Transactional; | |
17 | + | |
18 | +import java.util.HashMap; | |
19 | +import java.util.List; | |
20 | +import java.util.Map; | |
21 | + | |
22 | +/** | |
23 | + * @author 하석형 | |
24 | + * @since 2025.03.31 | |
25 | + * @modification | |
26 | + * since | author | description | |
27 | + * 2025.03.31 | 하석형 | 최초 등록 | |
28 | + * | |
29 | + * EgovAbstractServiceImpl : 전자정부 상속 | |
30 | + * CntxtPthService : 컨텍스트 패스 정보 관련 인터페이스 상속 | |
31 | + * | |
32 | + * 컨텍스트 패스 정보 관련 인터페이스 구현체 | |
33 | + */ | |
34 | +@Service("cntxtPthService") | |
35 | +@RequiredArgsConstructor | |
36 | +public class CntxtPthServiceImpl extends EgovAbstractServiceImpl implements CntxtPthService { | |
37 | + private final CntxtPthDAO cntxtPthDAO; | |
38 | + private final JWTUtil jwtUtil; | |
39 | + private final IdgenService cntxtPthIdgn; | |
40 | + | |
41 | + /** | |
42 | + * @param params - 검색조건 및 페이징 정보 | |
43 | + * @return Map<String, Object> | |
44 | + * - list : 컨텍스트 패스 목록 | |
45 | + * - pagination : 페이징 정보 | |
46 | + * @throws DataAccessException - db 관련 예외 발생 시 | |
47 | + * @throws Exception - 그 외 예외 발생 시 | |
48 | + * | |
49 | + * 컨텍스트 패스 목록 조회 | |
50 | + */ | |
51 | + @Override | |
52 | + public Map<String, Object> findAllCntxtPth(Map<String, String> params) { | |
53 | + try { | |
54 | + Map<String, Object> result = new HashMap<String, Object>(); // 반환 객체 생성 | |
55 | + Pagination search = new Pagination(0, params); // 검색조건 객체 생성 | |
56 | + int cnt = cntxtPthDAO.findAllCnt(search); // 게시물 갯수 | |
57 | + Pagination pagination = new Pagination(cnt, params); // 게시물 갯수 조회 후 검색조건 객체 초기화 | |
58 | + List<CntxtPthVO> list = cntxtPthDAO.findAll(pagination); // 목록 조회 | |
59 | + | |
60 | + result.put("list", list); | |
61 | + result.put("pagination", pagination); | |
62 | + | |
63 | + return result; | |
64 | + } catch (DataAccessException dae) { | |
65 | + throw dae; | |
66 | + } catch (Exception e) { | |
67 | + throw e; | |
68 | + } | |
69 | + } | |
70 | + | |
71 | + /** | |
72 | + * @param cntxtPthId - 컨텍스트 패스 코드 | |
73 | + * @return AuthorVO - 컨텍스트 패스 정보를 담고 있는 객체 | |
74 | + * @throws DataAccessException - db 관련 예외 발생 시 | |
75 | + * @throws Exception - 그 외 예외 발생 시 | |
76 | + * | |
77 | + * 컨텍스트 패스 상세 조회 | |
78 | + */ | |
79 | + @Override | |
80 | + public Map<String, Object> findByCntxtPthId(String cntxtPthId) { | |
81 | + try { | |
82 | + Map<String, Object> result = new HashMap<String, Object>(); // 반환 객체 생성 | |
83 | + CntxtPthVO cntxtPth = new CntxtPthVO(); | |
84 | + if (cntxtPthId != null && !cntxtPthId.equals("")) { | |
85 | + cntxtPth = cntxtPthDAO.findByCntxtPthId(cntxtPthId); | |
86 | + } | |
87 | + result.put("cntxtPth", cntxtPth); | |
88 | + | |
89 | + return result; | |
90 | + } catch (DataAccessException dae) { | |
91 | + throw dae; | |
92 | + } catch (Exception e) { | |
93 | + throw e; | |
94 | + } | |
95 | + } | |
96 | + | |
97 | + /** | |
98 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
99 | + * @return int - 컨텍스트 패스 등록 결과 | |
100 | + * @throws CustomInsertFailException - 컨텍스트 패스 등록 예외 발생 시 | |
101 | + * @throws DataAccessException - db 관련 예외 발생 시 | |
102 | + * @throws Exception - 그 외 예외 발생 시 | |
103 | + * | |
104 | + * 컨텍스트 패스 등록 | |
105 | + */ | |
106 | + @Override | |
107 | + @Transactional(rollbackFor = Exception.class) | |
108 | + public int cntxtPthSave(CntxtPthVO cntxtPthVO) { | |
109 | + try { | |
110 | + // 등록된 토큰에서 사용자 정보 조회 | |
111 | + cntxtPthVO.setRgtr(jwtUtil.getWriter()); | |
112 | + cntxtPthVO.setCntxtPthId(cntxtPthIdgn.getNextStringId()); // 컨텍스트 패스 아이디 생성 | |
113 | + int result = cntxtPthDAO.save(cntxtPthVO); | |
114 | + if(result == 0) { | |
115 | + throw new CustomInsertFailException("컨텍스트 패스 등록에 실패했습니다."); | |
116 | + } | |
117 | + | |
118 | + return result; | |
119 | + } catch (DataAccessException dae) { | |
120 | + throw dae; | |
121 | + } catch (Exception e) { | |
122 | + throw e; | |
123 | + } | |
124 | + } | |
125 | + | |
126 | + /** | |
127 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
128 | + * @return int - 컨텍스트 패스 수정 결과 | |
129 | + * @throws CustomUpdateFailException - 컨텍스트 패스 수정 예외 발생 시 | |
130 | + * @throws DataAccessException - db 관련 예외 발생 시 | |
131 | + * @throws Exception - 그 외 예외 발생 시 | |
132 | + * | |
133 | + * 컨텍스트 패스 수정 | |
134 | + */ | |
135 | + @Override | |
136 | + public int cntxtPthUpdate(CntxtPthVO cntxtPthVO) { | |
137 | + try { | |
138 | + // 등록된 토큰에서 사용자 정보 조회 | |
139 | + cntxtPthVO.setMdfr(jwtUtil.getWriter()); | |
140 | + int result = cntxtPthDAO.update(cntxtPthVO); | |
141 | + if(result == 0) { | |
142 | + throw new CustomUpdateFailException("컨텍스트 패스 수정에 실패했습니다."); | |
143 | + } | |
144 | + | |
145 | + return result; | |
146 | + } catch (DataAccessException dae) { | |
147 | + throw dae; | |
148 | + } catch (Exception e) { | |
149 | + throw e; | |
150 | + } | |
151 | + } | |
152 | + | |
153 | + /** | |
154 | + * @param cntxtPthId - 컨텍스트 패스 정보 | |
155 | + * @return int - 컨텍스트 패스 삭제 결과 | |
156 | + * @throws CustomDeleteFailException - 컨텍스트 패스 삭제 예외 발생 시 | |
157 | + * @throws DataAccessException - db 관련 예외 발생 시 | |
158 | + * @throws Exception - 그 외 예외 발생 시 | |
159 | + * | |
160 | + * 컨텍스트 패스 삭제 | |
161 | + */ | |
162 | + @Override | |
163 | + public int cntxtPthDelete(String cntxtPthId) { | |
164 | + try { | |
165 | + int result = cntxtPthDAO.delete(cntxtPthId); | |
166 | + if(result == 0) { | |
167 | + throw new CustomDeleteFailException("컨텍스트 패스 삭제에 실패했습니다."); | |
168 | + } | |
169 | + | |
170 | + return result; | |
171 | + } catch (DataAccessException dae) { | |
172 | + throw dae; | |
173 | + } catch (Exception e) { | |
174 | + throw e; | |
175 | + } | |
176 | + } | |
177 | +} |
+++ src/main/java/com/takensoft/cms/cntxtPth/vo/CntxtPthVO.java
... | ... | @@ -0,0 +1,34 @@ |
1 | +package com.takensoft.cms.cntxtPth.vo; | |
2 | + | |
3 | +import lombok.AllArgsConstructor; | |
4 | +import lombok.Getter; | |
5 | +import lombok.NoArgsConstructor; | |
6 | +import lombok.Setter; | |
7 | + | |
8 | +/** | |
9 | + * @author : 하석형 | |
10 | + * @since : 2025.03.31 | |
11 | + * @modification | |
12 | + * since | author | description | |
13 | + * 2025.03.31 | 하석형 | 최초 등록 | |
14 | + * | |
15 | + * 컨텍스트 패스 정보 관련 VO | |
16 | + */ | |
17 | +@Setter | |
18 | +@Getter | |
19 | +@NoArgsConstructor | |
20 | +@AllArgsConstructor | |
21 | +public class CntxtPthVO { | |
22 | + | |
23 | + private String cntxtPthId; // 컨텍스트 패스 아이디 | |
24 | + private String path; // 경로 | |
25 | + private String useYn; // 사용여부 | |
26 | + private String sysPvsnYn; // 시스템 제공 여부 ( 0: 시스템, 1: 사용자 ) -> 시스템에서 제공되는 데이터는 사용자가 제거하지 못하도록 하기 위한 설정값 | |
27 | + private String rgtr; // 등록자 | |
28 | + private String rgtrNm; // 등록자명 | |
29 | + private String regDt; // 등록일 | |
30 | + private String mdfr; // 수정자 | |
31 | + private String mdfrNm; // 수정자명 | |
32 | + private String mdfcnDt; // 수정일 | |
33 | + | |
34 | +} |
+++ src/main/java/com/takensoft/cms/cntxtPth/web/CntxtPthController.java
... | ... | @@ -0,0 +1,97 @@ |
1 | +package com.takensoft.cms.cntxtPth.web; | |
2 | + | |
3 | +import com.takensoft.cms.cntxtPth.service.CntxtPthService; | |
4 | +import com.takensoft.cms.cntxtPth.vo.CntxtPthVO; | |
5 | +import com.takensoft.common.message.MessageCode; | |
6 | +import com.takensoft.common.util.ResponseUtil; | |
7 | +import lombok.RequiredArgsConstructor; | |
8 | +import lombok.extern.slf4j.Slf4j; | |
9 | +import org.springframework.http.ResponseEntity; | |
10 | +import org.springframework.web.bind.annotation.PostMapping; | |
11 | +import org.springframework.web.bind.annotation.RequestBody; | |
12 | +import org.springframework.web.bind.annotation.RequestMapping; | |
13 | +import org.springframework.web.bind.annotation.RestController; | |
14 | + | |
15 | +import java.util.HashMap; | |
16 | +import java.util.List; | |
17 | +import java.util.Map; | |
18 | + | |
19 | +/** | |
20 | + * @author 하석형 | |
21 | + * @since 2025.03.31 | |
22 | + * @modification | |
23 | + * since | author | description | |
24 | + * 2025.03.31 | 하석형 | 최초 등록 | |
25 | + * | |
26 | + * 컨텍스트 패스 정보 관련 컨트롤러 | |
27 | + */ | |
28 | +@RestController | |
29 | +@RequiredArgsConstructor | |
30 | +@Slf4j | |
31 | +@RequestMapping("/admin/cntxtPth") | |
32 | +public class CntxtPthController { | |
33 | + | |
34 | + private final ResponseUtil resUtil; | |
35 | + private final CntxtPthService cntxtPthService; | |
36 | + | |
37 | + /** | |
38 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
39 | + * @return ResponseEntity - 컨텍스트 패스 등록 결과를 포함하는 응답 | |
40 | + * | |
41 | + * 컨텍스트 패스 등록 | |
42 | + */ | |
43 | + @PostMapping("/saveProc.json") | |
44 | + public ResponseEntity<?> saveProc(@RequestBody CntxtPthVO cntxtPthVO) { | |
45 | + // 컨텍스트 패스 등록 | |
46 | + int result = cntxtPthService.cntxtPthSave(cntxtPthVO); | |
47 | + return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); | |
48 | + } | |
49 | + | |
50 | + /** | |
51 | + * @param params - 검색조건 및 페이징 정보 | |
52 | + * @return ResponseEntity - 컨텍스트 패스 목록 조회 결과를 포함하는 응답 | |
53 | + * | |
54 | + * 컨텍스트 패스 목록 조회 | |
55 | + */ | |
56 | + @PostMapping("/findAll.json") | |
57 | + public ResponseEntity<?> findAll(@RequestBody Map<String, String> params) { | |
58 | + Map<String, Object> result = cntxtPthService.findAllCntxtPth(params); | |
59 | + return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); | |
60 | + } | |
61 | + | |
62 | + /** | |
63 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
64 | + * @return ResponseEntity - 컨텍스트 패스 상세 조회 결과를 포함하는 응답 | |
65 | + * | |
66 | + * 컨텍스트 패스 상세 조회 | |
67 | + */ | |
68 | + @PostMapping("/findByCntxtPth.json") | |
69 | + public ResponseEntity<?> findByCntxtPth(@RequestBody CntxtPthVO cntxtPthVO) { | |
70 | + Map<String, Object> result = cntxtPthService.findByCntxtPthId(cntxtPthVO.getCntxtPthId()); | |
71 | + return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); | |
72 | + } | |
73 | + | |
74 | + /** | |
75 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
76 | + * @return ResponseEntity - 컨텍스트 패스 수정 결과를 포함하는 응답 | |
77 | + * | |
78 | + * 컨텍스트 패스 수정 | |
79 | + */ | |
80 | + @PostMapping("/updateProc.json") | |
81 | + public ResponseEntity<?> updateProc(@RequestBody CntxtPthVO cntxtPthVO) { | |
82 | + int result = cntxtPthService.cntxtPthUpdate(cntxtPthVO); | |
83 | + return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); | |
84 | + } | |
85 | + | |
86 | + /** | |
87 | + * @param cntxtPthVO - 컨텍스트 패스 정보 | |
88 | + * @return ResponseEntity - 컨텍스트 패스 삭제 결과를 포함하는 응답 | |
89 | + * | |
90 | + * 컨텍스트 패스 삭제 | |
91 | + */ | |
92 | + @PostMapping("/deleteProc.json") | |
93 | + public ResponseEntity<?> deleteProc(@RequestBody CntxtPthVO cntxtPthVO) { | |
94 | + int result = cntxtPthService.cntxtPthDelete(cntxtPthVO.getCntxtPthId()); | |
95 | + return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); | |
96 | + } | |
97 | +} |
--- src/main/java/com/takensoft/common/idgen/context/ContextIdgen.java
+++ src/main/java/com/takensoft/common/idgen/context/ContextIdgen.java
... | ... | @@ -178,4 +178,15 @@ |
178 | 178 |
idgenServiceImpl.setTblNm("LOGIN_MODE_ID"); |
179 | 179 |
return idgenServiceImpl; |
180 | 180 |
} |
181 |
+ |
|
182 |
+ // 컨텍스트 패스 관리 |
|
183 |
+ @Bean(name = "cntxtPthIdgn") |
|
184 |
+ public IdgenService cntxtPthIdgnIdgen() { |
|
185 |
+ IdgenService idgenServiceImpl = new IdgenService(); |
|
186 |
+ idgenServiceImpl.setCipers(15); |
|
187 |
+ idgenServiceImpl.setFillChar('0'); |
|
188 |
+ idgenServiceImpl.setPrefix("CNTXT_PTH_"); |
|
189 |
+ idgenServiceImpl.setTblNm("CNTXT_PTH_ID"); |
|
190 |
+ return idgenServiceImpl; |
|
191 |
+ } |
|
181 | 192 |
}(No newline at end of file) |
+++ src/main/resources/mybatis/mapper/cntxtPth/cntxtPth-SQL.xml
... | ... | @@ -0,0 +1,113 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |
3 | +<!-- | |
4 | + 작 성 자 : 하석형 | |
5 | + 작 성 일 : 2025.03.31 | |
6 | + 이 력 | |
7 | + | 수 정 일 | 수 정 자 | 내 용 | |
8 | + ======================================================================================================== | |
9 | + | 2025.03.31 | 하석형 | - 최초 등록 | |
10 | + ======================================================================================================== | |
11 | +--> | |
12 | +<mapper namespace="com.takensoft.cms.cntxtPth.dao.CntxtPthDAO"> | |
13 | + <sql id="selectCntxtPth"> | |
14 | + SELECT cpm.cntxt_pth_id | |
15 | + , cpm.path | |
16 | + , cpm.use_yn | |
17 | + , cpm.sys_pvsn_yn | |
18 | + , cpm.rgtr | |
19 | + , (SELECT mbr_nm FROM mbr_info WHERE mbr_id = cpm.rgtr) AS rgtr_nm | |
20 | + , TO_CHAR(cpm.reg_dt, 'YYYY-MM-DD HH24:MI') AS reg_dt | |
21 | + , cpm.mdfr | |
22 | + , (SELECT mbr_nm FROM mbr_info WHERE mbr_id = cpm.mdfr) AS mdfr_nm | |
23 | + , TO_CHAR(cpm.mdfcn_dt, 'YYYY-MM-DD HH24:MI') AS mdfcn_dt | |
24 | + FROM cntxt_pth_mng cpm | |
25 | + </sql> | |
26 | + | |
27 | + <sql id="selectRequirement"> | |
28 | + <if test="searchText != null and searchText != ''"> | |
29 | + AND cpm.path LIKE '%' || #{searchText} || '%' | |
30 | + </if> | |
31 | + </sql> | |
32 | + | |
33 | + <!-- | |
34 | + 작 성 자 : 하석형 | |
35 | + 작 성 일 : 2025.03.31 | |
36 | + 내 용 : 컨텍스트 패스 목록 조회 | |
37 | + --> | |
38 | + <select id="findAll" parameterType="Pagination" resultType="CntxtPthVO"> | |
39 | + <include refid="selectCntxtPth" /> | |
40 | + WHERE 1=1 | |
41 | + <include refid="selectRequirement" /> | |
42 | + LIMIT #{recordSize} OFFSET #{limitStart} | |
43 | + </select> | |
44 | + | |
45 | + <!-- | |
46 | + 작 성 자 : 하석형 | |
47 | + 작 성 일 : 2025.03.31 | |
48 | + 내 용 : 컨텍스트 패스 목록 갯수 조회 | |
49 | + --> | |
50 | + <select id="findAllCnt" parameterType="Pagination" resultType="Integer"> | |
51 | + SELECT COUNT(cpm.cntxt_pth_id) | |
52 | + FROM cntxt_pth_mng cpm | |
53 | + WHERE 1=1 | |
54 | + <include refid="selectRequirement" /> | |
55 | + </select> | |
56 | + | |
57 | + <!-- | |
58 | + 작 성 자 : 하석형 | |
59 | + 작 성 일 : 2025.03.31 | |
60 | + 내 용 : 컨텍스트 패스 상세 조회 | |
61 | + --> | |
62 | + <select id="findByCntxtPthCode" parameterType="String" resultType="CntxtPthVO"> | |
63 | + <include refid="selectCntxtPth" /> | |
64 | + WHERE cpm.cntxt_pth_id = #{cntxtPthId} | |
65 | + </select> | |
66 | + | |
67 | + <!-- | |
68 | + 작 성 자 : 하석형 | |
69 | + 작 성 일 : 2025.03.31 | |
70 | + 내 용 : 컨텍스트 패스 등록 | |
71 | + --> | |
72 | + <insert id="save" parameterType="CntxtPthVO"> | |
73 | + INSERT INTO cntxt_pth_mng ( | |
74 | + cntxt_pth_id | |
75 | + , path | |
76 | + , use_yn | |
77 | + , sys_pvsn_yn | |
78 | + , rgtr | |
79 | + , reg_dt | |
80 | + ) VALUES ( | |
81 | + #{cntxtPthId} | |
82 | + , #{path} | |
83 | + , 'Y' | |
84 | + , 1 | |
85 | + , #{rgtr} | |
86 | + , NOW() | |
87 | + ) | |
88 | + </insert> | |
89 | + | |
90 | + <!-- | |
91 | + 작 성 자 : 하석형 | |
92 | + 작 성 일 : 2025.03.31 | |
93 | + 내 용 : 컨텍스트 패스 수정 | |
94 | + --> | |
95 | + <update id="update" parameterType="CntxtPthVO"> | |
96 | + UPDATE cntxt_pth_mng | |
97 | + SET path = #{path} | |
98 | + , use_yn = #{useYn} | |
99 | + , mdfr = #{mdfr} | |
100 | + , mdfcn_dt = NOW() | |
101 | + WHERE cntxt_pth_id = #{cntxtPthId} | |
102 | + </update> | |
103 | + | |
104 | + <!-- | |
105 | + 작 성 자 : 하석형 | |
106 | + 작 성 일 : 2025.03.31 | |
107 | + 내 용 : 컨텍스트 패스 삭제 | |
108 | + --> | |
109 | + <delete id="delete" parameterType="String"> | |
110 | + DELETE FROM cntxt_pth_mng | |
111 | + WHERE cntxt_pth_id = #{cntxtPthId} | |
112 | + </delete> | |
113 | +</mapper>(No newline at end of file) |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?