package com.hzs.activity.pick.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hzs.activity.pick.param.AcRetailPickParam;
import com.hzs.common.domain.activity.pick.AcRetailPick;
import com.hzs.common.domain.activity.pick.ext.AcRetailPickExt;
import org.apache.ibatis.annotations.Param;

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

/**
 * 新零售会员提货数量 Mapper 接口
 *
 * @author hzs
 * @since 2025-01-09
 */
public interface AcRetailPickMapper extends BaseMapper<AcRetailPick> {

    /**
     * 更新提货数量
     *
     * @param pkMember   会员ID（可为null）
     * @param pkId       主键ID
     * @param quantity   数量
     * @param pkModified 修改人ID
     * @return
     */
    int updatePickQuantity(@Param("pkMember") Long pkMember,
                           @Param("pkId") Long pkId,
                           @Param("quantity") Integer quantity,
                           @Param("pkModified") Long pkModified);


    /**
     * 提货批量操作
     *
     * @param pkBaseId 活动ID
     * @param nowDate  当前时间
     * @return
     */
    int handlePick(@Param("pkBaseId") Long pkBaseId, @Param("nowDate") Date nowDate);

    /**
     * 列表数据
     *
     * @param param     查询入参
     * @return
     */
    List<AcRetailPickExt> listData(@Param("param") AcRetailPickParam param);

}
