package service

import (
	"be.ems/src/modules/network_data/model"
	"be.ems/src/modules/network_data/repository"
)

// 实例化服务层 UDMUserInfo 结构体
var NewUDMUserInfo = &UDMUserInfo{
	udmUserInfoRepository: repository.NewUDMUserInfo,
}

// UDM用户IMSI拓展信息 服务层处理
type UDMUserInfo struct {
	// UDM用户IMSI信息数据信息
	udmUserInfoRepository *repository.UDMUserInfo
}

// SelectByIMSIAndNeID 通过IMSI和网元标识查询信息
func (r *UDMUserInfo) SelectByIMSIAndNeID(imsi, neId string) model.UDMUserInfo {
	return r.udmUserInfoRepository.SelectByIMSIAndNeID(imsi, neId)
}

// Save 新增或修改信息
func (r *UDMUserInfo) Save(u model.UDMUserInfo) bool {
	r.udmUserInfoRepository.Delete(u.IMSI, u.NeId)
	return r.udmUserInfoRepository.Inserts([]model.UDMUserInfo{u}) > 0
}

// Delete 删除信息
func (r *UDMUserInfo) Delete(imsi, neId string) int64 {
	return r.udmUserInfoRepository.Delete(imsi, neId)
}
