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

import com.gic.api.base.commons.Page;
import com.gic.haoban.base.api.common.BasePageInfo;
import com.gic.haoban.manage.api.dto.StaffClerkBindLogDetailDTO;
import com.gic.haoban.manage.service.entity.TabHaobanStaffClerkBindLog;

import java.util.List;

/**
 * Created 2020/6/24.
 *
 * @author hua
 */
public interface StaffClerkBindLogService {
    /**
     * 绑定日志
     *
     * @param bindLog
     */
    public void insert(TabHaobanStaffClerkBindLog bindLog);

    /**
     * 插入日志到mq
     *
     * @param staffId
     * @param optStaffId
     * @param optType
     * @param channelCode
     * @param relationId
     */
    public void pushToMq(String staffId, String optStaffId, int optType, int channelCode, String relationId);

    /**
     * 插入日志到mq
     *
     * @param optStaffId
     * @param optType
     * @param channelCode
     * @param relationIds
     */
    public void pushToMqBatch(String optStaffId, int optType, int channelCode, List<String> relationIds);

    /**
     * @return
     */
    public Page<StaffClerkBindLogDetailDTO> pageBindLog(String wxEnterpriseId, String enterpriseId, int optType, String search, BasePageInfo pageInfo);

    public Page<StaffClerkBindLogDetailDTO> pageUnBindLog(String wxEnterpriseId, String clerkId, String enterpriseId, int optType, BasePageInfo pageInfo);
}
