package repository

import (
	"be.ems/src/modules/network_element/model"
)

// 网元信息 数据层接口
type INeInfo interface {
	// SelectNeInfoByNeTypeAndNeID 通过ne_type和ne_id查询网元信息
	SelectNeInfoByNeTypeAndNeID(neType, neID string) model.NeInfo

	// SelectPage 根据条件分页查询
	SelectPage(query map[string]any) map[string]any

	// SelectList 查询列表
	SelectList(neInfo model.NeInfo) []model.NeInfo

	// SelectByIds 通过ID查询
	SelectByIds(infoIds []string) []model.NeInfo

	// Insert 新增信息
	Insert(neInfo model.NeInfo) string

	// Update 修改信息
	Update(neInfo model.NeInfo) int64

	// DeleteByIds 批量删除网元信息
	DeleteByIds(infoIds []string) int64

	// CheckUniqueNeTypeAndNeId 校验同类型下标识是否唯一
	CheckUniqueNeTypeAndNeId(neInfo model.NeInfo) string
}
