package com.shkj.wms.bo;

import com.shkj.wms.validator.Dict;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * 号码管理对象
 *
 * @author lch
 * @date 2022-04-11
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
public class SysSeqManaEditBo implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * id 传递就是更新 不传递就是添加
     */
    private Long id;


    /**
     * 序列号名称
     */
    @NotBlank(message = "序列号名称不得为空")
    private String seqName;


    /**
     * 序列号类型
     */
    @NotBlank(message = "序列号类型不得为空")
    private String seqType;


    /**
     * 序列号编码
     */
    @NotBlank(message = "序列号编码不得为空")
    private String seqCode;


    /**
     * 序列前缀
     */
    @NotBlank(message = "序列前缀不得为空")
    private String seqPrefix;


    /**
     * 序列号位数
     */
    @NotNull(message = "序列号位数不得为空")
    private Integer seqDigit;


    /**
     * 序列号日期格式 yyyy, yyyyMM, yyyyMMdd
     */
    @NotBlank(message = "序列号日期格式不得为空")
    @Dict(type = "seq_date_dict", message = "序列号日与数据字典值不匹配")
    private String seqDate;


    /**
     * 序列号增量
     */
    @NotNull(message = "序列号增量不得为空")
    private Long seqIncrease;


    /**
     * 序列号最大值
     */
    @NotNull(message = "序列号最大值不得为空")
    private Long seqMax;


    /**
     * 备注
     */
    private String remark;


    /**
     * 仓ID
     */
    private Long branchId;


}
