package cn.iocoder.yudao.module.identity.dal.dataobject.generaterecord;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

/**
 * 标识码生成记录 DO
 *
 * @author 芋道源码
 */
@TableName("identity_generate_record")
@KeySequence("identity_generate_record_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class GenerateRecordDO extends BaseDO {

    /**
     * 编码
     */
    @TableId
    private Long id;
    /**
     * 记录编码
     */
    private String generateRecordId;
    /**
     * 码规则id
     */
    private Long ruleId;
    /**
     * 码规则
     */
    private String codeRuleFormat;
    /**
     * 码类型 0普通码 1明暗码
     */
    private Integer codeType;
    /**
     * 字符长度
     */
    private Integer charLength;
    /**
     * 字符类型 0纯数字  1纯字母  2混合类型
     */
    private Integer charType;
    /**
     * 数量
     */
    private Integer codeNum;

    /**
     * 文件路径
     */
    private String fileUrl;
    /**
     * 纯图片的文件路径
     */
    private String imageFileUrl;
    /**
     * 操作者
     */
    private String operateUser;
    /**
     * 操作者id
     */
    private Long operateUserId;
    /**
     * 状态 0：生成中  1：已生成文字码，未生成图片码  2：文字及图片码均生成
     */
    private Integer state;
    /**
     * 所属商户id
     */
    private Long belongBusinessId;
    /**
     * 所属商户名称
     */
    private String belongBusinessName;

    @TableField(exist = false)
    private String batchId;

    @TableField(exist = false)
    private String goodsName;

}
