Some checks failed
ci / build (push) Failing after 2s
TxCore/ECPG legacy 매입·정산 C 슬라이스(빌드검증) + Spring Boot 멀티모듈 골격(mvn test green) + MIGRATION.md 전환룰 + CI(boot 빌드).
41 lines
1.7 KiB
SQL
41 lines
1.7 KiB
SQL
-- schema.sql - acquire-core 매입/정산 스키마
|
|
--
|
|
-- ECPG DBIO 코드가 참조하는 테이블 정의. 컴파일에는 필요 없으며,
|
|
-- 실행(런타임) 시 PostgreSQL 에 적용한다.
|
|
|
|
-- 매입 원장 (전문수신 → 접수)
|
|
CREATE TABLE IF NOT EXISTS purchase (
|
|
appr_no VARCHAR(9) NOT NULL, -- 승인번호 (PK)
|
|
merch_id VARCHAR(15) NOT NULL, -- 가맹점번호
|
|
card_no VARCHAR(16) NOT NULL, -- 카드번호(마스킹)
|
|
amount BIGINT NOT NULL, -- 거래금액(원)
|
|
txn_date CHAR(8) NOT NULL, -- 거래일자 YYYYMMDD
|
|
status CHAR(1) NOT NULL DEFAULT 'R', -- R:접수 M:대사완료 U:불일치 S:정산완료
|
|
reg_ts TIMESTAMP NOT NULL DEFAULT now(),
|
|
upd_ts TIMESTAMP,
|
|
CONSTRAINT pk_purchase PRIMARY KEY (appr_no)
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS ix_purchase_date_status
|
|
ON purchase (txn_date, status);
|
|
|
|
-- 승인 원장 (매입 대사 기준)
|
|
CREATE TABLE IF NOT EXISTS approval (
|
|
appr_no VARCHAR(9) NOT NULL,
|
|
merch_id VARCHAR(15) NOT NULL,
|
|
amount BIGINT NOT NULL,
|
|
appr_date CHAR(8) NOT NULL,
|
|
status CHAR(1) NOT NULL DEFAULT 'A', -- A:승인 C:취소
|
|
reg_ts TIMESTAMP NOT NULL DEFAULT now(),
|
|
CONSTRAINT pk_approval PRIMARY KEY (appr_no)
|
|
);
|
|
|
|
-- 정산 집계 (가맹점/영업일 단위)
|
|
CREATE TABLE IF NOT EXISTS settlement (
|
|
merch_id VARCHAR(15) NOT NULL,
|
|
biz_date CHAR(8) NOT NULL, -- 정산 영업일 YYYYMMDD
|
|
total_amount BIGINT NOT NULL DEFAULT 0,
|
|
txn_cnt INTEGER NOT NULL DEFAULT 0,
|
|
upd_ts TIMESTAMP NOT NULL DEFAULT now(),
|
|
CONSTRAINT pk_settlement PRIMARY KEY (merch_id, biz_date)
|
|
);
|