package com.yiqi.activity.mapper;

import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yiqi.activity.domain.dto.weapp.WeAppActivityCouponQueryDTO;
import com.yiqi.activity.domain.dto.weapp.WeAppActivityDiscountQueryDTO;
import com.yiqi.activity.domain.dto.weapp.WeAppActivityRechargeQueryDTO;
import com.yiqi.activity.domain.vo.weapp.WeAppActivityCouponQueryVO;
import com.yiqi.activity.domain.vo.weapp.WeAppActivityDiscountQueryVO;
import com.yiqi.activity.domain.vo.weapp.WeAppActivityRechargeQueryVO;
import org.apache.ibatis.annotations.Mapper;
import com.yiqi.activity.domain.ActivityInfo;
import org.apache.ibatis.annotations.Param;

/**
 * 活动明细Mapper接口
 *
 * @author xiaohei
 * @date 2023-09-08
 */
@Mapper
public interface ActivityInfoMapper extends BaseMapper<ActivityInfo> {
    /**
     * 查询活动明细
     *
     * @param id 活动明细主键
     * @return 活动明细
     */
    public ActivityInfo selectActivityInfoById(Long id);

    /**
     * 查询活动明细列表
     *
     * @param activityInfo 活动明细
     * @return 活动明细集合
     */
    public List<ActivityInfo> selectActivityInfoList(ActivityInfo activityInfo);

    /**
     * 新增活动明细
     *
     * @param activityInfo 活动明细
     * @return 结果
     */
    public int insertActivityInfo(ActivityInfo activityInfo);

    /**
     * 修改活动明细
     *
     * @param activityInfo 活动明细
     * @return 结果
     */
    public int updateActivityInfo(ActivityInfo activityInfo);

    /**
     * 删除活动明细
     *
     * @param id 活动明细主键
     * @return 结果
     */
    public int deleteActivityInfoById(@Param("id") Long id,@Param("activityType") String activityType);

    /**
     * 批量删除活动明细
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteActivityInfoByIds(@Param("ids") Long[] ids, @Param("activityType") String activityType);

    List<WeAppActivityCouponQueryVO> selectActivityCouponList(WeAppActivityCouponQueryDTO weAppActivityCouponQueryDTO);

    List<WeAppActivityDiscountQueryVO> selectActivityDiscountList(WeAppActivityDiscountQueryDTO weAppActivityDiscountQueryDTO);

    List<WeAppActivityRechargeQueryVO> selectActivityRechargeList(WeAppActivityRechargeQueryDTO weAppActivityRechargeQueryDTO);
}
