package com.zt.plat.module.erp.controller.admin.erp.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.time.LocalDateTime;

@Schema(description = "管理后台 - ERP客商主数据新增/修改 Request VO")
@Data
public class ErpCustomerSaveReqVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "30882")
    private Long id;

    @Schema(description = "编码", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "编码不能为空")
    private String number;

    @Schema(description = "名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
    @NotEmpty(message = "名称不能为空")
    private String name;

    @Schema(description = "账户组", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "账户组不能为空")
    private String accountGroup;

    @Schema(description = "简称")
    private String description;

    @Schema(description = "中铝编号")
    private String centerNumber;

    @Schema(description = "创建日期", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "创建日期不能为空")
    private LocalDateTime createDate;

    @Schema(description = "修改日期", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "修改日期不能为空")
    private LocalDateTime repairDate;

    @Schema(description = "归档标识")
    private String isGiveback;

    @Schema(description = "冻结标识")
    private String isProvisional;

    @Schema(description = "税号/社会信用代码")
    private String taxNumber;
}