package com.yunzhupaas.mdm.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.util.Date;
import java.util.List;
import com.alibaba.fastjson.annotation.JSONField;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
/**
 * 商品信息
 *
 * @版本： V5.2.7
 * @版权： Copyright @ 2025  深圳市乐程软件有限公司版权所有
 * @作者： 深圳市乐程软件有限公司
 * @日期： 2026-04-27
 */
@Data
@TableName("mdm_product")
public class ProductEntity  {
    @TableId(value ="product_id"  )
    @JSONField(name = "product_id")
    private String productId;
    @TableField(value = "product_code" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "product_code")
    private String productCode;
    @TableField(value = "product_name" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "product_name")
    private String productName;
    @TableField(value = "short_name" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "short_name")
    private String shortName;
    @TableField(value = "product_type" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "product_type")
    private String productType;
    @TableField(value = "product_category" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "product_category")
    private String productCategory;
    @TableField(value = "brand" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "brand")
    private String brand;
    @TableField(value = "product_model" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "product_model")
    private String productModel;
    @TableField(value = "color" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "color")
    private String color;
    @TableField(value = "product_size" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "product_size")
    private String productSize;
    @TableField(value = "weight" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "weight")
    private BigDecimal weight;
    @TableField(value = "unit_name" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "unit_name")
    private String unitName;
    @TableField(value = "min_order_quantity" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "min_order_quantity")
    private BigDecimal minOrderQuantity;
    @TableField(value = "standard_sales_price" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "standard_sales_price")
    private BigDecimal standardSalesPrice;
    @TableField(value = "gross_weight" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "gross_weight")
    private BigDecimal grossWeight;
    @TableField(value = "net_weight" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "net_weight")
    private BigDecimal netWeight;
    @TableField(value = "packagesize" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "packagesize")
    private String packagesize;
    @TableField(value = "cost_price" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "cost_price")
    private BigDecimal costPrice;
    @TableField(value = "tax_rate" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "tax_rate")
    private BigDecimal taxRate;
    @TableField(value = "tax_code" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "tax_code")
    private String taxCode;
    @TableField(value = "warranty_period" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "warranty_period")
    private Integer warrantyPeriod;
    @TableField(value = "warranty_terms" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "warranty_terms")
    private String warrantyTerms;
    @TableField(value = "remark" , updateStrategy = FieldStrategy.IGNORED)
    @JSONField(name = "remark")
    private String remark;
    @TableField("create_by")
    @JSONField(name = "create_by")
    private String createBy;
    @TableField("create_time")
    @JSONField(name = "create_time")
    private Date createTime;
    @TableField("update_by")
    @JSONField(name = "update_by")
    private String updateBy;
    @TableField("update_time")
    @JSONField(name = "update_time")
    private Date updateTime;
    @TableField(value = "f_tenant_id",fill = FieldFill.INSERT_UPDATE)
    @JSONField(name = "f_tenant_id")
    private String tenantId;
    @TableField("f_flow_id")
    @JSONField(name = "f_flow_id")
    private String flowId;
    @TableField("f_flow_task_id")
    @JSONField(name = "f_flow_task_id")
    private String flowTaskId;
    @TableField("f_delete_mark")
    @JSONField(name = "f_delete_mark")
    private Integer deleteMark;
    @TableField("f_delete_time")
    @JSONField(name = "f_delete_time")
    private Date deleteTime;
    @TableField("f_delete_user_id")
    @JSONField(name = "f_delete_user_id")
    private String deleteUserId;
    @TableField("f_version")
    @Version
    @JSONField(name = "f_version")
    private Integer version;

}
