package org.dromara.zhishu.domain.bo;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.github.linpeilie.annotations.AutoMapper;
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.BookBaseInfo;
import org.dromara.zhishu.domain.vo.BookPic;

import java.util.Date;
import java.util.List;

/**
 * 基础信息业务对象 book_base_info
 *
 * @author
 * @date 2025-03-08
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = BookBaseInfo.class, reverseConvertGenerate = false)
public class BookUpdateInfoBo 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 fixPbook_picrice;

    /** 分类 */
    private String category;

    /** 是否套装 1是 0否 */
    private Integer isSuit;      // 改 Integer

    /** 书图片 */
    private BookPic bookPic;
    private String isBookPic;
    private String isBookPicS;

    /** 小图（外部接口需要） */
    private BookPic bookPicS;          // 新增
    private String bookPicB;          // 新增
    private String bookPicW;          // 新增

    /** 更新时间戳（外部接口使用） */
    @JsonProperty("updateTime")
    private String updateTimeTimestamp;
}
