public SaveBookResult Save(BookCopyViewModel viewModel, UserSessionObject user) { var result = new SaveBookResult(); BookCopyDomainModelBuilder builder = BuilderResolverService.Get <BookCopyDomainModelBuilder, BookCopyViewModel>(viewModel); Constructor.ConstructDomainModelData(builder); BookCopyData domainModel = builder.GetDataModel(); if (viewModel.Id == 0) { domainModel.RefUserCreatedBy = user.UserId; } int id = BookCopyRepository.SaveData(domainModel); if (id != 0) { BookViewModel bookViewModel = Get(viewModel.BookId); bookViewModel.NumOfAvailableCopies = bookViewModel.NumOfAvailableCopies + 1; SaveBookResult updateResult = Save(bookViewModel, user); if (updateResult.Success) { result = new SaveBookResult(id, viewModel.BookAuthorAndTitle, "Successfully added copy of book " + viewModel.BookAuthorAndTitle); } } return(result); }
public SaveEBookResult SaveAndIndex(EBookCreateViewModel viewModel, string filePath, UserSessionObject user) { var result = new SaveEBookResult(); BookViewModel completeViewModel = new BookViewModel(viewModel, user); SaveBookResult saveBook = BookService.Save(completeViewModel, user); if (saveBook.Success) { completeViewModel.Id = saveBook.Id; if (IndexEBook(completeViewModel, filePath)) { result = new SaveEBookResult(saveBook.Id, saveBook.Name); } else { result.Success = false; result.Message = "Error while indexing e-book."; BookService.Delete(saveBook.Id, user); // rollback transaction } } else { result.Success = false; result.Message = saveBook.Message; } return(result); }
public JsonResult Save(BookViewModel viewModel) { UserSessionObject user = Session.GetUser(); JsonResult response = (JsonResult)RouteData.Values["validation"]; ValidationResponse validation = (ValidationResponse)response.Data; if (validation.Success) { SaveBookResult result = BookService.Save(viewModel, user); response.Data = result; } return(response); }
private SaveBookResult UpdateCopyAndBook(int copyId, UserSessionObject user) { var result = new SaveBookResult(); BookCopyViewModel bookCopyData = BookService.GetCopy(copyId); bookCopyData.Available = false; result = BookService.SaveOnly(bookCopyData, user); if (result.Success) { BookViewModel bookData = BookService.Get(bookCopyData.BookId); bookData.NumOfAvailableCopies = bookData.NumOfAvailableCopies - 1; result = BookService.Save(bookData, user); } return(result); }
public SaveBookResult Save(BookViewModel viewModel, UserSessionObject user) { var result = new SaveBookResult(); BookDomainModelBuilder builder = BuilderResolverService.Get <BookDomainModelBuilder, BookViewModel>(viewModel); Constructor.ConstructDomainModelData(builder); BookData domainModel = builder.GetDataModel(); if (viewModel.Id == 0) { domainModel.RefUserCreatedBy = user.UserId; } int id = BookRepository.SaveData(domainModel); if (id != 0) { result = new SaveBookResult(id, domainModel.BookAuthorAndTitle); } return(result); }