package com.ruoyi.web.modules.stock.constant;

/**
 * 库存模块常量
 */
public final class StockConstants
{
    /** 入库单类型：新增商品规格（自动） */
    public static final String INBOUND_TYPE_NEW_SPEC = "0";

    /** 入库单类型：采购入库 */
    public static final String INBOUND_TYPE_PURCHASE = "1";

    /** 入库单类型：退货入库 */
    public static final String INBOUND_TYPE_RETURN = "2";

    /** 入库单类型：其他入库 */
    public static final String INBOUND_TYPE_OTHER = "3";

    /** 流水方向：入库 */
    public static final String DIRECTION_IN = "1";

    /** 流水方向：出库 */
    public static final String DIRECTION_OUT = "2";

    /** 流水原因：新增商品规格 */
    public static final String REASON_NEW_SPEC = "NEW_SPEC";

    /** 流水原因：采购入库 */
    public static final String REASON_PURCHASE_IN = "PURCHASE_IN";

    /** 流水原因：退货入库 */
    public static final String REASON_RETURN_IN = "RETURN_IN";

    /** 流水原因：其他入库 */
    public static final String REASON_OTHER_IN = "OTHER_IN";

    /** 关联类型：入库单 */
    public static final String REF_TYPE_INBOUND = "INBOUND";

    /** 关联类型：出库单 */
    public static final String REF_TYPE_OUTBOUND = "OUTBOUND";

    /** 关联类型：库存调整 */
    public static final String REF_TYPE_ADJUST = "ADJUST";

    /** 调整方式：增量更新 */
    public static final String ADJUST_MODE_INCREMENT = "1";

    /** 调整方式：覆盖更新 */
    public static final String ADJUST_MODE_OVERRIDE = "2";

    /** 调整类型：增加库存 */
    public static final String ADJUST_TYPE_INCREASE = "1";

    /** 调整类型：减少库存 */
    public static final String ADJUST_TYPE_DECREASE = "2";

    /** 调整类型：覆盖库存 */
    public static final String ADJUST_TYPE_OVERRIDE = "3";

    /** 出库单类型：下单扣减（自动） */
    public static final String OUTBOUND_TYPE_ORDER_DEDUCT = "0";

    /** 出库单类型：删除产品规格（自动） */
    public static final String OUTBOUND_TYPE_DELETE_SPEC = "1";

    /** 出库单类型：订单出库（手工线下） */
    public static final String OUTBOUND_TYPE_MANUAL_ORDER = "2";

    /** 出库单类型：过期出库 */
    public static final String OUTBOUND_TYPE_EXPIRED = "3";

    /** 出库单类型：其他出库 */
    public static final String OUTBOUND_TYPE_OTHER = "4";

    /** 流水原因：下单扣减库存 */
    public static final String REASON_ORDER_DEDUCT = "ORDER_DEDUCT";

    /** 流水原因：删除产品规格 */
    public static final String REASON_DELETE_SPEC = "DELETE_SPEC";

    /** 流水原因：手工订单出库 */
    public static final String REASON_MANUAL_ORDER_OUT = "MANUAL_ORDER_OUT";

    /** 流水原因：过期出库 */
    public static final String REASON_EXPIRED_OUT = "EXPIRED_OUT";

    /** 流水原因：其他出库 */
    public static final String REASON_OTHER_OUT = "OTHER_OUT";

    /** 流水原因：库存编辑 */
    public static final String REASON_STOCK_EDIT = "STOCK_EDIT";

    /** 流水原因：取消订单返库存 */
    public static final String REASON_ORDER_CANCEL = "ORDER_CANCEL";

    public static final String SYSTEM_OPERATOR_NAME = "系统";

    public static final String MSG_OUTBOUND_NOT_FOUND = "出库单不存在";

    public static final String MSG_OUTBOUND_TYPE_REQUIRED = "请选择出库类型";

    public static final String MSG_OUTBOUND_TYPE_INVALID = "出库类型无效";

    public static final String MSG_OUTBOUND_ITEMS_REQUIRED = "请至少添加一条出库明细";

    public static final String MSG_OUTBOUND_QTY_INVALID = "请输入正确的出库数量";

    public static final String MSG_OUTBOUND_STOCK_INSUFFICIENT = "出库数量不能大于可用库存";

    public static final String MSG_OUTBOUND_GOODS_INVALID = "商品不存在或已删除";

    public static final String MSG_OUTBOUND_NO_STOCK = "该商品无可用库存";

    public static final String MSG_INBOUND_NOT_FOUND = "入库单不存在";

    public static final String MSG_INBOUND_TYPE_REQUIRED = "请选择入库类型";

    public static final String MSG_INBOUND_TYPE_INVALID = "入库类型无效";

    public static final String MSG_INBOUND_ITEMS_REQUIRED = "请至少添加一条入库明细";

    public static final String MSG_INBOUND_QTY_INVALID = "入库数量须为正整数";

    public static final String MSG_INBOUND_GOODS_INVALID = "商品不存在或已删除";

    public static final String MSG_INBOUND_GOODS_DUPLICATE = "入库明细中存在重复商品";

    public static final String MSG_BARCODE_REQUIRED = "请输入条码或商品编号";

    public static final String MSG_BARCODE_NOT_FOUND = "未找到该条码对应的商品";

    public static final String MSG_REMARK_TOO_LONG = "备注不能超过200字";

    public static final int MAX_REMARK_LENGTH = 200;

    public static final String MSG_ADJUST_MODE_REQUIRED = "请选择调整方式";

    public static final String MSG_ADJUST_MODE_INVALID = "调整方式无效";

    public static final String MSG_ADJUST_QTY_REQUIRED = "请输入调整数量";

    public static final String MSG_ADJUST_QTY_ZERO = "调整数量不能为0";

    public static final String MSG_ADJUST_QTY_INVALID = "请输入正确的库存数量";

    public static final String MSG_ADJUST_STOCK_NEGATIVE = "调整后库存不能小于0";

    public static final String MSG_ADJUST_GOODS_INVALID = "商品不存在或已删除";

    private StockConstants()
    {
    }
}
