rk
4 小时以前 cf1d82548a1bd8155ffe9b486df8167aa9e63a7d
server/services/src/main/java/com/doumee/service/business/DouyinVerifyService.java
@@ -1,6 +1,7 @@
package com.doumee.service.business;
import com.doumee.core.douyin.dto.DouyinBaseResp;
import com.doumee.core.douyin.dto.DouyinBoundProduct;
import com.doumee.core.douyin.dto.DouyinCancelParam;
import com.doumee.core.douyin.dto.DouyinPrepareParam;
import com.doumee.core.douyin.dto.DouyinPrepareResp;
@@ -30,12 +31,37 @@
    DouyinVerifyRecord verify(DouyinVerifyParam param, String operator);
    /**
     * 验券(核销),使用调用方已校验好的套餐绑定结果(scanVerify 核销前校验后调用)。
     * <p>核销成功后直接用 boundProduct 开通套餐,不再重复查询商品/套餐。
     * @param param        核销入参
     * @param operator     操作人ID
     * @param boundProduct 核销前已校验的抖音商品 + 本地套餐(scanVerify 传入)
     */
    DouyinVerifyRecord verify(DouyinVerifyParam param, String operator, DouyinBoundProduct boundProduct);
    /**
     * 核销前校验:按 skuId 校验抖音商品在库且已绑定有效本地套餐。
     * <p>scanVerify 在核销前调用,失败抛业务异常(券尚未核销,避免抖音已核销但本地未开卡的不一致)。
     * @param skuId 核销券对应的抖音 SKU ID
     * @return 抖音商品 + 绑定的本地套餐(供 verify 开卡复用)
     */
    DouyinBoundProduct resolveBoundProduct(String skuId);
    /**
     * 撤销核销(核销后 1 小时内),更新记录撤销状态
     * @param operator 操作人ID(由调用端传入,web 端取登录会员ID)
     */
    DouyinVerifyRecord cancel(DouyinCancelParam param, String operator);
    /**
     * 按 discountMemberId 把套餐卡详情填到 record.packageInfo(scanVerify 展示用)。
     * <p>无套餐卡ID或查不到时,packageInfo 置 null,不影响主流程。
     *
     * @param record 核销记录(含 discountMemberId)
     */
    void fillPackageInfo(DouyinVerifyRecord record);
    /**
     * 核销记录分页(web 端小程序自用,简单分页)
     */
    PageData<DouyinVerifyRecord> findPage(PageWrap<DouyinVerifyRecord> pageWrap);