package com.yc.ship.module.product.api.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

@Schema(description = "RPC 服务 - Category 产品分组/资源 Response VO")
@Data
public class CategoryRespDTO {

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

    @Schema(description = "父ID", example = "27454")
    private Long parentId;

    @Schema(description = "状态", example = "2")
    private Integer useStatus;

    @Schema(description = "编码")
    private String cateCode;

    @Schema(description = "分类名称", example = "芋艿")
    private String cateName;

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

    @Schema(description = "类型;0资源分类 1产品分类 2小程序产品分类", example = "1")
    private Integer type;

    @Schema(description = "父路径;逗号分隔")
    private String parentPath;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    @Schema(description = "关联资源数量")
    private Integer resourceNum;

    @Schema(description = "小程序信息")
    private CategoryExtraRespDTO extraInfo;

    @Schema(description = "分类产品集合")
    private List<ProductSpuRespDTO> productSpuRespDTOList;

    @Schema(description = "分类产品集合")
    private List<Map<String, Object>> spuList;
}
