package com.zt.plat.module.contractorder.api.vo.contract;

import com.zt.plat.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;

import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 合同信息分页 Request VO")
@Data
public class ContractPageReqVO extends PageParam {

    @Schema(description = "合同名称;与ERP(HTMC)对应，校验唯一", example = "芋艿")
    private String contractName;

    @Schema(description = "合同编号;与ERP(HTBH)对应，校验唯一")
    private String contractPaperNumber;

    @Schema(description = "状态", example = "DRAFT")
    private String status;

    @Schema(description = "甲方公司名称", example = "王五")
    private String purchaseCompanyName;

    @Schema(description = "乙方公司名称", example = "王五")
    private String salesCompanyName;

    @Schema(description = "收支性质;与ERP(SZXZ)对应")
    private String direction;

    @Schema(description = "签署日期;与ERP(HTQDRQ)对应")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private String[] signDate;

    @Schema(description = "本币金额;与ERP(HTBWBZJE)对应")
    private BigDecimal basicAmount;

    @Schema(description = "合同分类(字典：SPLY_BSN_TP)")
    private String businessType;

    @Schema(description = "合同主键")
    private Long id;

    @Schema(description = "甲方公司编号;与ERP(YQGHD)对应")
    private String erpPurchaseCompanyNumber;
    @Schema(description = "乙方公司编号;与ERP(YQGHD)对应")
    private String erpSalesCompanyNumber;
}