package com.jeesharp.business.modules.pay.api;

import com.jeesharp.business.modules.pay.paysubmerchantapplyment.vo.PaySubMerchantOnboardingSnapshotVO;

/**
 * 微信特约商户进件跨模块 API，供商城等模块校验商户是否已完成进件并获得 sub_mch_id。
 *
 * @author jeesharp
 * @since 2026-06-11
 */
public interface PaySubMerchantOnboardingApi {

    /**
     * 商户租户是否已有<strong>有效</strong>微信特约商户号：
     * 进件存在、{@code apply_status=FINISH}、{@code sub_mch_id} 已回填且未注销。
     *
     * @param merchantTenantId 商户租户主键
     * @return {@code true} 表示可参与分账结算
     */
    boolean hasEffectiveSubMchId(String merchantTenantId);

    /**
     * 解析商户租户的有效 sub_mch_id；无效时返回 {@code null}。
     */
    String resolveSubMchId(String merchantTenantId);

    /**
     * 解析商户租户进件快照（含是否有效及原因说明）。
     */
    PaySubMerchantOnboardingSnapshotVO getSnapshot(String merchantTenantId);
}
