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 _Users; public UserDatabaseService(IConfiguration config) { var client = new MongoClient(config.GetConnectionString("TabletDb")); var database = client.GetDatabase("TabletDb"); _Users = database.GetCollection("Users"); } public List GetAll() { return _Users.Find(u => true).ToList(); } public OldUser GetByEmail(string email) { return _Users.Find(u => u.Email == email).FirstOrDefault(); } public OldUser GetById(string id) { return _Users.Find(u => u.Id == id).FirstOrDefault(); } public List GetByInstanceId(string id) { return _Users.Find(u => u.InstanceId == id).ToList(); } public bool IsExist(string id) { return _Users.Find(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); } } }