public List <object> SendMessageForReturningBook( GivenBooksViewModel model, string userId, string givenBookId) { var givenBook = this.context.GetBooks .FirstOrDefault(gb => gb.Id == givenBookId); List <object> result = new List <object>(); result.Add(this.GetGevenBooks(new GivenBooksViewModel(), userId)); if (givenBook != null) { var book = this.context.Books.FirstOrDefault(b => b.Id == givenBook.BookId); var message = $"Напомняне за връщане на книгата - {book.BookName} {book.Author}!"; this.messageService.AddMessageAtDB(givenBook.UserId, message); result.Add("Успершно изпратено напомняне за връщане на книга!"); } else { result.Add("Не успершно изпратено напомняне за връщане на книга!"); } return(result); }
public GivenBooksViewModel PreparedPage(string userId) { var model = new GivenBooksViewModel(); var returnModel = this.GetGevenBooks(model, userId); return(returnModel); }
public List <object> ReturningBook( GivenBooksViewModel model, string userId, string givenBookId) { var givenBook = this.context.GetBooks .FirstOrDefault(gb => gb.Id == givenBookId); List <object> result = new List <object>(); result.Add(this.GetGevenBooks(model, userId)); if (givenBook != null) { givenBook.ReturnedOn = DateTime.UtcNow; this.context.SaveChanges(); var message = $"Успершно връщане на книгата!"; result.Add(message); this.messageService.AddMessageAtDB(userId, message); this.messageService.AddMessageAtDB(givenBook.UserId, message); } else { result.Add("Няма дадена книга на този потребител!"); } return(result); }
public IActionResult DeleteGivenBook(GivenBooksViewModel model, string id) { this.StartUp(); var returnModel = this.givenBooksService.DeletingBook(model, this.userId, id); return(this.View("GivenBooks", returnModel[0])); }
public IActionResult GivenBooksSearch(GivenBooksViewModel model) { this.StartUp(); var returnModel = this.givenBooksService.GetGevenBooks(model, this.userId); return(this.View("GivenBooks", returnModel)); }
public IActionResult ChangePageGivenBooks(GivenBooksViewModel model, int id) { this.StartUp(); var returnModel = this.givenBooksService.ChangeActivePage(model, this.userId, id); return(this.View("GivenBooks", returnModel)); }
public List <object> SendMessageForReturningBook( GivenBooksViewModel model, string userId, string givenBookId) { var givenBook = this.context.GetBooks .FirstOrDefault(gb => gb.Id == givenBookId); List <object> result = new List <object>(); result.Add(this.GetGevenBooks(new GivenBooksViewModel(), userId)); if (givenBook != null) { var book = this.context.Books.FirstOrDefault(b => b.Id == givenBook.BookId); var message = $"Моля върнете книгата - {book.Title} {book.Author} с каталожен номер {book.CatalogNumber}!"; this.notificationService.AddNotificationAtDB(givenBook.UserId, message); result.Add("Успешно изпратено съобщение за връщане на книга!"); } else { result.Add("Неуспешно изпратено съобщение за връщане на книга!"); } return(result); }
public List <object> ReturningBook( GivenBooksViewModel model, string userId, string givenBookId) { var givenBook = this.context.GetBooks .FirstOrDefault(gb => gb.Id == givenBookId); List <object> result = new List <object>(); result.Add(this.GetGevenBooks(model, userId)); if (givenBook != null) { givenBook.ReturnedOn = DateTime.UtcNow; this.context.SaveChanges(); var user = this.context.Users.FirstOrDefault(u => u.Id == userId); var message = $"Успеешно върната книга от - {user.FirstName} {user.LastName} - {user.Email}!"; result.Add(message); this.notificationService.AddNotificationAtDB(userId, message); this.notificationService.AddNotificationAtDB(givenBook.UserId, message); } else { result.Add("Избраната книга за връщане не е намерена!"); } return(result); }
public GivenBooksViewModel ChangeActivePage( GivenBooksViewModel model, string userId, int newPage) { model.CurrentPage = newPage; return(this.GetGevenBooks(model, userId)); }
public IActionResult SendMessageForReturningBook(GivenBooksViewModel model, string id) { this.StartUp(); var returnModel = this.givenBooksService.SendMessageForReturningBook(model, this.userId, id); this.ViewData["message"] = returnModel[1]; return(this.View("GivenBooks", returnModel[0])); }
public IActionResult ReturningGivenBook(GivenBooksViewModel model, string id) { var startUp = this.StartUp(); if (startUp != null) { return(startUp); } var returnModel = this.givenBooksService.ReturningBook(model, this.userId, id); this.ViewData["message"] = returnModel[1]; return(this.View("GivenBooks", returnModel[0])); }
public List <object> DeletingBook(GivenBooksViewModel model, string userId, string givenBookId) { var givenBook = this.context.GetBooks .FirstOrDefault(gb => gb.Id == givenBookId); List <object> result = new List <object>(); result.Add(this.GetGevenBooks(model, userId)); if (givenBook != null) { givenBook.DeletedOn = DateTime.UtcNow; givenBook.ReturnedOn = DateTime.UtcNow; this.context.SaveChanges(); result.Add("Успершно изтриване на взета книгата!"); } else { result.Add("Няма дадена книга на този потребител!"); } return(result); }
public GivenBooksViewModel GetGevenBooks(GivenBooksViewModel model, string userId) { var firstName = model.SearchGivenBook.FirstName; var lastName = model.SearchGivenBook.LastName; var email = model.SearchGivenBook.Email; var bookName = model.SearchGivenBook.BookName; var author = model.SearchGivenBook.Author; var genreId = model.SearchGivenBook.GenreId; var sortMethodId = model.SortMethodId; var countBooksOfPage = model.CountBooksOfPage; var currentPage = model.CurrentPage; var catalogNumber = model.SearchGivenBook.CatalogNumber; var givenBooks = this.context.GetBooks .Where(gb => gb.DeletedOn == null && gb.Book.UserId == userId) .Select(gb => new GivenBookViewModel() { Author = gb.Book.Author, Id = gb.Id, BookName = gb.Book.BookName, GenreName = gb.Book.Genre.Name, GenreId = gb.Book.GenreId, CatalogNumber = gb.Book.CatalogNumber, FirstName = gb.User.FirstName, LastName = gb.User.LastName, UserName = gb.User.UserName, ReturnedOn = gb.ReturnedOn, CreatedOn = gb.CreatedOn, }); givenBooks = this.SelectBooks( bookName, author, genreId, firstName, lastName, email, catalogNumber, givenBooks); givenBooks = this.SortBooks(sortMethodId, givenBooks); var genres = this.genreService.GetAllGenres() .OrderByDescending(x => x.Name).ToList(); var genre = new GenreListViewModel() { Id = null, Name = "Изберете жанр", }; genres.Add(genre); genres.Reverse(); int maxCountPage = givenBooks.Count() / countBooksOfPage; if (givenBooks.Count() % countBooksOfPage != 0) { maxCountPage++; } var viewBook = givenBooks.Skip((currentPage - 1) * countBooksOfPage) .Take(countBooksOfPage); var searchGivenBook = new GivenBookViewModel() { CatalogNumber = catalogNumber, Author = author, BookName = bookName, GenreId = genreId, }; var returnModel = new GivenBooksViewModel() { Books = viewBook, SearchGivenBook = searchGivenBook, SortMethodId = sortMethodId, Genres = genres, MaxCountPage = maxCountPage, CurrentPage = currentPage, CountBooksOfPage = countBooksOfPage, }; return(returnModel); }