package com.ruoyi.ibs.list.mapper;

import java.util.List;
import com.ruoyi.ibs.list.domain.CampaignCount;
import com.ruoyi.ibs.list.domain.VisitCampaignComment;
import com.ruoyi.ibs.list.domain.VisitCampaignCount;
import org.apache.ibatis.annotations.Mapper;

/**
 * 走访任务统计卡片Mapper接口
 * 
 * @author ruoyi
 * @date 2025-04-02
 */
@Mapper
public interface CampaignCountMapper 
{
    /**
     * 查询走访任务统计卡片
     * 
     * @param dt 走访任务统计卡片主键
     * @return 走访任务统计卡片
     */
    public CampaignCount selectCampaignCountByDt(String dt);

    /**
     * 查询走访任务统计卡片列表
     * 
     * @param campaignCount 走访任务统计卡片
     * @return 走访任务统计卡片集合
     */
    public List<CampaignCount> selectCampaignCountList(CampaignCount campaignCount);

    public List<VisitCampaignCount> selectVisitCampaignCountList(VisitCampaignCount visitCampaignCount);

    public List<VisitCampaignCount> selectVisitCampaignCountCheckList(VisitCampaignCount visitCampaignCount);

    public List<VisitCampaignCount> selectVisitCampaignBranchList(VisitCampaignCount visitCampaignCount);

    public List<VisitCampaignCount> selectOutletList(VisitCampaignCount visitCampaignCount);

    public List<VisitCampaignCount> selectPersonList(VisitCampaignCount visitCampaignCount);

    public List<VisitCampaignCount> selectCommentList(VisitCampaignComment visitCampaignComment);

    public int insertVisitCampaignComment(VisitCampaignComment visitCampaignComment);

    /**
     * 新增走访任务统计卡片
     * 
     * @param campaignCount 走访任务统计卡片
     * @return 结果
     */
    public int insertCampaignCount(CampaignCount campaignCount);

    /**
     * 修改走访任务统计卡片
     * 
     * @param visitCampaignComment 走访任务统计卡片
     * @return 结果
     */
    public int updateCampaignCount(VisitCampaignComment visitCampaignComment);

    /**
     * 删除走访任务统计卡片
     * 
     * @param dt 走访任务统计卡片主键
     * @return 结果
     */
    public int deleteCampaignCountByDt(String dt);

    /**
     * 批量删除走访任务统计卡片
     * 
     * @param dts 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCampaignCountByDts(String[] dts);
}
