示例#1
0
        public SaveUserResult Save(UserViewModel viewModel, UserSessionObject currentUser)
        {
            var result = new SaveUserResult();

            if (viewModel.IsNew)
            {
                viewModel.UserPassword = ConfigurationManager.AppSettings["DefaultPassword"];
            }

            UserDomainModelBuilder builder = BuilderResolverService.Get <UserDomainModelBuilder, UserViewModel>(viewModel);

            Constructor.ConstructDomainModelData(builder);
            UserData domainModel = builder.GetDataModel();

            if (viewModel.Id == 0)
            {
                domainModel.RefUserCreatedBy = currentUser.UserId;
            }

            int id = UserRepository.SaveData(domainModel);

            if (id != 0)
            {
                result = new SaveUserResult(id, domainModel.FullFirstAndLastName);
            }

            return(result);
        }
示例#2
0
        public BorrowResult BorrowBook(RelationUserBookCopyViewModel viewModel, UserSessionObject user)
        {
            var result = new BorrowResult();

            viewModel.DateOfIssue      = DateTime.Now;
            viewModel.DateDueForReturn = DateTime.Now.AddDays(14);

            RelationUserBookCopyDomainModelBuilder builder = BuilderResolverService.Get
                                                             <RelationUserBookCopyDomainModelBuilder, RelationUserBookCopyViewModel>(viewModel);

            Constructor.ConstructDomainModelData(builder);
            RelationUserBookCopyData domainModel = builder.GetDataModel();

            if (viewModel.Id == 0)
            {
                domainModel.RefUserCreatedBy = user.UserId;
            }

            int loanId = RelationUserBookCopyRepository.SaveData(domainModel);

            if (loanId != 0)
            {
                var saveResult = UpdateCopyAndBook(domainModel.BookCopyId, user);
                if (saveResult.Success)
                {
                    string username = UserService.Get(domainModel.UserId).Username;
                    result = new BorrowResult(loanId, domainModel.BookCopyId, username);
                }
            }

            return(result);
        }
示例#3
0
        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);
        }
示例#4
0
        private bool IndexEBook(BookViewModel bookViewModel, string path)
        {
            bool     success;
            Document document = null;

            string      language = LanguageService.Get(bookViewModel.LanguageId).Name;
            IndexerType type     = AnalyzerService.GetIndexerType(language);

            BookDomainModelBuilder builder = BuilderResolverService.Get <BookDomainModelBuilder, BookViewModel>(bookViewModel);

            Constructor.ConstructDomainModelData(builder);
            BookData book = builder.GetDataModel();

            try
            {
                document = DocumentHandler.GetDocument(book, path);
                if (book.Id != 0)
                {
                    EBookIndexer.DeleteById(book.Id.ToString(), type);
                }

                EBookIndexer.Add(document, type);
                success = true;
            }
            catch (Exception e)
            {
                success = false;
            }

            return(success);
        }
示例#5
0
        public SaveCategoryResult Save(CategoryViewModel viewModel, UserSessionObject user)
        {
            var result = new SaveCategoryResult();

            CategoryDomainModelBuilder builder = BuilderResolverService.Get <CategoryDomainModelBuilder, CategoryViewModel>(viewModel);

            Constructor.ConstructDomainModelData(builder);
            CategoryData domainModel = builder.GetDataModel();

            if (viewModel.Id == 0)
            {
                domainModel.RefUserCreatedBy = user.UserId;
            }

            int id = CategoryRepository.SaveData(domainModel);

            if (id != 0)
            {
                result = new SaveCategoryResult(id, domainModel.NameCategory);
            }

            return(result);
        }
示例#6
0
        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);
        }