package com.ga.core.vo.settle;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 정산 정정 API 응답 VO
 * 설계사명, 승인자명 등 조인 결과 포함.
 */
@Data
public class SettleCorrectionResp {
    private Long correctionId;
    private Long originalSettleId;
    private Long agentId;
    private String agentName;        // agent 조인
    private String orgName;          // organization 조인
    private String settleMonth;
    private BigDecimal diffAmount;
    private BigDecimal beforeAmount;
    private BigDecimal afterAmount;
    private String reasonCode;
    private String reasonCodeName;   // common_code 조인
    private String reasonDetail;
    private String status;
    private String statusName;       // common_code 조인
    private Long requestedBy;
    private String requestedByName;  // users 조인
    private LocalDateTime requestedAt;
    private Long approvedBy;
    private String approvedByName;   // users 조인
    private LocalDateTime approvedAt;
    private Long appliedSettleId;
    private String cancelReason;
    private LocalDateTime cancelledAt;
    private LocalDateTime createdAt;
    private LocalDateTime updatedAt;
}
