package com.ruoyi.pay.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 产品业务对象 pay_products
 *
 * @author ruoyi
 * @date 2025-05-12
 */

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

    /**
     * 主键
     */
    //@NotNull(message = "主键不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 租户id
     */
    @NotNull(message = "租户id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long tenantId;

    /**
     * 毛料ID
     */
    @NotNull(message = "毛料ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long materialId;

    /**
     * 产品名称
     */
    @NotBlank(message = "产品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String productName;

    /**
     * 网机编号
     */
   // @NotBlank(message = "网机编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String netMachineNo;

    /**
     * 图纸编号
     */
   // @NotBlank(message = "图纸编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String drawingNum;

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

    /**
     * 规格型号
     */
   // @NotBlank(message = "规格型号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String model;

    /**
     * 产品单位
     */
   // @NotBlank(message = "产品单位不能为空", groups = { AddGroup.class, EditGroup.class })
    private String danwei;

    /**
     * 毛料名称
     */
    @NotBlank(message = "毛料名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String originName;

    /**
     * 毛料规格
     */
   // @NotBlank(message = "毛料规格不能为空", groups = { AddGroup.class, EditGroup.class })
    private String originModel;

    /**
     * 毛料尺寸
     */
    //@NotBlank(message = "毛料尺寸不能为空", groups = { AddGroup.class, EditGroup.class })
    private String originSize;

    /**
     * 毛料单位
     */
   // @NotBlank(message = "毛料单位不能为空", groups = { AddGroup.class, EditGroup.class })
    private String originDanwei;

    /**
     * 入库时间
     */
   // @NotNull(message = "入库时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date storageTime;

    /**
     * 最低价格
     */
    @NotNull(message = "最低价格不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal minPrice;

    /**
     * 最高价格
     */
    @NotNull(message = "最高价格不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal maxPrice;

    /**
     * 删除标志（1:删除 0:未删除）
     */
    //@NotNull(message = "删除标志（1:删除 0:未删除）不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer deleted;

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


}
