package com.qs.mp.framework.service;

import com.qs.mp.common.enums.AsyncTaskTypeEnum;
import com.qs.mp.framework.domain.AsyncTask;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author quanshu
 * @since 2022-06-07
 */
public interface IAsyncTaskService extends IService<AsyncTask> {

    /**
     * 插入异步任务
     * @param taskType
     * @param bizId
     * @return
     */
    boolean insertAsyncTask(AsyncTaskTypeEnum taskType, String bizId);

    /**
     * 经销商确认收货后相关任务处理
     * @param asyncTask
     */
    void channelConfirmReceipt(AsyncTask asyncTask);

    /**
     * 盲票支付相关任务处理
     * @param asyncTask
     */
    void ticketPay(AsyncTask asyncTask);

    /**
     * 盲票生成相关任务处理
     * @param asyncTask
     */
    void ticketGenerate(AsyncTask asyncTask);
}
