--- src/main/java/itn/com/cmm/util/DateUtil.java
+++ src/main/java/itn/com/cmm/util/DateUtil.java
... | ... | @@ -1,9 +1,12 @@ |
| 1 | 1 |
package itn.com.cmm.util; |
| 2 | 2 |
|
| 3 |
+import java.text.ParseException; |
|
| 4 |
+import java.text.SimpleDateFormat; |
|
| 3 | 5 |
import java.time.LocalDate; |
| 4 | 6 |
import java.time.LocalDateTime; |
| 5 | 7 |
import java.time.Month; |
| 6 | 8 |
import java.time.format.DateTimeFormatter; |
| 9 |
+import java.util.Date; |
|
| 7 | 10 |
|
| 8 | 11 |
/** |
| 9 | 12 |
* |
... | ... | @@ -85,4 +88,25 @@ |
| 85 | 88 |
} |
| 86 | 89 |
|
| 87 | 90 |
|
| 91 |
+ |
|
| 92 |
+ /** |
|
| 93 |
+ * @methodName : getNowDayToString |
|
| 94 |
+ * @author : 이호영 |
|
| 95 |
+ * @date : 2023.08.08 |
|
| 96 |
+ * @description : yyyy-MM-dd HH:mm:ss.S 형식을 yyyy-MM-dd HH:mm 로 변환 |
|
| 97 |
+ * @return |
|
| 98 |
+ * @throws ParseException |
|
| 99 |
+ */ |
|
| 100 |
+ public static String getChangFormatS(String str) throws ParseException {
|
|
| 101 |
+ SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S"); // 원본 형식
|
|
| 102 |
+ Date date = inputFormat.parse(str); // 문자열을 날짜 객체로 변환 |
|
| 103 |
+ |
|
| 104 |
+ SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); // 원하는 출력 형식
|
|
| 105 |
+ String formattedDate = outputFormat.format(date); // 날짜 객체를 원하는 형식의 문자열로 변환 |
|
| 106 |
+ |
|
| 107 |
+ return formattedDate; // 출력: 2023-08-07 09:36 |
|
| 108 |
+ } |
|
| 109 |
+ |
|
| 110 |
+ |
|
| 111 |
+ |
|
| 88 | 112 |
} |
--- src/main/java/itn/let/mjo/apikey/web/ApiKeyMngController.java
+++ src/main/java/itn/let/mjo/apikey/web/ApiKeyMngController.java
... | ... | @@ -708,7 +708,6 @@ |
| 708 | 708 |
@RequestParam("accessNo") String p_accessNo
|
| 709 | 709 |
, Model model) throws Exception {
|
| 710 | 710 |
|
| 711 |
- System.out.println("111111111111");
|
|
| 712 | 711 |
|
| 713 | 712 |
ModelAndView modelAndView = new ModelAndView(); |
| 714 | 713 |
modelAndView.setViewName("jsonView");
|
... | ... | @@ -716,7 +715,6 @@ |
| 716 | 715 |
try {
|
| 717 | 716 |
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); |
| 718 | 717 |
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); |
| 719 |
- System.out.println("1111111111112");
|
|
| 720 | 718 |
ApiKeyVO apiKeyVO = new ApiKeyVO(); |
| 721 | 719 |
apiKeyVO.setAccessNo(p_accessNo); |
| 722 | 720 |
|
--- src/main/java/itn/let/uat/uia/web/EgovMypageRESTAPIController.java
+++ src/main/java/itn/let/uat/uia/web/EgovMypageRESTAPIController.java
... | ... | @@ -1,5 +1,6 @@ |
| 1 | 1 |
package itn.let.uat.uia.web; |
| 2 | 2 |
|
| 3 |
+import java.text.ParseException; |
|
| 3 | 4 |
import java.util.ArrayList; |
| 4 | 5 |
import java.util.List; |
| 5 | 6 |
|
... | ... | @@ -14,6 +15,7 @@ |
| 14 | 15 |
|
| 15 | 16 |
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; |
| 16 | 17 |
import itn.com.cmm.LoginVO; |
| 18 |
+import itn.com.cmm.util.DateUtil; |
|
| 17 | 19 |
import itn.com.utl.fcc.service.EgovStringUtil; |
| 18 | 20 |
import itn.let.mjo.apikey.service.ApiCallInfoMngService; |
| 19 | 21 |
import itn.let.mjo.apikey.service.ApiKeyMngService; |
... | ... | @@ -197,12 +199,26 @@ |
| 197 | 199 |
resultList = apiKeyMngService.selectApiKeyApplyStatus(apiKeyVO); |
| 198 | 200 |
System.out.println("=============");
|
| 199 | 201 |
if (resultList.size()>0) {
|
| 202 |
+ resultList.get(0).setFrstRegistPnttm(DateUtil.getChangFormatS(resultList.get(0).getFrstRegistPnttm())); |
|
| 203 |
+ resultList.get(0).setLastUpdtPnttm(DateUtil.getChangFormatS(resultList.get(0).getLastUpdtPnttm())); |
|
| 204 |
+ |
|
| 200 | 205 |
model.addAttribute("apiVO", resultList.get(0));
|
| 206 |
+ |
|
| 201 | 207 |
|
| 202 | 208 |
apiKeyVO.setAccessNo(resultList.get(0).getAccessNo()); |
| 203 | 209 |
//api call info 정보 |
| 204 | 210 |
List<ApiKeyVO> resultList_call = new ArrayList<ApiKeyVO>(); |
| 205 |
- resultList_call = apiCallInfoMngService.selectMberApiCallInfoList(apiKeyVO); |
|
| 211 |
+ resultList_call = apiCallInfoMngService.selectMberApiCallInfoList(apiKeyVO); |
|
| 212 |
+ System.out.println("!!!!!!!!!!!!!!!!!");
|
|
| 213 |
+ resultList_call.forEach(t-> {
|
|
| 214 |
+ try {
|
|
| 215 |
+ t.setFrstRegistPnttm(DateUtil.getChangFormatS(t.getFrstRegistPnttm())); |
|
| 216 |
+ } catch (ParseException e) {
|
|
| 217 |
+ // TODO Auto-generated catch block |
|
| 218 |
+ e.printStackTrace(); |
|
| 219 |
+ } |
|
| 220 |
+ }); |
|
| 221 |
+ |
|
| 206 | 222 |
model.addAttribute("apiCallInfoVOList", resultList_call);
|
| 207 | 223 |
model.addAttribute("apiCallInfoVOListSize", resultList_call.size());
|
| 208 | 224 |
|
--- src/main/webapp/WEB-INF/jsp/uss/ion/apikey/UserAPIKEYList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/apikey/UserAPIKEYList.jsp
... | ... | @@ -283,18 +283,21 @@ |
| 283 | 283 |
</td> |
| 284 | 284 |
<td> |
| 285 | 285 |
<c:choose> |
| 286 |
- <c:when test="${result.useYn eq 'Y'}">
|
|
| 286 |
+ <c:when test="${result.useYn eq 'Y' }">
|
|
| 287 | 287 |
사용중 |
| 288 | 288 |
</c:when> |
| 289 |
- <c:when test="${result.useYn eq 'A'}">
|
|
| 289 |
+ <c:when test="${result.useYn eq 'A' }">
|
|
| 290 | 290 |
승인 요청 |
| 291 | 291 |
</c:when> |
| 292 |
- <c:when test="${result.useYn eq 'N' and result.accessKey eq ''}">
|
|
| 292 |
+ <c:when test="${result.useYn eq 'N' and result.accessKey eq '' }">
|
|
| 293 | 293 |
미승인 |
| 294 | 294 |
</c:when> |
| 295 |
- <c:when test="${result.useYn eq 'N' and result.accessKey ne ''}">
|
|
| 295 |
+ <c:when test="${result.useYn eq 'N' and result.accessKey ne '' }">
|
|
| 296 | 296 |
미사용 |
| 297 |
- </c:when> |
|
| 297 |
+ </c:when> |
|
| 298 |
+ <c:when test="${result.useYn eq 'W' }">
|
|
| 299 |
+ KEY사용중지 |
|
| 300 |
+ </c:when> |
|
| 298 | 301 |
<c:otherwise> |
| 299 | 302 |
</c:otherwise> |
| 300 | 303 |
</c:choose> |
--- src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab1.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab1.jsp
... | ... | @@ -25,7 +25,7 @@ |
| 25 | 25 |
</tr> |
| 26 | 26 |
<tr> |
| 27 | 27 |
<th>프로토콜</th> |
| 28 |
- <td>HHTP/1.1</td> |
|
| 28 |
+ <td>HTTP/1.1</td> |
|
| 29 | 29 |
</tr> |
| 30 | 30 |
<tr> |
| 31 | 31 |
<th>HOST</th> |
... | ... | @@ -157,7 +157,7 @@ |
| 157 | 157 |
</tr> |
| 158 | 158 |
<tr> |
| 159 | 159 |
<td><span class="font_b">[data].msgType</span></td> |
| 160 |
- <td>메시지 타입(4 : 단문, 5 : 장문)</td> |
|
| 160 |
+ <td>메시지 타입(4 : 단문, 6 : 장문)</td> |
|
| 161 | 161 |
<td>String</td> |
| 162 | 162 |
</tr> |
| 163 | 163 |
<tr> |
--- src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab2.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab2.jsp
... | ... | @@ -95,19 +95,19 @@ |
| 95 | 95 |
<td><span class="font_b">...</span></td> |
| 96 | 96 |
<td>...</td> |
| 97 | 97 |
<td>...</td> |
| 98 |
- <td><span class="select_o">...</span></td> |
|
| 98 |
+ <td><span class="select_o">X</span></td> |
|
| 99 | 99 |
</tr> |
| 100 | 100 |
<tr> |
| 101 | 101 |
<td><span class="font_b">callTo_100</span></td> |
| 102 | 102 |
<td>수신자 번호 100</td> |
| 103 | 103 |
<td>String</td> |
| 104 |
- <td><span class="select_o">O</span></td> |
|
| 104 |
+ <td><span class="select_o">X</span></td> |
|
| 105 | 105 |
</tr> |
| 106 | 106 |
<tr> |
| 107 | 107 |
<td><span class="font_b">smsTxt_100</span></td> |
| 108 | 108 |
<td>메시지 내용 100</td> |
| 109 | 109 |
<td>String(1~2,000Byte)</td> |
| 110 |
- <td><span class="select_o">O</span></td> |
|
| 110 |
+ <td><span class="select_o">X</span></td> |
|
| 111 | 111 |
</tr> |
| 112 | 112 |
</tbody> |
| 113 | 113 |
</table> |
... | ... | @@ -168,7 +168,7 @@ |
| 168 | 168 |
</tr> |
| 169 | 169 |
<tr> |
| 170 | 170 |
<td><span class="font_b">[data].msgType</span></td> |
| 171 |
- <td>메시지 타입(4 : 단문, 5 : 장문)</td> |
|
| 171 |
+ <td>메시지 타입(4 : 단문, 6 : 장문)</td> |
|
| 172 | 172 |
<td>String</td> |
| 173 | 173 |
</tr> |
| 174 | 174 |
<tr> |
--- src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab3.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab3.jsp
... | ... | @@ -180,7 +180,7 @@ |
| 180 | 180 |
</tr> |
| 181 | 181 |
<tr> |
| 182 | 182 |
<td><span class="font_b">[data].msgType</span></td> |
| 183 |
- <td>메시지 타입(4 : 단문, 5 : 장문)</td> |
|
| 183 |
+ <td>메시지 타입(4 : 단문, 6 : 장문)</td> |
|
| 184 | 184 |
<td>String</td> |
| 185 | 185 |
</tr> |
| 186 | 186 |
<tr> |
--- src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab4.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/apiSpec_tab4.jsp
... | ... | @@ -172,7 +172,7 @@ |
| 172 | 172 |
</tr> |
| 173 | 173 |
<tr> |
| 174 | 174 |
<td><span class="font_b">[data].msgType</span></td> |
| 175 |
- <td>메시지 타입(4 : 단문, 5 : 장문)</td> |
|
| 175 |
+ <td>메시지 타입(4 : 단문, 6 : 장문)</td> |
|
| 176 | 176 |
<td>String</td> |
| 177 | 177 |
</tr> |
| 178 | 178 |
<tr> |
--- src/main/webapp/WEB-INF/jsp/web/api/appMgmt.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/appMgmt.jsp
... | ... | @@ -152,11 +152,24 @@ |
| 152 | 152 |
function fn_insert_callInfo(p_accessNo){
|
| 153 | 153 |
//frm = document.writeForm; |
| 154 | 154 |
//var p_accessNo = frm.accessNo.value; |
| 155 |
- |
|
| 155 |
+ |
|
| 156 |
+ |
|
| 157 |
+ |
|
| 158 |
+ |
|
| 159 |
+ var callInfo = $("#callInfo").val();
|
|
| 156 | 160 |
if ($("#callInfo").val()==''){
|
| 157 | 161 |
alert("호출지 정보는 필수입니다.");
|
| 158 | 162 |
return false; |
| 159 |
- } |
|
| 163 |
+ } |
|
| 164 |
+ |
|
| 165 |
+ var ipPattern = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/; |
|
| 166 |
+ |
|
| 167 |
+ |
|
| 168 |
+ if (!ipPattern.test(callInfo)) {
|
|
| 169 |
+ alert("IP 형식이 아닙니다. 다시 확인하시고 입력해 주세요");
|
|
| 170 |
+ return false; |
|
| 171 |
+ } |
|
| 172 |
+ |
|
| 160 | 173 |
|
| 161 | 174 |
$.ajax({
|
| 162 | 175 |
type: "POST", |
... | ... | @@ -378,7 +391,7 @@ |
| 378 | 391 |
</td> |
| 379 | 392 |
<td> |
| 380 | 393 |
<button type="button" class="btnType btnType23" onclick="fn_delete('${apiVO.accessNo}','W'); return false;">정지</button>
|
| 381 |
- <button type="button" class="btnType btnType14" onclick="fn_update_apikey('14'); return false;">재발급</button>
|
|
| 394 |
+ <button type="button" class="btnType btnType14" onclick="fn_update_apikey('${apiVO.accessNo}'); return false;">재발급</button>
|
|
| 382 | 395 |
</td> |
| 383 | 396 |
</c:when> |
| 384 | 397 |
<c:when test="${apiVO.useYn eq 'W' }">
|
... | ... | @@ -462,7 +475,7 @@ |
| 462 | 475 |
</c:choose> |
| 463 | 476 |
<!-- <p class="admin_info">* 대역 등록을 원하실 경우 상위 IP만 작성하시면 됩니다. ex) 192.168.255.0 ~ 192.168.255.255 대역을 등록할 경우 192.168. 255. 입력</p> --> |
| 464 | 477 |
<!-- <p class="admin_info">* 대역 등록을 원하실 경우 상위 IP만 작성하시면 됩니다. ex) 192.168.255.0 입력</p> --> |
| 465 |
- <p class="admin_info">* IP는 최대 10개까지 등록 가능합니다. 단, IP 대역은 1개의 IP로 계산합니다.</p> |
|
| 478 |
+ <p class="admin_info">* IP는 최대 10개까지 등록 가능합니다.</p> |
|
| 466 | 479 |
<!--//사용 승인 될 경우에만 노출--> |
| 467 | 480 |
</div> |
| 468 | 481 |
<!--// API 사용 IP 관리 : IP등록 전--> |
--- src/main/webapp/WEB-INF/jsp/web/api/examDown.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/examDown.jsp
... | ... | @@ -19,7 +19,7 @@ |
| 19 | 19 |
<div class="send_top"> |
| 20 | 20 |
<!-- tab button --> |
| 21 | 21 |
<c:import url="./top_tepMenu.jsp" /> |
| 22 |
- <!--// tab button --> |
|
| 22 |
+ <!--// tab button |
|
| 23 | 23 |
|
| 24 | 24 |
<div class="api_guide_cont current"> |
| 25 | 25 |
<div class="heading"> |
... | ... | @@ -68,7 +68,7 @@ |
| 68 | 68 |
<td>문자보내기(여러명에게 동일한문자)</td> |
| 69 | 69 |
</tr> |
| 70 | 70 |
<tr> |
| 71 |
- <th>sp_example_send_msgs_r1.jsp</th> |
|
| 71 |
+ <th>jsp_example_send_msgs_r1.jsp</th> |
|
| 72 | 72 |
<td>문자보내기(여러명에게 다른문자)</td> |
| 73 | 73 |
</tr> |
| 74 | 74 |
<tr> |
--- src/main/webapp/WEB-INF/jsp/web/api/intrdView.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/intrdView.jsp
... | ... | @@ -66,7 +66,8 @@ |
| 66 | 66 |
<div class="step_con"> |
| 67 | 67 |
<div class="icon"><img src="<c:url value='/publish/images/api_intro_cont/api_guide_03.jpg' />" alt="아이피(IP) 등록 아이콘"></div> |
| 68 | 68 |
<dl> |
| 69 |
- <dt>아이피<span>(IP)</span> 등록</dt> |
|
| 69 |
+<!-- <dt>아이피<span>(IP)</span> 등록</dt> --> |
|
| 70 |
+ <dt>아이피(IP) 등록</dt> |
|
| 70 | 71 |
<dd>문자 API를 통해 문자 발송 서버 IP 등록</dd> |
| 71 | 72 |
</dl> |
| 72 | 73 |
</div> |
--- src/main/webapp/sample_mjon/jsp_example_hstry_detail_r1.jsp
+++ src/main/webapp/sample_mjon/jsp_example_hstry_detail_r1.jsp
... | ... | @@ -24,8 +24,8 @@ |
| 24 | 24 |
|
| 25 | 25 |
//회원아이디, APIKEY - 보안을 위해 실제 서비스 시에는 이곳에 mberId와 apiKey 값을 적어서 사용해주세요 |
| 26 | 26 |
//실제서비스용 |
| 27 |
- final String mberId = "antelope"; //문자온 로그인 아이디 |
|
| 28 |
- final String apiKey = "5ec0a0311a7a0eb25cc9c11468ce372cd64501"; //발급받은 api key |
|
| 27 |
+ final String mberId = "dudgusw"; //문자온 로그인 아이디 |
|
| 28 |
+ final String apiKey = "59d8d714ad68ae2e24e3ae2055334e3e"; //발급받은 api ke |
|
| 29 | 29 |
|
| 30 | 30 |
//테스트용 |
| 31 | 31 |
//String mberId = request.getParameter("p_mberId"); //문자온 로그인 아이디
|
... | ... | @@ -33,7 +33,7 @@ |
| 33 | 33 |
|
| 34 | 34 |
|
| 35 | 35 |
/******************** 전송요청 URL ********************/ |
| 36 |
- final String apiUrl = "https://api.munjaon.co.kr/api/inqry/hstryDetail"; // 전송요청 URL |
|
| 36 |
+ final String apiUrl = "http://localhost:8088/api/inqry/hstryDetail"; // 전송요청 URL |
|
| 37 | 37 |
|
| 38 | 38 |
// String apiUrl = "https://apidev.munjaon.co.kr:9998/api/inqry/hstryDetail"; |
| 39 | 39 |
/**************** 발송가능건수 예제 ******************/ |
--- src/main/webapp/sample_mjon/jsp_example_hstry_r1.jsp
+++ src/main/webapp/sample_mjon/jsp_example_hstry_r1.jsp
... | ... | @@ -24,8 +24,8 @@ |
| 24 | 24 |
|
| 25 | 25 |
//회원아이디, APIKEY - 보안을 위해 실제 서비스 시에는 이곳에 mberId와 apiKey 값을 적어서 사용해주세요 |
| 26 | 26 |
//실제서비스용 |
| 27 |
- final String mberId = "antelope"; //문자온 로그인 아이디 |
|
| 28 |
- final String apiKey = "5ec0a0311a7a0eb25cc9c11468ce372cd64501"; //발급받은 api key |
|
| 27 |
+ final String mberId = "dudgusw"; //문자온 로그인 아이디 |
|
| 28 |
+ final String apiKey = "59d8d714ad68ae2e24e3ae2055334e3e"; //발급받은 api ke |
|
| 29 | 29 |
|
| 30 | 30 |
//테스트용 |
| 31 | 31 |
//String mberId = request.getParameter("p_mberId"); //문자온 로그인 아이디
|
... | ... | @@ -33,7 +33,7 @@ |
| 33 | 33 |
|
| 34 | 34 |
|
| 35 | 35 |
/******************** 전송요청 URL ********************/ |
| 36 |
- final String apiUrl = "https://api.munjaon.co.kr/api/inqry/hstry"; |
|
| 36 |
+ final String apiUrl = "http://localhost:8088/api/inqry/hstry"; |
|
| 37 | 37 |
|
| 38 | 38 |
/**************** 발송가능건수 예제 ******************/ |
| 39 | 39 |
System.out.println("전체발송이력");
|
--- src/main/webapp/sample_mjon/jsp_example_select_price_r1.jsp
+++ src/main/webapp/sample_mjon/jsp_example_select_price_r1.jsp
... | ... | @@ -25,7 +25,7 @@ |
| 25 | 25 |
//회원아이디, APIKEY - 보안을 위해 실제 서비스 시에는 이곳에 mberId와 apiKey 값을 적어서 사용해주세요 |
| 26 | 26 |
//실제서비스용 |
| 27 | 27 |
final String mberId = "antelope"; //문자온 로그인 아이디 |
| 28 |
- final String apiKey = "5ec0a0311a7a0eb25cc9c11468ce372cd64501"; //발급받은 api key |
|
| 28 |
+ final String apiKey = "59d8d714ad68ae2e24e3ae2055334e3e"; //발급받은 api key |
|
| 29 | 29 |
|
| 30 | 30 |
|
| 31 | 31 |
//테스트용 |
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?