feat: API 치환 데이터가 lms / sms 와 같이 문자 발송이 다를때 그룹아이디도 따로 받을 수 있게 개선
@1ac01fa8bf9ecce1a7c5bd8f3f6ee1318f36a193
--- src/main/java/itn/let/fax/user/web/FaxRestController.java
+++ src/main/java/itn/let/fax/user/web/FaxRestController.java
... | ... | @@ -198,7 +198,7 @@ |
| 198 | 198 |
|
| 199 | 199 |
} |
| 200 | 200 |
|
| 201 |
- |
|
| 201 |
+ |
|
| 202 | 202 |
|
| 203 | 203 |
|
| 204 | 204 |
} |
+++ src/main/java/itn/let/mjo/test/service/TestVO.java
... | ... | @@ -0,0 +1,18 @@ |
| 1 | +package itn.let.mjo.test.service; | |
| 2 | + | |
| 3 | +public class TestVO { | |
| 4 | + | |
| 5 | + private String fileNm; | |
| 6 | + | |
| 7 | + public String getFileNm() { | |
| 8 | + return fileNm; | |
| 9 | + } | |
| 10 | + | |
| 11 | + public void setFileNm(String fileNm) { | |
| 12 | + this.fileNm = fileNm; | |
| 13 | + } | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | +} |
--- src/main/java/itn/let/mjo/test/web/TestController.java
+++ src/main/java/itn/let/mjo/test/web/TestController.java
... | ... | @@ -1,7 +1,16 @@ |
| 1 | 1 |
package itn.let.mjo.test.web; |
| 2 | 2 |
|
| 3 |
+import java.awt.image.BufferedImage; |
|
| 4 |
+import java.io.File; |
|
| 5 |
+import java.io.IOException; |
|
| 6 |
+import java.io.UnsupportedEncodingException; |
|
| 3 | 7 |
import java.math.BigDecimal; |
| 4 | 8 |
import java.math.RoundingMode; |
| 9 |
+import java.net.URLEncoder; |
|
| 10 |
+import java.nio.charset.StandardCharsets; |
|
| 11 |
+import java.nio.file.Files; |
|
| 12 |
+import java.nio.file.Path; |
|
| 13 |
+import java.nio.file.Paths; |
|
| 5 | 14 |
import java.text.SimpleDateFormat; |
| 6 | 15 |
import java.time.LocalDateTime; |
| 7 | 16 |
import java.util.ArrayList; |
... | ... | @@ -13,25 +22,42 @@ |
| 13 | 22 |
import java.util.Map; |
| 14 | 23 |
|
| 15 | 24 |
import javax.annotation.Resource; |
| 25 |
+import javax.imageio.ImageIO; |
|
| 26 |
+import javax.mail.internet.ContentDisposition; |
|
| 16 | 27 |
import javax.servlet.http.HttpServletRequest; |
| 17 | 28 |
import javax.servlet.http.HttpServletResponse; |
| 18 | 29 |
import javax.servlet.http.HttpSession; |
| 19 | 30 |
|
| 31 |
+import org.apache.commons.lang.StringUtils; |
|
| 32 |
+import org.apache.pdfbox.pdmodel.PDDocument; |
|
| 33 |
+import org.apache.pdfbox.rendering.ImageType; |
|
| 34 |
+import org.apache.pdfbox.rendering.PDFRenderer; |
|
| 20 | 35 |
import org.slf4j.Logger; |
| 21 | 36 |
import org.slf4j.LoggerFactory; |
| 22 | 37 |
import org.springframework.beans.factory.annotation.Autowired; |
| 23 | 38 |
import org.springframework.beans.factory.annotation.Value; |
| 39 |
+import org.springframework.core.env.SystemEnvironmentPropertySource; |
|
| 40 |
+import org.springframework.core.io.ByteArrayResource; |
|
| 41 |
+import org.springframework.core.io.FileSystemResource; |
|
| 42 |
+import org.springframework.http.HttpEntity; |
|
| 43 |
+import org.springframework.http.HttpHeaders; |
|
| 44 |
+import org.springframework.http.HttpMethod; |
|
| 24 | 45 |
import org.springframework.http.HttpStatus; |
| 46 |
+import org.springframework.http.MediaType; |
|
| 25 | 47 |
import org.springframework.http.ResponseEntity; |
| 26 | 48 |
import org.springframework.stereotype.Controller; |
| 27 | 49 |
import org.springframework.ui.ModelMap; |
| 50 |
+import org.springframework.util.LinkedMultiValueMap; |
|
| 51 |
+import org.springframework.util.MultiValueMap; |
|
| 28 | 52 |
import org.springframework.web.bind.annotation.ModelAttribute; |
| 29 | 53 |
import org.springframework.web.bind.annotation.RequestBody; |
| 30 | 54 |
import org.springframework.web.bind.annotation.RequestMapping; |
| 55 |
+import org.springframework.web.client.RestTemplate; |
|
| 31 | 56 |
import org.springframework.web.multipart.MultipartFile; |
| 32 | 57 |
import org.springframework.web.multipart.MultipartHttpServletRequest; |
| 33 | 58 |
import org.springframework.web.servlet.ModelAndView; |
| 34 | 59 |
import org.springframework.web.servlet.mvc.support.RedirectAttributes; |
| 60 |
+import org.springframework.web.util.UriUtils; |
|
| 35 | 61 |
|
| 36 | 62 |
import egovframework.rte.fdl.idgnr.EgovIdGnrService; |
| 37 | 63 |
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; |
... | ... | @@ -82,6 +108,7 @@ |
| 82 | 108 |
import itn.let.utl.user.service.CheckFileUtil; |
| 83 | 109 |
import itn.let.utl.user.service.CheckLoginUtil; |
| 84 | 110 |
import itn.let.utl.user.service.CheckNoServiceCommon; |
| 111 |
+ |
|
| 85 | 112 |
|
| 86 | 113 |
@Controller |
| 87 | 114 |
public class TestController {
|
... | ... | @@ -1909,6 +1936,8 @@ |
| 1909 | 1936 |
//일괄변환에 의한 단문, 장문 별개로 전송을 했기 때문에 각각 전송 결과 건수를 합쳐준 후 결과를 modelAndView로 리턴해준다. |
| 1910 | 1937 |
String returnMessage = ""; |
| 1911 | 1938 |
String returnStatus = ""; |
| 1939 |
+ String msgGroupIdListComma = ""; |
|
| 1940 |
+ String msgTypeListComma = ""; |
|
| 1912 | 1941 |
|
| 1913 | 1942 |
//그림 결과 내용 |
| 1914 | 1943 |
if(!returnImgMap.isEmpty()) {
|
... | ... | @@ -1925,6 +1954,7 @@ |
| 1925 | 1954 |
|
| 1926 | 1955 |
returnMessage = returnImgMap.get("message");
|
| 1927 | 1956 |
returnStatus = returnImgMap.get("result");
|
| 1957 |
+ msgGroupIdListComma = returnImgMap.get("msgGroupId");
|
|
| 1928 | 1958 |
|
| 1929 | 1959 |
}else {
|
| 1930 | 1960 |
returnMessage = returnImgMap.get("message");
|
... | ... | @@ -1955,6 +1985,12 @@ |
| 1955 | 1985 |
|
| 1956 | 1986 |
returnMessage = returnLongMap.get("message");
|
| 1957 | 1987 |
returnStatus = returnLongMap.get("result");
|
| 1988 |
+ msgGroupIdListComma = StringUtils.isNotEmpty(msgGroupIdListComma) |
|
| 1989 |
+ ? msgGroupIdListComma+","+returnLongMap.get("msgGroupId")
|
|
| 1990 |
+ : returnLongMap.get("msgGroupId");
|
|
| 1991 |
+ msgTypeListComma = StringUtils.isNotEmpty(msgTypeListComma) |
|
| 1992 |
+ ? msgTypeListComma+","+"6" |
|
| 1993 |
+ : "6"; |
|
| 1958 | 1994 |
|
| 1959 | 1995 |
}else {
|
| 1960 | 1996 |
returnMessage = returnLongMap.get("message");
|
... | ... | @@ -1985,6 +2021,12 @@ |
| 1985 | 2021 |
|
| 1986 | 2022 |
returnMessage = returnShortMap.get("message");
|
| 1987 | 2023 |
returnStatus = returnShortMap.get("result");
|
| 2024 |
+ msgGroupIdListComma = StringUtils.isNotEmpty(msgGroupIdListComma) |
|
| 2025 |
+ ? msgGroupIdListComma+","+returnShortMap.get("msgGroupId")
|
|
| 2026 |
+ : returnShortMap.get("msgGroupId");
|
|
| 2027 |
+ msgTypeListComma = StringUtils.isNotEmpty(msgTypeListComma) |
|
| 2028 |
+ ? msgTypeListComma+","+"4" |
|
| 2029 |
+ : "4"; |
|
| 1988 | 2030 |
|
| 1989 | 2031 |
}else {
|
| 1990 | 2032 |
returnMessage = returnShortMap.get("message");
|
... | ... | @@ -2000,8 +2042,8 @@ |
| 2000 | 2042 |
|
| 2001 | 2043 |
} |
| 2002 | 2044 |
|
| 2003 |
- modelAndView.addObject("msgType", mjonMsgVO.getMsgType());
|
|
| 2004 |
- modelAndView.addObject("msgGroupId", mjonMsgVO.getMsgGroupId());
|
|
| 2045 |
+ modelAndView.addObject("msgType", msgTypeListComma);
|
|
| 2046 |
+ modelAndView.addObject("msgGroupId", msgGroupIdListComma);
|
|
| 2005 | 2047 |
modelAndView.addObject("message", returnMessage);
|
| 2006 | 2048 |
modelAndView.addObject("result", returnStatus);
|
| 2007 | 2049 |
modelAndView.addObject("resultSts", resultSts);
|
... | ... | @@ -2545,7 +2587,7 @@ |
| 2545 | 2587 |
} |
| 2546 | 2588 |
|
| 2547 | 2589 |
System.out.println("=========================================================================");
|
| 2548 |
- System.out.println("+++++++++++++++++++++++++++++++++++++++++++ resultSts ::: " + resultSts);
|
|
| 2590 |
+ System.out.println(" 25xx +++++++++++++++++++++++++++++++++++++++++++ resultSts ::: " + resultSts);
|
|
| 2549 | 2591 |
System.out.println("=========================================================================");
|
| 2550 | 2592 |
|
| 2551 | 2593 |
try {
|
... | ... | @@ -2645,6 +2687,8 @@ |
| 2645 | 2687 |
|
| 2646 | 2688 |
returnMap.put("message", "문자 전송이 완료되었습니다.");
|
| 2647 | 2689 |
returnMap.put("result", "success");
|
| 2690 |
+ returnMap.put("msgGroupId", mjonMsgVO.getMsgGroupId());
|
|
| 2691 |
+ returnMap.put("resultSts", Integer.toString(resultSts));
|
|
| 2648 | 2692 |
returnMap.put("resultSts", Integer.toString(resultSts));
|
| 2649 | 2693 |
returnMap.put("resultBlockSts", Integer.toString(resultBlockSts));
|
| 2650 | 2694 |
return returnMap; |
... | ... | @@ -3038,9 +3082,198 @@ |
| 3038 | 3082 |
|
| 3039 | 3083 |
|
| 3040 | 3084 |
|
| 3085 |
+ |
|
| 3086 |
+ @RequestMapping(value= {"/web/user/login/fileTest.do"})
|
|
| 3087 |
+ public void downloadAndSaveFile() throws Exception {
|
|
| 3088 |
+ |
|
| 3089 |
+ String downloadUrl = "http://192.168.0.11:5000/converHWPtoPDF"; |
|
| 3090 |
+ String filePath = "D:\\Development\\test_dev"; |
|
| 3091 |
+ String fileNm = "저작권분쟁조정규칙(20220516)"; |
|
| 3092 |
+// String fileNm = "testFileName(20220516)"; |
|
| 3093 |
+ String fileExt = ".pdf"; |
|
| 3094 |
+ String cnvtfileExt = ".jpg"; |
|
| 3095 |
+ |
|
| 3096 |
+ |
|
| 3097 |
+ |
|
| 3098 |
+ byte[] fileData = fileSendAnddownloadFile(downloadUrl, filePath + File.separator + fileNm + ".hwp"); |
|
| 3099 |
+// byte[] fileData = downloadFile(downloadUrl, fileNm); |
|
| 3100 |
+ this.saveFile(fileData, filePath, fileNm+fileExt); |
|
| 3101 |
+ this.pdfToJpg(filePath, fileNm, fileExt, cnvtfileExt); |
|
| 3102 |
+ } |
|
| 3103 |
+ |
|
| 3104 |
+ /** |
|
| 3105 |
+ * @methodName : fileSendAnddownloadFile |
|
| 3106 |
+ * @author : 이호영 |
|
| 3107 |
+ * @date : 2023.08.04 |
|
| 3108 |
+ * @description : 파일을 보내서 PFD로 변환한 파일을 받는다 |
|
| 3109 |
+ * @param downloadUrl |
|
| 3110 |
+ * @param filePathNm |
|
| 3111 |
+ * @return |
|
| 3112 |
+ * @throws IOException |
|
| 3113 |
+ */ |
|
| 3114 |
+ public byte[] fileSendAnddownloadFile(String downloadUrl, String filePathNm) throws IOException {
|
|
| 3115 |
+ RestTemplate restTemplate = new RestTemplate(); |
|
| 3116 |
+ |
|
| 3117 |
+ HttpHeaders headers = new HttpHeaders(); |
|
| 3118 |
+ headers.setContentType(MediaType.MULTIPART_FORM_DATA); |
|
| 3119 |
+ |
|
| 3120 |
+ // Create a ByteArrayResource to wrap the file content without relying on the file system |
|
| 3121 |
+ FileSystemResource fileResource = new FileSystemResource(filePathNm); |
|
| 3122 |
+ |
|
| 3123 |
+ // To ensure correct encoding for non-ASCII characters |
|
| 3124 |
+ String encodedFilename = UriUtils.encode(fileResource.getFilename(), "UTF-8"); |
|
| 3125 |
+ |
|
| 3126 |
+ // Create a new HttpEntity for file and use encoded filename |
|
| 3127 |
+ MultiValueMap<String, Object> body = new LinkedMultiValueMap<>(); |
|
| 3128 |
+ body.add("file", new ByteArrayResource(Files.readAllBytes(fileResource.getFile().toPath())) {
|
|
| 3129 |
+ @Override |
|
| 3130 |
+ public String getFilename() {
|
|
| 3131 |
+ return encodedFilename; |
|
| 3132 |
+ } |
|
| 3133 |
+ }); |
|
| 3134 |
+ |
|
| 3135 |
+ |
|
| 3136 |
+ |
|
| 3137 |
+ HttpEntity<MultiValueMap<String, Object>> entity = new HttpEntity<>(body, headers); |
|
| 3138 |
+ |
|
| 3139 |
+ ResponseEntity<byte[]> responseEntity = restTemplate.exchange(downloadUrl, HttpMethod.POST, entity, byte[].class); |
|
| 3140 |
+ |
|
| 3141 |
+ if (responseEntity.getStatusCodeValue() == 200) {
|
|
| 3142 |
+ return responseEntity.getBody(); |
|
| 3143 |
+ } else {
|
|
| 3144 |
+ throw new RuntimeException("Failed to download file from " + downloadUrl);
|
|
| 3145 |
+ } |
|
| 3146 |
+ } |
|
| 3147 |
+ |
|
| 3148 |
+ /** |
|
| 3149 |
+ * @methodName : downloadFile |
|
| 3150 |
+ * @author : 이호영 |
|
| 3151 |
+ * @date : 2023.08.04 |
|
| 3152 |
+ * @description : 서버에 파일을 요청해서 받는 형식 |
|
| 3153 |
+ * @param downloadUrl |
|
| 3154 |
+ * @param fileNm |
|
| 3155 |
+ * @return |
|
| 3156 |
+ public byte[] downloadFile(String downloadUrl, String fileNm) {
|
|
| 3157 |
+ RestTemplate restTemplate = new RestTemplate(); |
|
| 3158 |
+ |
|
| 3159 |
+ |
|
| 3160 |
+ HttpHeaders headers = new HttpHeaders(); |
|
| 3161 |
+ headers.setContentType(MediaType.MULTIPART_FORM_DATA); |
|
| 3162 |
+ |
|
| 3163 |
+ MultiValueMap<String, String> body = new LinkedMultiValueMap<>(); |
|
| 3164 |
+ body.add("fileNm", fileNm);
|
|
| 3165 |
+ HttpEntity<MultiValueMap<String, String>> entity = new HttpEntity<>(body, headers); |
|
| 3166 |
+ |
|
| 3167 |
+ |
|
| 3168 |
+ ResponseEntity<byte[]> responseEntity = restTemplate.exchange(downloadUrl, HttpMethod.POST, entity, byte[].class); |
|
| 3169 |
+ |
|
| 3170 |
+// System.out.println("responseEntity :: "+ responseEntity);
|
|
| 3171 |
+ if (responseEntity.getStatusCodeValue() == 200) {
|
|
| 3172 |
+ return responseEntity.getBody(); |
|
| 3173 |
+ } else {
|
|
| 3174 |
+ throw new RuntimeException("Failed to download file from " + downloadUrl);
|
|
| 3175 |
+ } |
|
| 3176 |
+ } |
|
| 3177 |
+ */ |
|
| 3041 | 3178 |
|
| 3042 | 3179 |
|
| 3180 |
+ /** |
|
| 3181 |
+ * @methodName : saveFile |
|
| 3182 |
+ * @author : 이호영 |
|
| 3183 |
+ * @date : 2023.08.04 |
|
| 3184 |
+ * @description : 파일 저장 |
|
| 3185 |
+ * @param fileData |
|
| 3186 |
+ * @param filePath |
|
| 3187 |
+ * @param fileNm |
|
| 3188 |
+ */ |
|
| 3189 |
+ public void saveFile(byte[] fileData, String filePath, String fileNm) {
|
|
| 3190 |
+ Path path = Paths.get(filePath, fileNm); |
|
| 3191 |
+ |
|
| 3192 |
+ try {
|
|
| 3193 |
+ Files.write(path, fileData); |
|
| 3194 |
+ } catch (IOException e) {
|
|
| 3195 |
+ throw new RuntimeException("Failed to save file to " + filePath, e);
|
|
| 3196 |
+ } |
|
| 3197 |
+ } |
|
| 3043 | 3198 |
|
| 3044 | 3199 |
|
| 3200 |
+ /** |
|
| 3201 |
+ * @methodName : pdfToJpg |
|
| 3202 |
+ * @author : 이호영 |
|
| 3203 |
+ * @date : 2023.08.04 |
|
| 3204 |
+ * @description : 저장한 파일을 불러와서 파일명의 폴더를 생성하여 jpg로 저장 |
|
| 3205 |
+ * @param filePath |
|
| 3206 |
+ * @param fileNm |
|
| 3207 |
+ * @param oriFileExt |
|
| 3208 |
+ * @param cnvtfileExt |
|
| 3209 |
+ * @throws Exception |
|
| 3210 |
+ */ |
|
| 3211 |
+ public void pdfToJpg(String filePath, String fileNm, String oriFileExt, String cnvtfileExt) throws Exception {
|
|
| 3212 |
+ |
|
| 3213 |
+ File file = new File(filePath + File.separator + fileNm + oriFileExt); |
|
| 3214 |
+ PDDocument document = PDDocument.load(file); |
|
| 3215 |
+ try {
|
|
| 3216 |
+ |
|
| 3217 |
+ int pageCount = document.getNumberOfPages(); |
|
| 3218 |
+ PDFRenderer pdfRenderer = new PDFRenderer(document); |
|
| 3219 |
+ |
|
| 3220 |
+ System.out.println("pageCount : "+ pageCount);
|
|
| 3221 |
+ |
|
| 3222 |
+ String saveFilePath = this.filePathChk(filePath + File.separator +fileNm); |
|
| 3223 |
+ |
|
| 3224 |
+ if(StringUtils.isNotEmpty(saveFilePath)) |
|
| 3225 |
+ {
|
|
| 3226 |
+ |
|
| 3227 |
+ for (int i = 0; i < pageCount; i++) {
|
|
| 3228 |
+ |
|
| 3229 |
+ BufferedImage imageObj = pdfRenderer.renderImageWithDPI(i, 100, ImageType.RGB); |
|
| 3230 |
+ File outputfile = new File(saveFilePath + File.separator + fileNm + i + cnvtfileExt); |
|
| 3231 |
+ ImageIO.write(imageObj, "jpg", outputfile); |
|
| 3232 |
+ } |
|
| 3233 |
+ } |
|
| 3234 |
+ |
|
| 3235 |
+ |
|
| 3236 |
+ } catch (Exception e) {
|
|
| 3237 |
+ e.printStackTrace(); |
|
| 3238 |
+ // TODO: handle exception |
|
| 3239 |
+ }finally {
|
|
| 3240 |
+ if (document != null) {
|
|
| 3241 |
+ document.close(); |
|
| 3242 |
+ } |
|
| 3243 |
+ } |
|
| 3244 |
+ |
|
| 3245 |
+ } |
|
| 3246 |
+ |
|
| 3247 |
+ /** |
|
| 3248 |
+ * @methodName : filePathChk |
|
| 3249 |
+ * @author : 이호영 |
|
| 3250 |
+ * @date : 2023.08.04 |
|
| 3251 |
+ * @description : jpg 파일 저장할 디렉토리 생성 |
|
| 3252 |
+ * @param filePath |
|
| 3253 |
+ * @return |
|
| 3254 |
+ */ |
|
| 3255 |
+ private String filePathChk(String filePath) {
|
|
| 3256 |
+ // TODO Auto-generated method stub |
|
| 3257 |
+ String directoryPath = filePath; |
|
| 3258 |
+ |
|
| 3259 |
+ Path path = Paths.get(directoryPath); |
|
| 3260 |
+ |
|
| 3261 |
+ if (!Files.exists(path)) {
|
|
| 3262 |
+ try {
|
|
| 3263 |
+ |
|
| 3264 |
+ Files.createDirectories(path); |
|
| 3265 |
+ System.out.println("Directory created");
|
|
| 3266 |
+ return directoryPath; |
|
| 3267 |
+ } catch (IOException e) {
|
|
| 3268 |
+ throw new RuntimeException("Failed to create directory!", e);
|
|
| 3269 |
+ } |
|
| 3270 |
+ } else {
|
|
| 3271 |
+ System.out.println("Directory already exists");
|
|
| 3272 |
+ } |
|
| 3273 |
+ |
|
| 3274 |
+ return null; |
|
| 3275 |
+ |
|
| 3276 |
+ } |
|
| 3277 |
+ |
|
| 3045 | 3278 |
|
| 3046 | 3279 |
} |
--- src/main/webapp/WEB-INF/jsp/uss/ion/apikey/UserAPIKEYModify.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/apikey/UserAPIKEYModify.jsp
... | ... | @@ -649,8 +649,10 @@ |
| 649 | 649 |
</c:if> |
| 650 | 650 |
|
| 651 | 651 |
<c:if test="${apiKeyVO.useYn eq 'Y'}">
|
| 652 |
- <input type="button" class="btnType2 bg_888888" value="API KEY 미사용 처리" id="btn_fn_delete" |
|
| 652 |
+ <input type="button" class="btnType2 bg_888888" value="API 미사용 처리" id="btn_fn_delete" |
|
| 653 | 653 |
onclick="fn_delete('N'); return false;">
|
| 654 |
+ <input type="button" class="btnType2 bg_888888" value="API KEY 중지 처리" id="btn_fn_delete" |
|
| 655 |
+ onclick="fn_delete('W'); return false;">
|
|
| 654 | 656 |
<input type="button" class="btnType2 bg_888888" value="API 승인요청상태로" id="btn_fn_delete" |
| 655 | 657 |
onclick="fn_delete('A'); return false;">
|
| 656 | 658 |
</c:if> |
... | ... | @@ -667,6 +669,10 @@ |
| 667 | 669 |
onclick="fn_delete('Y'); return false;">
|
| 668 | 670 |
</c:if> |
| 669 | 671 |
|
| 672 |
+ <c:if test="${apiKeyVO.useYn eq 'W'}">
|
|
| 673 |
+ <input type="button" class="btnType2 bg_888888" value="API KEY 사용 처리" id="btn_fn_delete" |
|
| 674 |
+ onclick="fn_delete('Y'); return false;">
|
|
| 675 |
+ </c:if> |
|
| 670 | 676 |
<input type="button" class="btnType2 bg_888888" value="API KEY 사용자 삭제(실제)" id="btn_fn_delete" |
| 671 | 677 |
onclick="fn_delete_real(); return false;"> |
| 672 | 678 |
|
--- src/main/webapp/WEB-INF/jsp/web/api/appMgmt.jsp
+++ src/main/webapp/WEB-INF/jsp/web/api/appMgmt.jsp
... | ... | @@ -322,7 +322,7 @@ |
| 322 | 322 |
<button type="button" class="btnType btnType14" onclick="fn_delete('${apiVO.accessNo}','A'); return false;">재신청</button>
|
| 323 | 323 |
</td> |
| 324 | 324 |
</c:when> |
| 325 |
- <c:when test="${apiVO.useYn eq 'Y' or (apiVO.useYn eq 'N' and apiVO.accessKey ne '')}"><!-- API 사용 중 -->
|
|
| 325 |
+ <c:when test="${apiVO.useYn eq 'Y' or (apiVO.useYn eq 'N' and apiVO.accessKey ne '') or apiVO.useYn eq 'W' }"><!-- API 사용 중 -->
|
|
| 326 | 326 |
<td>${apiVO.frstRegistPnttm}</td>
|
| 327 | 327 |
<td>${apiVO.lastUpdtPnttm}</td>
|
| 328 | 328 |
<td>승인</td> |
... | ... | @@ -366,7 +366,7 @@ |
| 366 | 366 |
<tbody> |
| 367 | 367 |
<tr> |
| 368 | 368 |
<c:choose> |
| 369 |
- <c:when test="${apiVO.useYn eq 'Y'}">
|
|
| 369 |
+ <c:when test="${apiVO.useYn eq 'Y' }">
|
|
| 370 | 370 |
<td> |
| 371 | 371 |
${apiVO.lastUpdtPnttm}
|
| 372 | 372 |
</td> |
... | ... | @@ -377,11 +377,11 @@ |
| 377 | 377 |
사용 |
| 378 | 378 |
</td> |
| 379 | 379 |
<td> |
| 380 |
- <button type="button" class="btnType btnType23" onclick="fn_delete('${apiVO.accessNo}','N'); return false;">정지</button>
|
|
| 380 |
+ <button type="button" class="btnType btnType23" onclick="fn_delete('${apiVO.accessNo}','W'); return false;">정지</button>
|
|
| 381 | 381 |
<button type="button" class="btnType btnType14" onclick="fn_update_apikey('14'); return false;">재발급</button>
|
| 382 | 382 |
</td> |
| 383 | 383 |
</c:when> |
| 384 |
- <%-- <c:when test="${apiVO.useYn eq 'N'}">
|
|
| 384 |
+ <c:when test="${apiVO.useYn eq 'W' }">
|
|
| 385 | 385 |
<td> |
| 386 | 386 |
${apiVO.lastUpdtPnttm}
|
| 387 | 387 |
</td> |
... | ... | @@ -392,10 +392,9 @@ |
| 392 | 392 |
미사용 |
| 393 | 393 |
</td> |
| 394 | 394 |
<td> |
| 395 |
- <button type="button" class="btnType btnType23" onclick="fn_delete('${apiVO.accessNo}','Y'); return false;">사용처리</button>
|
|
| 396 |
- <button type="button" class="btnType btnType14" onclick="fn_update_apikey('${apiVO.accessNo}'); return false;">재발급</button>
|
|
| 395 |
+ <button type="button" class="btnType btnType14" onclick="fn_delete('${apiVO.accessNo}','Y'); return false;">사용</button>
|
|
| 397 | 396 |
</td> |
| 398 |
- </c:when> --%> |
|
| 397 |
+ </c:when> |
|
| 399 | 398 |
<c:otherwise> |
| 400 | 399 |
<td colspan="4">API KEY 발급 내역이 없습니다.</td> |
| 401 | 400 |
</c:otherwise> |
... | ... | @@ -427,7 +426,7 @@ |
| 427 | 426 |
</thead> |
| 428 | 427 |
<tbody> |
| 429 | 428 |
<c:choose> |
| 430 |
- <c:when test="${apiVO.useYn eq 'Y' or apiVO.useYn eq 'N'}">
|
|
| 429 |
+ <c:when test="${apiVO.useYn eq 'Y' or apiVO.useYn eq 'N' or apiVO.useYn eq 'W'}">
|
|
| 431 | 430 |
<c:forEach var="result" items="${apiCallInfoVOList}" varStatus="status">
|
| 432 | 431 |
<tr> |
| 433 | 432 |
<td>${result.frstRegistPnttm}</td>
|
... | ... | @@ -461,8 +460,9 @@ |
| 461 | 460 |
<!-- <p class="admin_info">* IP는 10개 까지만 등록 가능합니다.</p> --> |
| 462 | 461 |
</c:otherwise> |
| 463 | 462 |
</c:choose> |
| 464 |
- <p class="admin_info">* 대역 등록을 원하실 경우 상위 IP만 작성하시면 됩니다. ex) 92.168.255.0 ~ 192.168.255.255 대역을 등록할 경우 192.168. 255. 입력</p> |
|
| 465 |
- <p class="admin_info">* IP는 최대 10개까지 등록 가능합니다. 단, IP 대역은 1개의 IP로 계산합니다.<c:out value="${apiCallInfoVOListSize }" /></p>
|
|
| 463 |
+<!-- <p class="admin_info">* 대역 등록을 원하실 경우 상위 IP만 작성하시면 됩니다. ex) 192.168.255.0 ~ 192.168.255.255 대역을 등록할 경우 192.168. 255. 입력</p> --> |
|
| 464 |
+<!-- <p class="admin_info">* 대역 등록을 원하실 경우 상위 IP만 작성하시면 됩니다. ex) 192.168.255.0 입력</p> --> |
|
| 465 |
+ <p class="admin_info">* IP는 최대 10개까지 등록 가능합니다. 단, IP 대역은 1개의 IP로 계산합니다.</p> |
|
| 466 | 466 |
<!--//사용 승인 될 경우에만 노출--> |
| 467 | 467 |
</div> |
| 468 | 468 |
<!--// API 사용 IP 관리 : IP등록 전--> |
--- src/main/webapp/sample_mjon/jsp_example_send_msg_r1.jsp
+++ src/main/webapp/sample_mjon/jsp_example_send_msg_r1.jsp
... | ... | @@ -25,7 +25,7 @@ |
| 25 | 25 |
//회원아이디, APIKEY - 보안을 위해 실제 서비스 시에는 이곳에 mberId와 apiKey 값을 적어서 사용 |
| 26 | 26 |
//실제서비스용 |
| 27 | 27 |
final String mberId = "dudgusw"; //문자온 로그인 아이디 |
| 28 |
- final String apiKey = "769089bdd0363e0d0b1d20761a8d013bd"; //발급받은 api ke |
|
| 28 |
+ final String apiKey = "0096519c62100b9eea77c040a6045c"; //발급받은 api ke |
|
| 29 | 29 |
|
| 30 | 30 |
|
| 31 | 31 |
//테스트용 |
--- src/main/webapp/sample_mjon/jsp_example_send_msgs_r1.jsp
+++ src/main/webapp/sample_mjon/jsp_example_send_msgs_r1.jsp
... | ... | @@ -25,7 +25,7 @@ |
| 25 | 25 |
//회원아이디, APIKEY - 보안을 위해 실제 서비스 시에는 이곳에 mberId와 apiKey 값을 적어서 사용 |
| 26 | 26 |
//실제서비스용 |
| 27 | 27 |
final String mberId = "dudgusw"; //문자온 로그인 아이디 |
| 28 |
- final String apiKey = "769089bdd0363e0d0b1d20761a8d013bd"; //발급받은 api key |
|
| 28 |
+ final String apiKey = "0096519c62100b9eea77c040a6045c"; //발급받은 api ke |
|
| 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?