package org.dromara.zhishu.domain.bo;

import com.fasterxml.jackson.annotation.JsonProperty;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.zhishu.domain.vo.BookPic;

@EqualsAndHashCode(callSuper = true)
@Data
public class EditBookInfoBo extends BaseEntity {

    /** id */
    @NotBlank(message = "id不能为空", groups = { EditGroup.class })
    private String id;

    /** 书名 */
    private String bookName;
    /** ISBN */
    private String isbn;
    /** 作者 */
    private String author;
    /** 装帧 */
    private String bindingLayout;
    /** 出版社 */
    private String publisher;
    /** 出版时间 */
    private String publicationTime;
    /** 定价 */
    private String fixPrice;
    /** 分类 */
    private String category;
    /** 是否套装 1是 0否 */
    private Integer isSuit;      // 改 Integer
    /** 书图片 */
    private BookPic bookPic;
    private String isBookPic;
    private String isBookPicS;
    /** 更新时间戳（外部接口使用） */
    @JsonProperty("updateTime")
    private String updateTimeTimestamp;
//    /** 小图（外部接口需要） */
//    private BookPic bookPicS;          // 新增
//    private String bookPicB;          // 新增
//    private String bookPicW;          // 新增
//    /** 编辑 */
//    private String editor;
//    /** 版次 */
//    private String edition;
//    /** 开本 */
//    private String format;
//    /** 语种 */
//    private String languages;
//    /** 印刷时间 */
//    private String printTime;
//    /** 纸张 */
//    private String paper;
//    /** 页数 */
//    private String pages;
//    /** 字数 */
//    private String wordage;
//    /** 已售 */
//    @JsonProperty("buy_count")
//    private String buyCount;
//    /** 在售 */
//    @JsonProperty("sell_count")
//    private String sellCount;
//    /** 内容简介 */
//    private String content;
//    /** 备注 */
//    private String remark;
//    /** 叶子类目 id */
//    private Long catId;
//    /** 已售数量（外部接口字段 buy_counts） */
//    private String buy_counts;   // 改为String类型以支持范围值如"5,99999"
//    /** 在售数量（外部接口字段 sell_counts） */
//    private String sell_counts;  // 改为String类型以支持范围值
//    /** 出版时间（另一格式） */
//    private String publicationTimes;
//    /** 违规书号 0正常 1违规 */
//    private Integer vioBook;
//    /** 套装书 0正常 1违规 */
//    private Integer bookSet;
//    /** 一号多书 0正常 1违规 */
//    private Integer onenumMbooks;
//    /** 违规出版社 */
//    private Integer illPublisher;
//    /** 违规作者 */
//    private Integer illAuthor;
//    /** 店铺 ids */
//    private List<Long> shopIds;
//    /** 数据总数 */
//    private Integer total;
//    /** 店铺名称 */
//    private List<String> shopNames;
//    /** 是否核价 0/1 */
//    private Boolean ispricing;
//    /** 核价数量 */
//    private Integer numbers;
//    /** 销量选择 */
//    private Integer saleSelect;
//    /** 图片类型 官图-1 实图-0 */
//    private String picType;
//    /** ISBN 分类 9787-1 非9787-0 */
//    private String categoryType;
//    /** 销量范围 */
//    private String totalSale_range;
//    /* -------------------------
//     * 以下为外部接口新增字段
//     * ------------------------- */
//
//    /** day_sale_7 */
//    private Integer daySale7;
//
//    /** day_sale_15 */
//    private Integer daySale15;
//
//    /** day_sale_30 */
//    private Integer daySale30;
//
//    /** day_sale_60 */
//    private Integer daySale60;
//
//    /** day_sale_90 */
//    private Integer daySale90;
//
//    /** day_sale_180 */
//    private Integer daySale180;
//
//    /** day_sale_365 */
//    private Integer daySale365;
//
//    /** this_year_sale */
//    private Integer thisYearSale;
//
//    /** last_year_sale */
//    private Integer lastYearSale;
//
//    /** total_sale */
//    private Integer totalSale;

//    /** 外部接口：book_pic_obj.small */
//    private String picSmall;
//
//    /** 外部接口：book_pic_obj.large */
//    private String picLarge;
//
//    /** 外部接口：book_pic_obj_s.small */
//    private String picSmallS;
//
//    /** 外部接口：book_pic_obj_s.large */
//    private String picLargeS;



//    /** 店铺类型：0=拼多多, 1=孔夫子,2=淘宝, 3=闲鱼 */
//    private Integer shopType;

//    /** 是否驳回商品：0=不限, 1=驳回商品 */
//    private Integer is_return;
//
//    /** 是否违规商品：0=不限, 1=违规商品 */
//    private Integer is_filter;

}
