package cn.iocoder.yudao.module.system.controller.admin.sys.vo;
import cn.iocoder.yudao.module.system.dal.dataobject.biz.ServiceItemLevelDO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;
import java.math.BigDecimal;
/**
 * @Author: jinyd
 * @CreateTime: 2025/4/1  11:40
 * @Description:
 * @Version: 4.0
 */


@Schema(description = "管理后台 - 服务项目新增/修改 Request VO")
@Data
public class ServiceItemSaveReqVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7008")
    private Long id;

    @Schema(description = "服务项目", example = "芋艿")
    private String itemName;

    @Schema(description = "服务方式，0：全部，1-上门，2-到店", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "服务方式，0：全部，1-上门，2-到店不能为空")
    private Integer serviceWay;

    @Schema(description = "销售渠道，0：全部，1-线上，2-门店", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "销售渠道，0：全部，1-线上，2-门店不能为空")
    private Integer distributionChannel;

    @Schema(description = "是否勾选起，0-否，1-是", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "是否勾选起，0-否，1-是不能为空")
    private Integer exceedFlag;

    @Schema(description = "服务分类主键")
    private Long chargeCategoryId;

    @Schema(description = "费用项目主键", example = "2594")
    private Long overheadChargeId;

    @Schema(description = "服务价格", example = "15822")
    private BigDecimal servicePrice;

    @Schema(description = "服务备注")
    private String remarks;

    @Schema(description = "排序")
    private Integer sortNum;

    @Schema(description = "状态，0：禁用  1：正常", example = "1")
    private String status;

    @Schema(description = "系统类型，1：机构 2：居家(社区) 3：旅居", example = "1")
    private Integer orgType;

    private Long tenantId;

    @Schema(description = "会员等级")
    List<ServiceItemLevelDO> levelDOList;

}
