package cn.iocoder.yudao.module.system.controller.admin.sys.vo;
import cn.iocoder.yudao.module.system.dal.dataobject.biz.ServiceItemLevelDO;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.util.*;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
/**
 * @Author: jinyd
 * @CreateTime: 2025/4/1  11:38
 * @Description:
 * @Version: 4.0
 */

@Schema(description = "管理后台 - 服务项目 Response VO")
@Data
@ExcelIgnoreUnannotated
public class ServiceItemRespVO {

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

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

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

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

    @Schema(description = "是否勾选起，0-否，1-是", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("是否勾选起，0-否，1-是")
    private Integer exceedFlag;

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

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

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

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

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

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

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

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

    @TableField(exist = false)
    private String teamName;


    @TableField(exist = false)
    private String categoryName;

    @TableField(exist = false)
    List<ServiceItemLevelDO> levelDOList;

}
