package com.ga.core.vo.accounting;

import jakarta.validation.constraints.NotBlank;
import lombok.Data;

/**
 * 회계 결산 생성/실행 요청.
 *  - createDraft: closePeriod + closeType 지정해 DRAFT 행 생성
 *  - close      : closeId 지정해 마감 실행 (분개 채번 + 잔액 스냅샷)
 *  - reopen     : closeId + reopenReason
 */
@Data
public class AccountingCloseSaveReq {
    private Long closeId;
    /** YYYY-MM / YYYY-Q1 / YYYY */
    @NotBlank
    private String closePeriod;
    /** MONTHLY / QUARTERLY / YEARLY */
    @NotBlank
    private String closeType;
    /** reopen 사유 (REOPENED 처리 시 필수) */
    private String reopenReason;
}
