using Diligent.WebAPI.Business.Interfaces; using Diligent.WebAPI.Data.Entities; using Microsoft.AspNetCore.Identity; using System.Diagnostics.CodeAnalysis; namespace Diligent.WebAPI.Business.Services { [ExcludeFromCodeCoverage] public class CustomerRepository : ICustomerRepository { private readonly UserManager _customerManager; public CustomerRepository(UserManager customerManager) { _customerManager = customerManager; } public async Task GetCustomer(string username) { var customer = await _customerManager.FindByNameAsync(username); return customer; } public async Task GetCustomerById(string id) { var customer = await _customerManager.FindByIdAsync(id); return customer; } public async Task AddNotification(Customer receiver) { await _customerManager.UpdateAsync(receiver); } public async Task> ReadNotifications(string userId) { var user = await _customerManager.FindByIdAsync(userId); return user.Notifications; } public async Task DeleteNotification(Customer user, Notification notification) { user.Notifications.Remove(notification); await _customerManager.UpdateAsync(user); } } }