package com.lightinit.hsdataplatform.mapper;

import com.lightinit.hsdataplatform.entity.AtlasRelationship;
import com.lightinit.hsdataplatform.entity.AtlasRelationshipExample;
import java.util.List;

import com.lightinit.hsdataplatform.model.admin.RelationshipManageListModel;
import com.lightinit.hsdataplatform.model.admin.RelationshipManageSearchModel;
import org.apache.ibatis.annotations.Param;

public interface AtlasRelationshipMapper {
    long countByExample(AtlasRelationshipExample example);

    int deleteByExample(AtlasRelationshipExample example);

    int deleteByPrimaryKey(Long id);

    int insert(AtlasRelationship record);

    int insertSelective(AtlasRelationship record);

    List<AtlasRelationship> selectByExample(AtlasRelationshipExample example);

    AtlasRelationship selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") AtlasRelationship record, @Param("example") AtlasRelationshipExample example);

    int updateByExample(@Param("record") AtlasRelationship record, @Param("example") AtlasRelationshipExample example);

    int updateByPrimaryKeySelective(AtlasRelationship record);

    int updateByPrimaryKey(AtlasRelationship record);

    List<RelationshipManageListModel> callerList(Long id);

    List<RelationshipManageListModel> calleeList(RelationshipManageSearchModel inputModel);

    long calleeCount(RelationshipManageSearchModel inputModel);

    List<RelationshipManageListModel> caller(Long id);

    List<RelationshipManageListModel> callee(Long id);
}