package com.ruoyi.asset.constant;

/**
 * 资产领用单状态常量定义
 * 
 * 业务流转生命周期如下：
 * DRAFT (草稿) -> 提交 -> PENDING_CONFIRM (待确认)
 * PENDING_CONFIRM (待确认) -> 确认领用 -> COMPLETED (已完成) [资产扣减/标记为在用，归属变更并写入履历]
 * PENDING_CONFIRM (待确认) -> 驳回 -> REJECTED (已驳回)
 * REJECTED (已驳回) -> 修改/提交 -> PENDING_CONFIRM (待确认)
 * 仅处于 DRAFT 状态的单据允许修改 and 逻辑删除。
 *
 * @author Yangk
 */
public final class ReceiveOrderStatus
{
    /** 领用单草稿状态：允许编辑资产明细、备注等，可进行物理/逻辑删除 */
    public static final String DRAFT = "DRAFT";
    
    /** 待部门负责人或管理员确认状态：此时单据及资产明细已被锁定，不允许编辑与删除 */
    public static final String PENDING_CONFIRM = "PENDING_CONFIRM";
    
    /** 领用确认完成状态：资产已实际转移给领用人，资产状态变更为在用，并生成资产履历记录 */
    public static final String COMPLETED = "COMPLETED";
    
    /** 领用申请被驳回状态：允许重新编辑并提交，或者直接删除 */
    public static final String REJECTED = "REJECTED";

    private ReceiveOrderStatus()
    {
    }
}
