manager-service/ManagerService/Services/UserDatabaseService.cs
2025-03-19 08:57:29 +01:00

66 lines
1.7 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Manager.Interfaces.Models;
using ManagerService.Data;
using Microsoft.Extensions.Configuration;
using MongoDB.Driver;
namespace Manager.Services
{
public class UserDatabaseService
{
private readonly IMongoCollection<OldUser> _Users;
public UserDatabaseService(IConfiguration config)
{
var client = new MongoClient(config.GetConnectionString("TabletDb"));
var database = client.GetDatabase("TabletDb");
_Users = database.GetCollection<OldUser>("Users");
}
public List<OldUser> GetAll()
{
return _Users.Find(u => true).ToList();
}
public OldUser GetByEmail(string email)
{
return _Users.Find<OldUser>(u => u.Email == email).FirstOrDefault();
}
public OldUser GetById(string id)
{
return _Users.Find<OldUser>(u => u.Id == id).FirstOrDefault();
}
public List<OldUser> GetByInstanceId(string id)
{
return _Users.Find<OldUser>(u => u.InstanceId == id).ToList();
}
public bool IsExist(string id)
{
return _Users.Find<OldUser>(u => u.Id == id).FirstOrDefault() != null ? true : false;
}
public OldUser Create(OldUser user)
{
_Users.InsertOne(user);
return user;
}
public OldUser Update(string id, OldUser userIn)
{
_Users.ReplaceOne(user => user.Id == id, userIn);
return userIn;
}
public void Remove(string id)
{
_Users.DeleteOne(user => user.Id == id);
}
}
}