package com.ruoyi.web.modules.trading.support;

import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.StringUtils;

/**
 * 供应商小程序订单 Tab 解析。
 */
public final class AppSupplierOrderSupport
{
    private AppSupplierOrderSupport()
    {
    }

    public static String normalizeStatusTab(String statusTab)
    {
        if (StringUtils.isEmpty(statusTab))
        {
            return AppSupplierOrderRules.STATUS_TAB_ALL;
        }
        String key = statusTab.trim().toUpperCase();
        switch (key)
        {
            case AppSupplierOrderRules.STATUS_TAB_ALL:
            case AppSupplierOrderRules.STATUS_TAB_PENDING:
            case AppSupplierOrderRules.STATUS_TAB_COMPLETED:
                return key;
            default:
                throw new ServiceException(AppSupplierOrderRules.MSG_STATUS_TAB_INVALID);
        }
    }

    /**
     * 转为订单表 order_status；全部订单返回 null。
     */
    public static String resolveOrderStatus(String statusTab)
    {
        if (AppSupplierOrderRules.STATUS_TAB_PENDING.equals(statusTab))
        {
            return TradeOrderRules.ORDER_STATUS_PENDING;
        }
        if (AppSupplierOrderRules.STATUS_TAB_COMPLETED.equals(statusTab))
        {
            return TradeOrderRules.ORDER_STATUS_COMPLETED;
        }
        return null;
    }
}
