/* * vl_core.h - 정합성 모듈 핵심 계약 (레코드/상태/표준 DBIO API) * * 이 모듈의 온라인/배치 프로그램은 SQL 을 직접 다루지 않고 아래 표준 * DBIO API 만 호출한다. 구현은 app/dbio/vl_dbio_main.pgc (ECPG). */ #ifndef VL_CORE_H #define VL_CORE_H #include "txcore.h" /* 정합성 처리 상태코드 */ #define VL_ST_RECV "R" /* 접수/수신 */ #define VL_ST_DONE "M" /* 처리완료 */ #define VL_ST_FAIL "U" /* 불일치/실패 */ #define VL_ST_SETTLED "S" /* 정산완료 */ /* 정합성 원장 레코드 (1행) */ typedef struct { char key[16]; /* 처리키(승인/거래 번호) PK */ char merch_id[16]; /* 가맹점번호 */ char card_no[20]; /* 카드번호(마스킹) */ long amount; /* 거래금액(원) */ char biz_date[9]; /* 영업일 YYYYMMDD */ char status[2]; /* 상태코드 */ long fee; /* 수수료(원) */ } vl_rec_t; /* 표준 DBIO API (구현: vl_dbio_main.pgc) */ int vl_dbio_connect(const char *target); int vl_dbio_disconnect(void); int vl_rec_insert(const vl_rec_t *rec); int vl_rec_select(const char *key, vl_rec_t *out); int vl_rec_update_status(const char *key, const char *status); long vl_rec_count(const char *biz_date, const char *status); int vl_rec_sum(const char *biz_date, long *out_sum); #endif /* VL_CORE_H */