package com.gic.haoban.manage.service.task;

import com.gic.haoban.manage.api.dto.DealParamMqDTO;
import com.gic.haoban.manage.service.entity.TabHaobanPreDealLog;

/**
 * Created 2020/4/13.
 *
 * @author hua
 */
public interface BaseSyncOperation {
    /**
     * 处理单条数据
     *
     * @param dealParamMqDTO
     */
    void dealSingleByMq(DealParamMqDTO dealParamMqDTO, TabHaobanPreDealLog dataPre);

    /**
     * 单条处理异常
     *
     * @param taskId
     * @param dataId
     * @param enterpriseId
     * @param reason
     */
    void dealException(String taskId, String dataId, String enterpriseId, String reason);

    /**
     * 单条处理成功
     *
     * @param taskId
     * @param dataId
     * @param wxEnterpriseId
     */
    void dealSuccess(String taskId, String dataId, String enterpriseId, String wxEnterpriseId);


    /**
     * 检查是否成功
     *
     * @param taskId 任务id
     * @author mozhu
     * @date 2021-12-22 11:28:47
     */
    void checkDepartmentTask(String taskId);
}
