package com.prolog.rdc.tms.model.vo.settlement.driver;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * @author hongbo.pan
 * @date 2023/5/4
 */
@Data
public class BmsDriverFeeSettlementVO {

    @NotBlank
    @ApiModelProperty(value = "结算单名称")
    private String settlementName;

    @ApiModelProperty(value = "结算周期")
    private String settlementCycle;

    @ApiModelProperty(value = "往来单位id")
    private Long carrierId;

    @ApiModelProperty(value = "往来单位code")
    private String carrierCode;

    @ApiModelProperty(value = "往来单位名称")
    private String carrierName;

    @ApiModelProperty(value = "结算公司")
    private String settlementCompany;

    @NotNull
    @ApiModelProperty(value = "结算公司id")
    private Long settlementCompanyId;

    @ApiModelProperty(value = "结算公司code")
    private String settlementCompanyCode;

    @ApiModelProperty(value = "结算部门")
    private String settlementDepartment;

    @NotNull
    @ApiModelProperty(value = "结算部门id")
    private String settlementDepartmentId;

    @ApiModelProperty(value = "结算部门code")
    private String settlementDepartmentCode;

    @ApiModelProperty(value = "挂账结束日期")
    private Date accountEndDate;

    @ApiModelProperty(value = "开票结束日期")
    private Date invoiceEndDate;

    @ApiModelProperty(value = "税点")
    private String taxPoint;

    @ApiModelProperty(value = "备注")
    private String memo;

    @NotEmpty
    @ApiModelProperty(value = "费用id集合")
    private List<Long> feeIdList;
}
