diff --git a/src/main/java/com/eactive/eai/rms/onl/manage/rule/layoutsync/LayoutSyncController.java b/src/main/java/com/eactive/eai/rms/onl/manage/rule/layoutsync/LayoutSyncController.java index c8b01b5..4d08aeb 100644 --- a/src/main/java/com/eactive/eai/rms/onl/manage/rule/layoutsync/LayoutSyncController.java +++ b/src/main/java/com/eactive/eai/rms/onl/manage/rule/layoutsync/LayoutSyncController.java @@ -361,7 +361,7 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements // 엔진에서는 length가 0이면 masking code로, 0보다 크면 기존 마스킹으로 적용 String mask2 = (String) _i.get("mask2"); if (mask2 == null || mask2.equals("")) { - item.put("loutitemMaskOffset", 0); + item.put("loutItemMaskOffset", 0); item.put("loutItemMaskLength",Integer.parseInt((String) _i.get("maskLength"))); } else { String maskingCode = monitoringCodeService.findById(new MonitoringCodeId("MASKING_CODE", mask2)) @@ -703,7 +703,8 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements param.put("recvData", ""); } - syncLayout(param, recvTime, json); + //syncLayout(param, recvTime, json); + syncLayoutDjb(param, recvTime, json); // results.getChild("Result").setText("S".equals(param.get("prcssRslt"))?"True":"False"); // results.getChild("ResultMessage").setText("S".equals(param.get("prcssRslt"))?"성공":param.get("prcssRsltCmnt")); @@ -943,21 +944,21 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements // 인터페이스 이름 20자리 이하 // EAI _CORS _CORR _CORE _UAIR // FEP _COR _ORG - String fattern = ""; - switch(useSystem) - { - case "FEP": - fattern = "[A-Za-z0-9]*[12E]{1}"; - break; - case "EAI": - case "FWK": - fattern = "[A-Za-z0-9]*_[IOE]{1}"; - break; - } - - if(!layoutName.matches(fattern)) { - throw new BizException("잘못된 전문레이아웃명 입니다.\n명명규칙을 확인하세요.\n"+fattern); - } +// String fattern = ""; +// switch(useSystem) +// { +// case "FEP": +// fattern = "[A-Za-z0-9]*[12E]{1}"; +// break; +// case "EAI": +// case "FWK": +// fattern = "[A-Za-z0-9]*_[IOE]{1}"; +// break; +// } +// +// if(!layoutName.matches(fattern)) { +// throw new BizException("잘못된 전문레이아웃명 입니다.\n명명규칙을 확인하세요.\n"+fattern); +// } logger.info(layoutName + " recv Data - [" + layout + "]"); param.put("recvData", layout.toString()); @@ -1203,5 +1204,31 @@ public class LayoutSyncController extends OnlBaseAnnotationController implements } return null ; } + + + private void syncLayoutDjb(HashMap param, String recvTime, JSONObject json) + throws Exception, BizException, ParseException { + JSONObject header = (JSONObject) ((JSONObject) json.get("Message")).get("Header"); + JSONObject body = (JSONObject) ((JSONObject) json.get("Message")).get("Body"); + + String serviceName = (String) header.get("ServiceName"); + String command = (String) header.get("Command"); + + Object layoutObject = body.get("Layout"); + + param.put("serviceName", serviceName); + param.put("command", command); + param.put("recvAmndHMS", recvTime); + + JSONArray layoutArray = null; + if (layoutObject instanceof JSONArray) { + layoutArray = (JSONArray) layoutObject; + for (int i = 0; i < layoutArray.size(); i++) { + syncLayout(param, body, command, (JSONObject) layoutArray.get(i)); + } + } else { + syncLayout(param, body, command, (JSONObject) layoutObject); + } + } }