package com.hzs.member.empty.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hzs.common.domain.member.empty.CuMemberEmptyProduct;
import com.hzs.common.domain.member.empty.ext.CuMemberEmptyProductExt;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 空单批次明细产品 Mapper 接口
 *
 * @author hzs
 * @since 2023-08-28
 */
public interface CuMemberEmptyProductMapper extends BaseMapper<CuMemberEmptyProduct> {

    /**
     * 批量删除会员空单产品
     *
     * @param emptyProductList 空单产品数据
     * @param pkMemberEmpty    空单批次ID
     * @param userId           当前会员
     * @return
     */
    int deleteBatch(@Param("emptyProductList") List<CuMemberEmptyProduct> emptyProductList,
                    @Param("pkMemberEmpty") Long pkMemberEmpty,
                    @Param("userId") Long userId);

    /**
     * 批量插入会员空单产品
     *
     * @param emptyProductList 空单产品数据
     * @param userId           当前会员
     * @return
     */
    int insertOrUpdateBatch(@Param("emptyProductList") List<CuMemberEmptyProduct> emptyProductList, @Param("userId") Long userId);

    /**
     * 查询空单明细产品信息列表
     *
     * @param emptyDetailIdList 空单明细ID列表
     * @return
     */
    List<CuMemberEmptyProductExt> queryProductList(@Param("emptyDetailIdList") List<Long> emptyDetailIdList);

}
