package org.dromara.payment.operator.mapper;

import org.apache.ibatis.annotations.Param;
import org.dromara.payment.operator.domain.ReProductInvoice;
import org.dromara.payment.operator.domain.vo.ReProductInvoiceVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

import java.util.Date;
import java.util.List;

/**
 * 产品开票类目Mapper接口
 *
 * @author LionLi
 * @date 2024-03-28
 */
public interface ReProductInvoiceMapper extends BaseMapperPlus<ReProductInvoice, ReProductInvoiceVo> {
    /**
     * 分配产品开票类目
     * @param proIds 产品id列表
     * @param busIds 引用业务id列表(结算中心id或运营商id)
     * @param busType 引用业务类型（6：服务商 7：运营商 8：代理商 9：商户 11:账单批次）
     * @param newBusId 接收业务id列表(结算中心id或运营商id)
     * @param newBusType 接收业务类型（6：服务商 7：运营商 8：代理商 9：商户 11:账单批次）
     * @param operBy 操作人id
     * @param operTime 操作时间
     * @return
     */
    Integer allocProduct(@Param("proIds") List<Long> proIds, @Param("busIds") List<Long> busIds, @Param("busType") int busType, @Param("newBusId") Long newBusId, @Param("newBusType") int newBusType, @Param("operBy") Long operBy, @Param("operTime") Date operTime);
}
