package fcb.project.manager.base.param.house;

import fcb.project.manager.base.param.PageParam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author Admin
 */
@Data
@ApiModel("vr项目查询入参")
public class QueryHouseParam extends PageParam {

    @ApiModelProperty(name = "fcbEstateId", value = "楼盘编码",  dataType = "String")
    private String fcbEstateId;

    @ApiModelProperty(name = "estateName", value = "楼盘名称",  dataType = "String")
    private String estateName;

    @ApiModelProperty(name = "status", value = "状态: 0->草稿;1->待审核;2->已审核;3->未通过", dataType = "Integer")
    private Integer status;

    @ApiModelProperty(name = "type", value = "房源类型： 1->新房,2->二手房", required = true, dataType = "String")
    @NotBlank(message = "房源类型不能为空")
    private Integer type;

    @ApiModelProperty(name = "createStartTime", value = "创建开始时间", dataType = "String")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createStartTime;

    @ApiModelProperty(name = "createEndTime", value = "创建结束时间", dataType = "String")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createEndTime;

    @ApiModelProperty(name = "updateStartTime", value = "更新开始时间", dataType = "String")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateStartTime;

    @ApiModelProperty(name = "updateEndTime", value = "更新结束时间", dataType = "String")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateEndTime;

    @ApiModelProperty(name = "auditTimeStartTime", value = "审核开始时间", dataType = "String")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime auditTimeStartTime;

    @ApiModelProperty(name = "auditTimeEndTime", value = "审核结束时间", dataType = "String")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime auditTimeEndTime;

    @ApiModelProperty(hidden = true)
    private String departmentId;

    @ApiModelProperty(hidden = true)
    private List<Integer> statues;

}
