50 lines
2.1 KiB
C#
Raw Normal View History

2024-11-12 23:13:20 +04:00
using ProjectLibrary.Entites;
using ProjectLibrary.Entities;
using ProjectLibrary.Repositories;
using System.Collections.Generic;
using System.Linq;
namespace ProjectLibrary.Repositories.Implementations
{
public class BookLibraryRepository : IBookLibraryRepository
{
// Эмулируем базу данных в виде списка
2024-11-19 14:49:58 +04:00
private readonly List<Book_Library> _bookLibraries = new List<Book_Library>();
2024-11-12 23:13:20 +04:00
2024-11-19 14:49:58 +04:00
public void CreateBookLibrary(Book_Library bookLibrary)
2024-11-12 23:13:20 +04:00
{
// Логика для добавления связи книги и библиотеки
_bookLibraries.Add(bookLibrary);
}
public void DeleteBookLibrary(int bookId, int libraryId)
{
// Логика для удаления связи книги и библиотеки по идентификаторам
var bookLibrary = _bookLibraries.FirstOrDefault(bl => bl.BookID == bookId && bl.LibraryID == libraryId);
if (bookLibrary != null)
{
_bookLibraries.Remove(bookLibrary);
}
}
2024-11-19 14:49:58 +04:00
public IEnumerable<Book_Library> ReadBookLibraries(int? bookId = null, int? libraryId = null)
2024-11-12 23:13:20 +04:00
{
// Логика для получения всех связей книг и библиотек с возможностью фильтрации по bookId и libraryId
return _bookLibraries.Where(bl =>
(!bookId.HasValue || bl.BookID == bookId) &&
(!libraryId.HasValue || bl.LibraryID == libraryId));
}
2024-11-19 14:49:58 +04:00
public void UpdateBookLibrary(Book_Library bookLibrary)
2024-11-12 23:13:20 +04:00
{
// Логика для обновления информации о связи книги и библиотеки
var existingBookLibrary = _bookLibraries.FirstOrDefault(bl => bl.BookID == bookLibrary.BookID && bl.LibraryID == bookLibrary.LibraryID);
if (existingBookLibrary != null)
{
_bookLibraries.Remove(existingBookLibrary);
_bookLibraries.Add(bookLibrary);
}
}
}
}