package com.ylx.project.domain.dto;

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

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;

@ApiModel("项目新增DTO")
@Data
public class ProjectAddDTO implements Serializable {

    private static final long serialVersionUID = 862152570131989654L;

    @ApiModelProperty("标题")
    @NotBlank(message = "项目标题不能为空")
    private String title;

    @ApiModelProperty("服务类目ID")
    @NotNull(message = "服务类目ID不能为空")
    private Long categoryId;

    @ApiModelProperty("封面图")
    @NotBlank(message = "项目封面图不能为空")
    private String cover;

    @ApiModelProperty("标注价格")
    @NotNull(message = "标注价格不能为空")
    private BigDecimal price;

    @ApiModelProperty("标注价格（现价）")
    @NotNull(message = "市场参考价起始值不能为空")
    private BigDecimal priceMin;

    @ApiModelProperty("标注价格（现价）")
    @NotNull(message = "市场参考价结束值不能为空")
    private BigDecimal priceMax;

    @ApiModelProperty("商户分佣比例")
    @NotNull(message = "商户分佣比例不能为空")
    private BigDecimal merchantShareRatio;

    @ApiModelProperty("标时")
    @NotNull(message = "标准服务时长不能为空")
    private Integer standardDuration;

    @ApiModelProperty("计量单位（字典数据）")
    @NotNull(message = "计量单位不能为空")
    private Integer unitType;

    @ApiModelProperty("状态: 0=上架, 1=下架")
    @NotNull(message = "状态不能为空")
    private Integer status;

    @ApiModelProperty("是否推荐：0=否，1=是")
    @NotNull(message = "是否推荐不能为空")
    private Integer isRecommended;

    @ApiModelProperty("价格是否自定义：0=否，1=是")
    @NotNull(message = "价格是否自定义不能为空")
    private Integer isPriceCustom;

    /*@ApiModelProperty("标时是否自定义：0=否，1=是")
    @NotNull(message = "标时是否自定义不能为空")
    private Integer isTimeCustom;*/

    @ApiModelProperty("项目亮点：关联亮点字典表的ID集合")
    @NotBlank(message = "项目亮点ID集合不能为空")
    private String highlightIds;

    @ApiModelProperty("适用人群")
    @NotBlank(message = "适用人群不能为空")
    private String targetAudience;

    @ApiModelProperty("项目详情 富文本")
    private String detail;
}
