package com.lightinit.hsdataportal.mapper;

import com.lightinit.hsdataportal.entity.ResourceFollow;
import com.lightinit.hsdataportal.entity.ResourceFollowExample;
import java.util.List;

import com.lightinit.hsdataportal.model.*;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.RequestMapping;

public interface ResourceFollowMapper {
    long countByExample(ResourceFollowExample example);

    int deleteByExample(ResourceFollowExample example);

    int deleteByPrimaryKey(Long id);

    int insert(ResourceFollow record);

    int insertSelective(ResourceFollow record);

    List<ResourceFollow> selectByExample(ResourceFollowExample example);

    ResourceFollow selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") ResourceFollow record, @Param("example") ResourceFollowExample example);

    int updateByExample(@Param("record") ResourceFollow record, @Param("example") ResourceFollowExample example);

    int updateByPrimaryKeySelective(ResourceFollow record);

    int updateByPrimaryKey(ResourceFollow record);

    List<MyAPIOpenFollowListModel> queryOpenList(MyAPIFollowSearchModel followSearchModel) ;
    long queryOpenCount(MyAPIFollowSearchModel followSearchModel);

    List<MyMicroappFollowListModel> selectFollowOpenList(MyMicroappFollowSearchModel inputModel);

    long selectFollowOpenCount(MyMicroappFollowSearchModel inputModel);

    List<FollowDataListModel> getFollowDateList(ResourceAuthMapperDemo resourceAuthMapperDemo);

    int selectFollowApiOrMicCount(@Param("platformType") String platformType,
                                  @Param("userId") Long userId,
                                  @Param("resourceType") String resourceType);

    int selectFollowCount(@Param("platformType") String open, @Param("settingId") Long settingId);
}