DJB 요건에 맞춤

- EZDATA_SVR_TX_SEQNO 생성 로직 변경
- 환경구분 변경이 운영환경인 경우, P로 설정되도록 수정
This commit is contained in:
curry772
2026-06-17 09:25:05 +09:00
parent ec9c6d8553
commit 7b9862e34b
@@ -7,6 +7,7 @@ import java.time.format.DateTimeFormatter;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Properties;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -45,36 +46,36 @@ public class StandardMessageCoordinatorDJB extends DefaultStandardMessageCoordin
Pattern.compile("\\$\\{callProp\\.([^}:]+)(?::([^}]*))?\\}");
// HEAD 필드 경로
private static final String HEAD_FRST_MESG_DMAN_DT = "HEAD.frst_mesg_dman_dt";
private static final String HEAD_FRST_MESG_DMAN_TIME = "HEAD.frst_mesg_dman_time";
private static final String HEAD_FRST_TRNM_IPAD = "HEAD.frst_trnm_ipad";
private static final String HEAD_FRST_TRNM_IPV4_ADDR = "HEAD.frst_trnm_ipv4_addr";
private static final String HEAD_FRST_TRNM_MAC = "HEAD.frst_trnm_mac";
private static final String HEAD_SYS_ENV_DVCD = "HEAD.sys_env_dvcd";
private static final String HEAD_TRNM_SYS_DVCD = "HEAD.trnm_sys_dvcd";
private static final String HEAD_MESG_RSPN_DT = "HEAD.mesg_rspn_dt";
private static final String HEAD_MESG_RSPN_TIME = "HEAD.mesg_rspn_time";
public static final String HEAD_FRST_MESG_DMAN_DT = "HEAD.frst_mesg_dman_dt";
public static final String HEAD_FRST_MESG_DMAN_TIME = "HEAD.frst_mesg_dman_time";
public static final String HEAD_FRST_TRNM_IPAD = "HEAD.frst_trnm_ipad";
public static final String HEAD_FRST_TRNM_IPV4_ADDR = "HEAD.frst_trnm_ipv4_addr";
public static final String HEAD_FRST_TRNM_MAC = "HEAD.frst_trnm_mac";
public static final String HEAD_SYS_ENV_DVCD = "HEAD.sys_env_dvcd";
public static final String HEAD_TRNM_SYS_DVCD = "HEAD.trnm_sys_dvcd";
public static final String HEAD_MESG_RSPN_DT = "HEAD.mesg_rspn_dt";
public static final String HEAD_MESG_RSPN_TIME = "HEAD.mesg_rspn_time";
// EZDATA 영역 경로
private static final String EZDATA_ELFN_BNKN_DVCD = "EZDATA.elfn_bnkn_dvcd";
private static final String EZDATA_SVR_TX_SEQNO = "EZDATA.svr_tx_seqno";
private static final String EZDATA_ELFN_MAC = "EZDATA.elfn_mac";
private static final String EZDATA_PC_OFCL_IPAD = "EZDATA.pc_ofcl_ipad";
private static final String EZDATA_PC_PRVAT_IPAD = "EZDATA.pc_prvat_ipad";
private static final String EZDATA_ELFN_SPR_FILD = "EZDATA.elfn_spr_fild";
public static final String EZDATA_ELFN_BNKN_DVCD = "EZDATA.elfn_bnkn_dvcd";
public static final String EZDATA_SVR_TX_SEQNO = "EZDATA.svr_tx_seqno";
public static final String EZDATA_ELFN_MAC = "EZDATA.elfn_mac";
public static final String EZDATA_PC_OFCL_IPAD = "EZDATA.pc_ofcl_ipad";
public static final String EZDATA_PC_PRVAT_IPAD = "EZDATA.pc_prvat_ipad";
public static final String EZDATA_ELFN_SPR_FILD = "EZDATA.elfn_spr_fild";
// MSG 영역 경로
private static final String MSG_DVCD = "MSG.msg_dvcd";
private static final String MSG_SCOP_LEN = "MSG.msg_scop_len";
private static final String MSG_MAIN_MSG = "MSG.MAIN_MSG";
private static final String MSG_OUTP_ATRB_CD = "MSG.MAIN_MSG.outp_atrb_cd";
private static final String MSG_OUTP_MSG_CD = "MSG.MAIN_MSG.outp_msg_cd";
private static final String MSG_OUTP_MSG_CTNT = "MSG.MAIN_MSG.outp_msg_ctnt";
private static final String MSG_LIST_ROWCNT = "MSG.MAIN_MSG.msg_list_rowcnt";
private static final String MSG_LIST = "MSG.MSG_LIST";
public static final String MSG_DVCD = "MSG.msg_dvcd";
public static final String MSG_SCOP_LEN = "MSG.msg_scop_len";
public static final String MSG_MAIN_MSG = "MSG.MAIN_MSG";
public static final String MSG_OUTP_ATRB_CD = "MSG.MAIN_MSG.outp_atrb_cd";
public static final String MSG_OUTP_MSG_CD = "MSG.MAIN_MSG.outp_msg_cd";
public static final String MSG_OUTP_MSG_CTNT = "MSG.MAIN_MSG.outp_msg_ctnt";
public static final String MSG_LIST_ROWCNT = "MSG.MAIN_MSG.msg_list_rowcnt";
public static final String MSG_LIST = "MSG.MSG_LIST";
// DATA 영역 경로
private static final String DATA_SCOP_LEN = "DATA.data_scop_len";
public static final String DATA_SCOP_LEN = "DATA.data_scop_len";
private String[] netInfo;
@@ -111,7 +112,9 @@ public class StandardMessageCoordinatorDJB extends DefaultStandardMessageCoordin
// 시스템환경구분코드 설정 (D/T/P)
EAIServerManager eaiServer = EAIServerManager.getInstance();
standardMessage.setData(HEAD_SYS_ENV_DVCD, getSysEnvDvcd(eaiServer));
String sysEnvDvcd = getSysEnvDvcd(eaiServer);
if(StringUtils.equals("P", sysEnvDvcd))
standardMessage.setData(HEAD_SYS_ENV_DVCD, "P");
// 최초전송 IP / IPv4 / MAC 수집 및 설정
String[] netInfo = collectNetworkInfo();
@@ -167,6 +170,7 @@ public class StandardMessageCoordinatorDJB extends DefaultStandardMessageCoordin
// 에러코드/메시지 변환
String siteErrCode = StringUtils.defaultString(MessageUtil.getTobeCode(errCode));
String siteErrMsg = StringUtils.defaultString(MessageUtil.getTobeMessage(errCode));
String siteErrDesc = StringUtils.defaultString(MessageUtil.getTobeMessage(errCode));
// MSG 영역 활성화
StandardItem msgItem = standardMessage.findItem("MSG");
@@ -199,7 +203,7 @@ public class StandardMessageCoordinatorDJB extends DefaultStandardMessageCoordin
if (row != null) {
if (row.containsKey("outp_msg_cd")) row.get("outp_msg_cd").setValue(siteErrCode);
if (row.containsKey("outp_msg_ctnt")) row.get("outp_msg_ctnt").setValue(siteErrMsg);
if (row.containsKey("outp_msg_desc")) row.get("outp_msg_desc").setValue(siteErrMsg);
if (row.containsKey("outp_msg_desc")) row.get("outp_msg_desc").setValue(siteErrDesc);
if (row.containsKey("err_occu_loct")) row.get("err_occu_loct").setValue(errCode);
}
}
@@ -342,11 +346,20 @@ public class StandardMessageCoordinatorDJB extends DefaultStandardMessageCoordin
return this.netInfo;
}
private static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("ddHHmmss");
private static final Random RANDOM = new Random();
public static String generate() {
String datePart = LocalDateTime.now().format(FORMATTER);
String randomPart = String.format("%02d", RANDOM.nextInt(100));
return datePart + randomPart;
}
private void setEzdataFields(StandardMessage standardMessage, StandardItem ezdataItem, String ipv4, String mac) {
ezdataItem.setHidden(false);
ezdataItem.setSize(1);
standardMessage.setData(EZDATA_ELFN_BNKN_DVCD, "10");
standardMessage.setData(EZDATA_SVR_TX_SEQNO, String.valueOf(System.currentTimeMillis() / 1000L));
// standardMessage.setData(EZDATA_ELFN_BNKN_DVCD, "10");
standardMessage.setData(EZDATA_SVR_TX_SEQNO, generate());
standardMessage.setData(EZDATA_ELFN_MAC, mac);
standardMessage.setData(EZDATA_PC_OFCL_IPAD, ipv4);
standardMessage.setData(EZDATA_PC_PRVAT_IPAD, ipv4);