package com.trade.service.trade.salesorder.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDate;
import java.util.List;

/**
 * @description:
 * @Author: wanglang
 * @Date: 2024/11/4
 * @Version: 1.0
 */
@Data
@Validated
public class ReceivePaymentSubDto {

    @ApiModelProperty(name = "accountNumber", value = "收款银行账号")
    @NotEmpty(message = "收款银行账号不能为空")
    private String accountNumber;
    @ApiModelProperty(name = "paymentType", value = "款项类型2贸易回款3预收货款")
    @NotEmpty(message = "款项类型不能为空")
    private String paymentType;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty(name = "expectedPaymentDueDate", value = "预计货款日期")
    @NotNull(message = "预计收款日期不能为空")
    private LocalDate expectedPaymentDueDate;
    @ApiModelProperty(name = "promptReceivingCurrency", value = "提示收款币种")
    @NotEmpty(message = "提示收款币种不能为空")
    private String promptReceivingCurrency;
    @ApiModelProperty(name = "receivePaymentDtoList", value = "订单相关信息")
    private List<ReceivePaymentDto> receivePaymentDtoList;
}
