package com.cf.imes.module.plan.dal.dataobject.orderParts;

import com.baomidou.mybatisplus.annotation.FieldFill;
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 com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;

/**
 * 配件表 parts_{N} DO
 *
 * @author 晨丰科技
 */
@TableName("parts")
@KeySequence("parts_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PartsDO extends BaseDO {

    /**
     * 配件 ID
     */
    @TableId
    private Long id;
    /**
     * 组织id
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long organId;
    /**
     * 设计端商品ID
     */
    private String goodsId;
    /**
     * 配件名称
     */
    private String name;
    /**
     * 材质：颗粒板、欧松板、多层板、生态板、禾香板、密度板、实木、铝蜂窝板、铝塑板
     */
    private String material;
    /**
     * 颜色
     */
    private String color;
    /**
     * 配件类型
     */
    private String type;
    /**
     * 配件主类
     */
    private String category;
    /**
     * 型号
     */
    private String model;
    /**
     * 宽度
     */
    private Double width;
    /**
     * 长度
     */
    private Double length;
    /**
     * 厚度
     */
    private Double thickness;
    /**
     * 规格
     */
    private String spec;
    /**
     * 品牌
     */
    private String brand;
    /**
     * 厂家
     */
    private String factory;
    /**
     * 单位
     */
    private String unit;
    /**
     * 是否复合部件：0 否 1 是
     */
    private Boolean isComposite;
    /**
     * 子配件ID列表,复合部件时记录子配件ID,半角逗号分隔
     */
    private String subparts;
    /**
     * 备注
     */
    private String remark;

}