package com.yuchen.saas.park.api.dto.property;


import com.yuchen.saas.park.api.entity.property.PropertyDirectReductionDetail;
import com.yuchen.saas.park.api.entity.property.PropertyDirectReductionHouseLog;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.*;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;


@Data
@ApiModel(value="PropertyDirectReductionAddDto", description="新增")
public class PropertyDirectReductionAddDto {

    @ApiModelProperty(name = "id", value = "id")
    private Long id;

    @NotNull
    @ApiModelProperty(name = "parkId", value = "园区id")
    private Long parkId;

    @NotBlank
    @ApiModelProperty(name = "reductionName", value = "减免名称")
    private String reductionName;

    @NotEmpty
    @ApiModelProperty(name = "directReductionHouseList", value = "减免范围")
    private List<PropertyDirectReductionHouseLog> directReductionHouseList;

    @NotNull
    @Range(min = 1, max = 2)
    @ApiModelProperty(name = "reductionType", value = "减免方式:1按单价减免,2指定减免金额")
    private Integer reductionType;

    @NotEmpty
    @ApiModelProperty(name = "directReductionDetailList", value = "减免费用")
    private List<PropertyDirectReductionDetail> directReductionDetailList;


    @ApiModelProperty(name = "reductionTimeStart", value = "减免开始时间")
    private Date reductionTimeStart;

    @ApiModelProperty(name = "reductionTimeEnd", value = "减免结束时间")
    private Date reductionTimeEnd;

    @ApiModelProperty(name = "remark", value = "备注")
    private String remark;

    @ApiModelProperty(name = "sourceText", value = "提交减免范围")
    private String sourceText;

}
