Merge branch 'jenkins_with_weblogic' of ssh://git@192.168.240.178:18081/eapim/eapim-admin.git into jenkins_with_weblogic

This commit is contained in:
Yunsam.Eo
2025-11-07 17:26:35 +09:00
3 changed files with 98 additions and 16 deletions
@@ -427,7 +427,7 @@
if('Y' == data.transformYn){ if('Y' == data.transformYn){
$('#toggleTransformYn').bootstrapToggle('on'); $('#toggleTransformYn').bootstrapToggle('on');
} }
if('Y' == data.sinYn){ if('Y' == data.simYn){
$('#toggleSimYn').bootstrapToggle('on'); $('#toggleSimYn').bootstrapToggle('on');
} }
if('Y' == data.apiEnabledYn){ if('Y' == data.apiEnabledYn){
@@ -1317,6 +1317,7 @@
<button type="button" class="cssbtn" id="btn_modify" level="R" status="DETAIL,NEW"><i class="material-icons">save</i> <%= localeMessage.getString("button.modify") %></button> <button type="button" class="cssbtn" id="btn_modify" level="R" status="DETAIL,NEW"><i class="material-icons">save</i> <%= localeMessage.getString("button.modify") %></button>
<button type="button" class="cssbtn" id="btn_api_spec" level="R" status="DETAIL,NEW"><i class="material-icons">description</i> API 스펙</button> <button type="button" class="cssbtn" id="btn_api_spec" level="R" status="DETAIL,NEW"><i class="material-icons">description</i> API 스펙</button>
<button type="button" class="cssbtn" id="btn_previous" level="R" status="DETAIL,NEW"><i class="material-icons">arrow_back</i> <%= localeMessage.getString("button.previous") %></button> <button type="button" class="cssbtn" id="btn_previous" level="R" status="DETAIL,NEW"><i class="material-icons">arrow_back</i> <%= localeMessage.getString("button.previous") %></button>
<%-- <button type="button" class="cssbtn" id="btn_excel_export" level="R" status="DETAIL"><i class="material-icons">table_view</i> <%= localeMessage.getString("button.excel") %></button> --%>
</div> </div>
<div class="title" id="title" style="font-size:1.4em">${rmsMenuName}</div> <div class="title" id="title" style="font-size:1.4em">${rmsMenuName}</div>
<form id="ajaxForm" <form id="ajaxForm"
@@ -1360,7 +1361,7 @@
</div> </div>
</div> </div>
<div class="form-group col-md-6"> <div class="form-group col-md-5">
<label for="eaiSvcDesc"><span class="material-icons-outlined">chat</span> 설명</label> <label for="eaiSvcDesc"><span class="material-icons-outlined">chat</span> 설명</label>
<input type="text" class="form-control" id="eaiSvcDesc" name="eaiSvcDesc" required></input> <input type="text" class="form-control" id="eaiSvcDesc" name="eaiSvcDesc" required></input>
</div> </div>
@@ -1368,6 +1369,10 @@
<label for="toggleTransformYn"><span class="material-icons">account_tree</span> 전문변환</label><br> <label for="toggleTransformYn"><span class="material-icons">account_tree</span> 전문변환</label><br>
<input type="checkbox" name="toggleTransformYn" id="toggleTransformYn" data-toggle="toggle" data-onstyle="success" data-on="사용" data-off="미사용" data-width="100" data-offstyle="secondary" data-style="ios" /> <input type="checkbox" name="toggleTransformYn" id="toggleTransformYn" data-toggle="toggle" data-onstyle="success" data-on="사용" data-off="미사용" data-width="100" data-offstyle="secondary" data-style="ios" />
</div> </div>
<div class="form-group col-md-1">
<label for="toggleSimYn"><span class="material-icons" >science</span> 가상응답</label><br>
<input type="checkbox" name="toggleSimYn" id="toggleSimYn" data-toggle="toggle" data-onstyle="success" data-on="사용" data-off="미사용" data-width="100" data-offstyle="secondary" data-style="ios"/>
</div>
</div> </div>
</fieldset> </fieldset>
</div> </div>
@@ -1424,14 +1429,17 @@
</div> </div>
<div class="form-group col-md-3"> <div class="form-group col-md-3">
<label for="eaiBzwkDstcd">요청/응답 구분</label><br> <label for="eaiBzwkDstcd">요청/응답 구분</label><br>
<div class="btn-group" role="group" aria-label="Basic radio toggle button group"> <div class="btn-group" role="group" aria-label="Basic radio toggle button group"
<input type="radio" class="btn-check" name="btnRadioReqRes" id="btnTypeRequest" x-model="apiInterface.requestType" x-effect="if (apiInterface.syncAsyncType !== 'async') apiInterface.requestType = 'S'">
value="S" :disabled="apiInterface.syncAsyncType !== 'async' || $store.formState.isReqResDisabled" checked> <input type="radio" class="btn-check" name="btnRadioReqRes" id="btnTypeRequest"
<label class="btn btn-outline-primary" for="btnTypeRequest"><i class="bi bi-arrow-bar-right"></i> 요청</label> x-model="apiInterface.requestType"
value="S" :disabled="apiInterface.syncAsyncType !== 'async' || $store.formState.isReqResDisabled">
<input type="radio" class="btn-check" name="btnRadioReqRes" id="btnTypeResponse" x-model="apiInterface.requestType" <label class="btn btn-outline-primary" for="btnTypeRequest"><i class="bi bi-arrow-bar-right"></i> 요청</label>
<input type="radio" class="btn-check" name="btnRadioReqRes" id="btnTypeResponse"
x-model="apiInterface.requestType"
value="R" :disabled="apiInterface.syncAsyncType !== 'async' || $store.formState.isReqResDisabled"> value="R" :disabled="apiInterface.syncAsyncType !== 'async' || $store.formState.isReqResDisabled">
<label class="btn btn-outline-primary" for="btnTypeResponse"><i class="bi bi-arrow-bar-left"></i> 응답</label> <label class="btn btn-outline-primary" for="btnTypeResponse"><i class="bi bi-arrow-bar-left"></i> 응답</label>
</div> </div>
</div> </div>
<div class="form-group col-md-3"> <div class="form-group col-md-3">
@@ -1702,8 +1710,11 @@
응답 수신 메소드 응답 수신 메소드
</label> </label>
<select id="outboundResponseHttpMethod" class="form-select" name="outboundResponseHttpMethod" disabled> <select id="outboundResponseHttpMethod" class="form-select" name="outboundResponseHttpMethod" disabled>
<option value="get">GET</option> <option value="post">POST</option>
<option value="post">POST</option> <option value="get">GET</option>
<option value="put">PUT</option>
<option value="patch">PATCH</option>
<option value="delete">DELETE</option>
</select> </select>
</div> </div>
<div class="form-group col-md-8"> <div class="form-group col-md-8">
@@ -709,6 +709,8 @@ public class ApiInterfaceService extends OnlBaseService {
sheet.setColumnWidth(ci++, 200 * 30); sheet.setColumnWidth(ci++, 200 * 30);
sheet.setColumnWidth(ci++, 300 * 30); sheet.setColumnWidth(ci++, 300 * 30);
sheet.setColumnWidth(ci++, 200 * 30); sheet.setColumnWidth(ci++, 200 * 30);
sheet.setColumnWidth(ci++, 200 * 30);
sheet.setColumnWidth(ci++, 300 * 30);
sheet.setColumnWidth(ci, 300 * 30); sheet.setColumnWidth(ci, 300 * 30);
int rowNum = 0; int rowNum = 0;
@@ -730,6 +732,8 @@ public class ApiInterfaceService extends OnlBaseService {
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getEaiSvcDesc()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getEaiSvcDesc());
createCell(row, cellIndex++, headerStyle, "변환여부(Y/N)"); createCell(row, cellIndex++, headerStyle, "변환여부(Y/N)");
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getTransformYn()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getTransformYn());
createCell(row, cellIndex++, headerStyle, "Sync/Async 타입");
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getSyncAsyncType());
rowNum = addTitle(sheet, ++rowNum, titleStyle, "어댑터 설정"); rowNum = addTitle(sheet, ++rowNum, titleStyle, "어댑터 설정");
row = sheet.createRow(rowNum++); row = sheet.createRow(rowNum++);
@@ -738,8 +742,23 @@ public class ApiInterfaceService extends OnlBaseService {
createCell(row, cellIndex++, headerStyle, "인바운드 어댑터"); createCell(row, cellIndex++, headerStyle, "인바운드 어댑터");
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getFromAdapter()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getFromAdapter());
createCell(row, cellIndex++, headerStyle, "아웃바운드 어댑터"); createCell(row, cellIndex++, headerStyle, "아웃바운드 어댑터");
createCell(row, cellIndex, textStyle, apiInterfaceUI.getToAdapter()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getToAdapter());
//SYNC TYPE 에 따라 추가정보 생성
String syncAsyncType = apiInterfaceUI.getSyncAsyncType();
if (syncAsyncType.equals("asyncSync") || syncAsyncType.equals("syncAsync")) {
if (apiInterfaceUI.getSyncAsyncType().equals("asyncSync")) {
createCell(row, cellIndex++, headerStyle, "INBOUND (ASYNC) 응답 어댑터");
createCell(row, cellIndex, textStyle, apiInterfaceUI.getFromResponseAdapter());
} else {
createCell(row, cellIndex++, headerStyle, "OUTBOUND (ASYNC) 응답 어댑터");
createCell(row, cellIndex, textStyle, apiInterfaceUI.getToResponseAdapter());
}
}
rowNum = addTitle(sheet, ++rowNum, titleStyle, "REST 설정"); rowNum = addTitle(sheet, ++rowNum, titleStyle, "REST 설정");
row = sheet.createRow(rowNum++); row = sheet.createRow(rowNum++);
row.setHeightInPoints(height); // 행 높이를 20 포인트로 설정 row.setHeightInPoints(height); // 행 높이를 20 포인트로 설정
@@ -747,14 +766,30 @@ public class ApiInterfaceService extends OnlBaseService {
createCell(row, cellIndex++, headerStyle, "수신 메소드"); createCell(row, cellIndex++, headerStyle, "수신 메소드");
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getInboundHttpMethod()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getInboundHttpMethod());
createCell(row, cellIndex++, headerStyle, "수신 PATH(URL)"); createCell(row, cellIndex++, headerStyle, "수신 PATH(URL)");
createCell(row, cellIndex, textStyle, apiInterfaceUI.getInboundRestPath()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getInboundRestPath());
if(apiInterfaceUI.getSyncAsyncType().equals("asyncSync")) {
createCell(row, cellIndex++, headerStyle, "응답 송신 메소드");
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getInboundResponseHttpMethod());
createCell(row, cellIndex++, headerStyle, "응답 송신 REST PATH(URL)");
createCell(row, cellIndex, textStyle, apiInterfaceUI.getInboundResponseRestPath());
}
row = sheet.createRow(rowNum++); row = sheet.createRow(rowNum++);
row.setHeightInPoints(height); // 행 높이를 20 포인트로 설정 row.setHeightInPoints(height); // 행 높이를 20 포인트로 설정
cellIndex = 0; // 초기 셀 인덱스 cellIndex = 0; // 초기 셀 인덱스
createCell(row, cellIndex++, headerStyle, "송신 메소드"); createCell(row, cellIndex++, headerStyle, "송신 메소드");
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getOutboundHttpMethod()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getOutboundHttpMethod());
createCell(row, cellIndex++, headerStyle, "송신 PATH(URL)"); createCell(row, cellIndex++, headerStyle, "송신 PATH(URL)");
createCell(row, cellIndex, textStyle, apiInterfaceUI.getOutboundRestPath()); createCell(row, cellIndex++, textStyle, apiInterfaceUI.getOutboundRestPath());
if(apiInterfaceUI.getSyncAsyncType().equals("syncAsync")) {
createCell(row, cellIndex++, headerStyle, "응답 수신 메소드");
createCell(row, cellIndex++, textStyle, apiInterfaceUI.getOutboundResponseHttpMethod());
createCell(row, cellIndex++, headerStyle, "송신 REST PATH(URL)");
createCell(row, cellIndex, textStyle, apiInterfaceUI.getOutboundResponseRestPath());
}
if ("Y".equals(apiInterfaceUI.getTransformYn())) { if ("Y".equals(apiInterfaceUI.getTransformYn())) {
rowNum = addTitle(sheet, ++rowNum, titleStyle, "변환 설정"); rowNum = addTitle(sheet, ++rowNum, titleStyle, "변환 설정");
@@ -808,9 +843,27 @@ public class ApiInterfaceService extends OnlBaseService {
String interfaceDesc = PoiUtils.getCellValue(sheet, 2, 1); String interfaceDesc = PoiUtils.getCellValue(sheet, 2, 1);
String transformYn = PoiUtils.getCellValue(sheet, 2, 3); String transformYn = PoiUtils.getCellValue(sheet, 2, 3);
String syncAsyncType = PoiUtils.getCellValue(sheet, 2, 5);
String inboundAdapterGroupName = PoiUtils.getCellValue(sheet, 5, 1); String inboundAdapterGroupName = PoiUtils.getCellValue(sheet, 5, 1);
String outboundAdapterGroupName = PoiUtils.getCellValue(sheet, 5, 3); String outboundAdapterGroupName = PoiUtils.getCellValue(sheet, 5, 3);
String inboundResponseHttpMethod = "";
String inboundResponseRestPath = "";
String fromResponseAdapter = "";
String outboundResponseHttpMethod = "";
String outboundResponseRestPath = "";
String toResponseAdapter = "";
if (syncAsyncType.equals("asyncSync")) {
inboundResponseHttpMethod = PoiUtils.getCellValue(sheet, 8, 5);
inboundResponseRestPath = PoiUtils.getCellValue(sheet, 8, 7);
fromResponseAdapter = PoiUtils.getCellValue(sheet, 5, 5);
} else if (syncAsyncType.equals("syncAsync")) {
outboundResponseHttpMethod = PoiUtils.getCellValue(sheet, 9, 5);
outboundResponseRestPath = PoiUtils.getCellValue(sheet, 9, 7);
toResponseAdapter = PoiUtils.getCellValue(sheet, 5, 5);
}
String inboundHttpMethod = PoiUtils.getCellValue(sheet, 8, 1); String inboundHttpMethod = PoiUtils.getCellValue(sheet, 8, 1);
String inboundRestPath = PoiUtils.getCellValue(sheet, 8, 3); String inboundRestPath = PoiUtils.getCellValue(sheet, 8, 3);
@@ -824,6 +877,7 @@ public class ApiInterfaceService extends OnlBaseService {
apiInterfaceUI.setEaiSvcName(elinkServiceId); apiInterfaceUI.setEaiSvcName(elinkServiceId);
apiInterfaceUI.setEaiSvcDesc(interfaceDesc); apiInterfaceUI.setEaiSvcDesc(interfaceDesc);
apiInterfaceUI.setTransformYn(transformYn); apiInterfaceUI.setTransformYn(transformYn);
apiInterfaceUI.setSyncAsyncType(syncAsyncType);
apiInterfaceUI.setFromAdapter(inboundAdapterGroupName); apiInterfaceUI.setFromAdapter(inboundAdapterGroupName);
apiInterfaceUI.setToAdapter(outboundAdapterGroupName); apiInterfaceUI.setToAdapter(outboundAdapterGroupName);
@@ -832,6 +886,14 @@ public class ApiInterfaceService extends OnlBaseService {
apiInterfaceUI.setInboundRestPath(inboundRestPath); apiInterfaceUI.setInboundRestPath(inboundRestPath);
apiInterfaceUI.setOutboundHttpMethod(outboundHttpMethod); apiInterfaceUI.setOutboundHttpMethod(outboundHttpMethod);
apiInterfaceUI.setOutboundRestPath(outboundRestPath); apiInterfaceUI.setOutboundRestPath(outboundRestPath);
apiInterfaceUI.setInboundResponseHttpMethod(inboundResponseHttpMethod);
apiInterfaceUI.setInboundResponseRestPath(inboundResponseRestPath);
apiInterfaceUI.setFromResponseAdapter(fromResponseAdapter);
apiInterfaceUI.setOutboundResponseHttpMethod(outboundResponseHttpMethod);
apiInterfaceUI.setOutboundResponseRestPath(outboundResponseRestPath);
apiInterfaceUI.setToResponseAdapter(toResponseAdapter);
apiInterfaceUI.setIsHeaderRouting(false); apiInterfaceUI.setIsHeaderRouting(false);
@@ -110,6 +110,10 @@ public interface ApiInterfaceUIMapper {
syncAsyncType = "asyncSync"; syncAsyncType = "asyncSync";
} }
vo.setSyncAsyncType(syncAsyncType); vo.setSyncAsyncType(syncAsyncType);
// 가상응답 여부
String simYn = "T".equals(eaiMessageEntity.getTrantype()) ? "Y" : "N";
vo.setSimYn(simYn);
vo.setToAdapter(requestEntity.getPsvsysadptrbzwkgroupname()); vo.setToAdapter(requestEntity.getPsvsysadptrbzwkgroupname());
vo.setToutVal(requestEntity.getToutval()); vo.setToutVal(requestEntity.getToutval());
@@ -186,6 +190,11 @@ public interface ApiInterfaceUIMapper {
if(vo == null || vo.getSyncAsyncType() == null){ if(vo == null || vo.getSyncAsyncType() == null){
return; return;
} }
// 가상응답 여부
String tranType = "Y".equals(vo.getSimYn()) ? "T" : "R";
entity.setTrantype(tranType);
switch(vo.getSyncAsyncType()){ switch(vo.getSyncAsyncType()){
case "async": case "async":
case "asyncSync": case "asyncSync":
@@ -193,4 +202,4 @@ public interface ApiInterfaceUIMapper {
break; break;
} }
} }
} }