package com.gic.haoban.manage.service.dao.mapper;

import com.gic.haoban.manage.service.entity.TabNoticeMessage;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface NoticeMessageMapper {
    /**
     */
    int deleteByPrimaryKey(Long noticeMessageId);

    /**
     */
    int insert(TabNoticeMessage record);

    /**
     */
    int insertSelective(TabNoticeMessage record);

    int insertBatch(@Param("records")List<TabNoticeMessage> record);

    /**
     */
    TabNoticeMessage selectByPrimaryKey(Long noticeMessageId);

    /**
     */
    int updateByPrimaryKeySelective(TabNoticeMessage record);

    /**
     */
    int updateByPrimaryKey(TabNoticeMessage record);


    /**
     * 查询列表 根据导购
     *
     * @param enterpriseId
     * @param storeId
     * @param clerkId
     * @param categoryType
     * @return
     */
    List<TabNoticeMessage> listNoticeMessage(@Param("enterpriseId") String enterpriseId,
                                             @Param("storeId") String storeId,
                                             @Param("clerkId") String clerkId,
                                             @Param("categoryType") int categoryType);

    /**
     * 查询列表 根据导购
     *
     * @param enterpriseId
     * @param storeId
     * @param clerkId
     * @param categoryType
     * @return
     */
    int countUnreadNoticeMessage(@Param("enterpriseId") String enterpriseId,
                                 @Param("storeId") String storeId,
                                 @Param("clerkId") String clerkId,
                                 @Param("categoryType") int categoryType);


    /**
     */
    int updateNoticeMessageReadFlag(@Param("enterpriseId") String enterpriseId,
                                    @Param("clerkId") String clerkId,
                                    @Param("categoryType") int categoryType);
}