Beispiel #1
0
        public List <ReaderHistoryBusinessModel> GetReaderHistoryByInventoryNumber(string searchString, int?readerId)
        {
            var readerHisroryModel = new List <ReaderHistoryBusinessModel>();
            List <ReaderHistory> readerHistories;

            using (LibraryUow uow = new LibraryUow())
            {
                var readerHistoryMapper = new ReaderHistoryMapper();

                if (readerId != null)
                {
                    readerHistories = this.uow.ReadersHistories.GetAll().Where(r => r.Reader.ReaderId == readerId && r.ReturnDate == null)
                                      .Select(r => r).ToList();
                }
                else
                {
                    readerHistories = this.uow.ReadersHistories.GetAll().Where(r => r.ReturnDate == null).Select(r => r).ToList();
                }

                foreach (var readerHistory in readerHistories)
                {
                    if (readerHistory.Inventory.Number == searchString)
                    {
                        readerHisroryModel.Add(readerHistoryMapper.Map(readerHistory));
                    }
                }
            }
            return(readerHisroryModel);
        }
 public ReaderHistoryService()
 {
     uow = new LibraryUow();
     readerHistoryManager = new ReaderHistoryManager(uow, new ReaderHistoryFacade(uow));
     readerManager        = new ReaderManager(uow, new ReaderFacade(uow), new UsersFacade(uow));
     userManager          = new UserManager(uow, new UsersFacade(uow), readerManager);
 }
 public ReaderHistoryService()
 {
     uow = new LibraryUow();
     readerHistoryManager = new ReaderHistoryManager(uow, new ReaderHistoryFacade(uow));
     readerManager = new ReaderManager(uow, new ReaderFacade(uow), new UsersFacade(uow));
     userManager = new UserManager(uow, new UsersFacade(uow), readerManager);
 }      
 public static void RemoveReaderHistoryById(int id)
 {
     using (var uow = new LibraryUow())
     {
         uow.ReadersHistories.Delete(id);
         uow.Commit();
     }
 }
 public static void RemoveReaderHistoryById(int id)
 {
     using (var uow = new LibraryUow())
     {
         uow.ReadersHistories.Delete(id);
         uow.Commit();
     }
 }
        //public string GetAllBooksXml()
        //{
        //    var models = new List<BookBusinessModel>();

        //    using (LibraryUow uow = new LibraryUow())
        //    {
        //        var bookInfoMapper = new BookMapper();
        //        var books = uow.Books.GetAll().ToList();
        //        books.ForEach(book => models.Add(bookInfoMapper.Map(book)));
        //    }

        //    List<BookModel> myBooks = models.Select(mod => new BookModel
        //    {
        //        Id = mod.Id,
        //        Name = mod.Name,
        //        Authors = mod.Authors != null ? (mod.Authors.Select(a => new AuthorModel { Id = a.Id, FirstName = a.FirstName, LastName = a.LastName }).ToList()) : null,
        //        Publisher = mod.Publisher,
        //        Year = mod.Year,
        //        PageCount = mod.PageCount
        //    }).ToList();

        //    XmlSerializer myXmlSerializer = new XmlSerializer(typeof(List<BookModel>));
        //    StreamWriter myStreamWriter = new StreamWriter(@"c:\Books.xml");
        //    myXmlSerializer.Serialize(myStreamWriter, myBooks);
        //    myStreamWriter.Close();

        //    string sTemp = "Look for file on folder!!!";

        //    return sTemp;
        //}


        public List <BookBusinessModel> GetBookByName(string searchString)
        {
            var bookModels = new List <BookBusinessModel>();

            string[] words = searchString.Trim().Split(' ');

            using (LibraryUow uow = new LibraryUow())
            {
                var bookInfoMapper = new BookMapper();
                var books          = uow.Items.GetAll().OfType <Book>().ToList();

                // Search by BookName
                foreach (var book in books)
                {
                    foreach (string word in words)
                    {
                        if (book.Name.ToLower().Contains(word.ToLower()) || word.ToLower().Contains(book.Name.ToLower()))
                        {
                            var bookToMap = bookInfoMapper.Map(book);

                            // Distinct
                            if (!bookModels.Any(b => b.Id == bookToMap.Id))
                            {
                                bookModels.Add(bookToMap);
                            }
                        }
                    }
                }

                // Search by Authors FirstName or LastName
                foreach (var book in books)
                {
                    foreach (var author in book.Authors)
                    {
                        foreach (string word in words)
                        {
                            if (author.FirstName.ToLower().Contains(word.ToLower()) || word.ToLower().Contains(author.FirstName.ToLower()) ||
                                author.LastName.ToLower().Contains(word.ToLower()) || word.ToLower().Contains(author.LastName.ToLower()))
                            {
                                var bookToMap = bookInfoMapper.Map(book);

                                if (!bookModels.Any(b => b.Id == bookToMap.Id))
                                {
                                    bookModels.Add(bookToMap);
                                }
                            }
                        }
                    }
                }
            }

            return(bookModels);
        }
        /// <summary>
        /// Gets All books
        /// </summary>
        /// <returns>The BookBusinessModel list</returns>
        public List<BookBusinessModel> GetAllBooks()
        {
            var models = new List<BookBusinessModel>();

            using (LibraryUow uow = new LibraryUow())
            {
                var bookInfoMapper = new BookMapper();
                var books = uow.Items.GetAll().OfType<Book>().ToList();
                books.ForEach(book => models.Add(bookInfoMapper.Map(book)));
            }

            return models;
        }
        /// <summary>
        /// Gets All books
        /// </summary>
        /// <returns>The BookBusinessModel list</returns>
        public List <BookBusinessModel> GetAllBooks()
        {
            var models = new List <BookBusinessModel>();

            using (LibraryUow uow = new LibraryUow())
            {
                var bookInfoMapper = new BookMapper();
                var books          = uow.Items.GetAll().OfType <Book>().ToList();
                books.ForEach(book => models.Add(bookInfoMapper.Map(book)));
            }

            return(models);
        }
Beispiel #9
0
        public List <InventoryBusinessModel> GetAllInventory()
        {
            List <InventoryBusinessModel> inlist;

            using (LibraryUow uow = new LibraryUow())
            {
                inlist = new List <InventoryBusinessModel>();
                var inv       = uow.Inventories.GetAll().ToList();
                var invMapper = new InventoryMapper();

                foreach (var a in inv)
                {
                    inlist.Add(invMapper.Map(a));
                }
                //var invBusinessModel = inv.Select(a => invMapper.Map(a)).ToList();
            }

            return(inlist);
        }
        public ConsignmentBusinessModel CreateConsignment(int itemId, ConsignmentBusinessModel consignment)
        {
            ConsignmentBusinessModel consNew;
            var mapper = new ConsignmentMapper();

            int id = 0;
            using (var uowNew = new LibraryUow())
            {
                var item = uowNew.Items.GetById(itemId);
                var entryConsignment = mapper.Map(consignment);
                entryConsignment.Item = item;
                uowNew.Consignments.Add(entryConsignment);

                uowNew.Commit();
                id = entryConsignment.Id;
            }

            consNew = mapper.Map(this.uow.Consignments.GetById(id));
            consignment.Id = consNew.Id;
            consignment.Number = consNew.Number;
            return consNew;
        }
        public ConsignmentBusinessModel CreateConsignment(int itemId, ConsignmentBusinessModel consignment)
        {
            ConsignmentBusinessModel consNew;
            var mapper = new ConsignmentMapper();

            int id = 0;

            using (var uowNew = new LibraryUow())
            {
                var item             = uowNew.Items.GetById(itemId);
                var entryConsignment = mapper.Map(consignment);
                entryConsignment.Item = item;
                uowNew.Consignments.Add(entryConsignment);

                uowNew.Commit();
                id = entryConsignment.Id;
            }

            consNew            = mapper.Map(this.uow.Consignments.GetById(id));
            consignment.Id     = consNew.Id;
            consignment.Number = consNew.Number;
            return(consNew);
        }
            private void InitializeData()
            {
                if (!Roles.RoleExists("Admin"))
                {
                    Roles.CreateRole("Admin");
                }

                if (!Roles.RoleExists("Librarian"))
                {
                    Roles.CreateRole("Librarian");
                }

                if (!Roles.RoleExists("Registered"))
                {
                    Roles.CreateRole("Registered");
                }

                if (!Roles.RoleExists("Unregistered"))
                {
                    Roles.CreateRole("Unregistered");
                }

                LibraryUow uow = new LibraryUow();

                if (!WebSecurity.UserExists("admin"))
                {
                    WebSecurity.CreateUserAndAccount("admin", "Pa$$word");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("admin"));
                    user.Email = "*****@*****.**";
                    Roles.AddUserToRole("admin", "Admin");
                }

                if (!WebSecurity.UserExists("librarian"))
                {
                    WebSecurity.CreateUserAndAccount("librarian", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("librarian"));
                    user.Email = "*****@*****.**";
                    Roles.AddUserToRole("librarian", "Librarian");
                }

                if (!WebSecurity.UserExists("yarkip"))
                {
                    WebSecurity.CreateUserAndAccount("yarkip", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("yarkip"));
                    user.Email = "*****@*****.**";
                    Roles.AddUserToRole("yarkip", "Registered");
                }

                //if (!WebSecurity.UserExists("mykola"))
                //{
                //    WebSecurity.CreateUserAndAccount("mykola", "123456");
                //    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("mykola"));
                //    user.Email = "*****@*****.**";
                //    //Roles.AddUserToRole("mykola", "Registered");
                //}

                //if (!WebSecurity.UserExists("kola"))
                //{
                //    WebSecurity.CreateUserAndAccount("kola", "123456");
                //    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("kola"));
                //    user.Email = "*****@*****.**";
                //    //Roles.AddUserToRole("kola", "Registered");
                //}

                if (!WebSecurity.UserExists("mike"))
                {
                    WebSecurity.CreateUserAndAccount("mike", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("mike"));
                    user.Email = "*****@*****.**";
                }

                if (!WebSecurity.UserExists("bob"))
                {
                    WebSecurity.CreateUserAndAccount("bob", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("bob"));
                    user.Email = "*****@*****.**";
                }

                if (!WebSecurity.UserExists("rick"))
                {
                    WebSecurity.CreateUserAndAccount("rick", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("rick"));
                    user.Email = "*****@*****.**";
                }

                //test reader
                if (!WebSecurity.UserExists("alice"))
                {
                    WebSecurity.CreateUserAndAccount("alice", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("alice"));
                    user.Email = "*****@*****.**";
                }

                if (Roles.GetRolesForUser("alice").Length == 0)
                {
                    Roles.AddUserToRole("alice", "Unregistered");
                }

                if (Roles.GetRolesForUser("mike").Length == 0)
                {
                    Roles.AddUserToRole("mike", "Unregistered");
                }

                if (Roles.GetRolesForUser("bob").Length == 0)
                {
                    Roles.AddUserToRole("bob", "Registered");
                }

                if (Roles.GetRolesForUser("rick").Length == 0)
                {
                    Roles.AddUserToRole("rick", "Unregistered");
                }

                uow.Commit();

            }
Beispiel #13
0
            private void InitializeData()
            {
                if (!Roles.RoleExists("Admin"))
                {
                    Roles.CreateRole("Admin");
                }

                if (!Roles.RoleExists("Librarian"))
                {
                    Roles.CreateRole("Librarian");
                }

                if (!Roles.RoleExists("Registered"))
                {
                    Roles.CreateRole("Registered");
                }

                if (!Roles.RoleExists("Unregistered"))
                {
                    Roles.CreateRole("Unregistered");
                }

                LibraryUow uow = new LibraryUow();

                if (!WebSecurity.UserExists("admin"))
                {
                    WebSecurity.CreateUserAndAccount("admin", "Pa$$word");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("admin"));
                    user.Email = "*****@*****.**";
                    Roles.AddUserToRole("admin", "Admin");
                }

                if (!WebSecurity.UserExists("librarian"))
                {
                    WebSecurity.CreateUserAndAccount("librarian", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("librarian"));
                    user.Email = "*****@*****.**";
                    Roles.AddUserToRole("librarian", "Librarian");
                }

                if (!WebSecurity.UserExists("yarkip"))
                {
                    WebSecurity.CreateUserAndAccount("yarkip", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("yarkip"));
                    user.Email = "*****@*****.**";
                    Roles.AddUserToRole("yarkip", "Registered");
                }

                //if (!WebSecurity.UserExists("mykola"))
                //{
                //    WebSecurity.CreateUserAndAccount("mykola", "123456");
                //    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("mykola"));
                //    user.Email = "*****@*****.**";
                //    //Roles.AddUserToRole("mykola", "Registered");
                //}

                //if (!WebSecurity.UserExists("kola"))
                //{
                //    WebSecurity.CreateUserAndAccount("kola", "123456");
                //    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("kola"));
                //    user.Email = "*****@*****.**";
                //    //Roles.AddUserToRole("kola", "Registered");
                //}

                if (!WebSecurity.UserExists("mike"))
                {
                    WebSecurity.CreateUserAndAccount("mike", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("mike"));
                    user.Email = "*****@*****.**";
                }

                if (!WebSecurity.UserExists("bob"))
                {
                    WebSecurity.CreateUserAndAccount("bob", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("bob"));
                    user.Email = "*****@*****.**";
                }

                if (!WebSecurity.UserExists("rick"))
                {
                    WebSecurity.CreateUserAndAccount("rick", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("rick"));
                    user.Email = "*****@*****.**";
                }

                //test reader
                if (!WebSecurity.UserExists("alice"))
                {
                    WebSecurity.CreateUserAndAccount("alice", "123456");
                    UserProfile user = uow.UsersProfiles.GetById(WebSecurity.GetUserId("alice"));
                    user.Email = "*****@*****.**";
                }

                if (Roles.GetRolesForUser("alice").Length == 0)
                {
                    Roles.AddUserToRole("alice", "Unregistered");
                }

                if (Roles.GetRolesForUser("mike").Length == 0)
                {
                    Roles.AddUserToRole("mike", "Unregistered");
                }

                if (Roles.GetRolesForUser("bob").Length == 0)
                {
                    Roles.AddUserToRole("bob", "Registered");
                }

                if (Roles.GetRolesForUser("rick").Length == 0)
                {
                    Roles.AddUserToRole("rick", "Unregistered");
                }

                uow.Commit();
            }
        //public string GetAllBooksXml()
        //{
        //    var models = new List<BookBusinessModel>();

        //    using (LibraryUow uow = new LibraryUow())
        //    {
        //        var bookInfoMapper = new BookMapper();
        //        var books = uow.Books.GetAll().ToList();
        //        books.ForEach(book => models.Add(bookInfoMapper.Map(book)));
        //    }

        //    List<BookModel> myBooks = models.Select(mod => new BookModel
        //    {
        //        Id = mod.Id,
        //        Name = mod.Name,
        //        Authors = mod.Authors != null ? (mod.Authors.Select(a => new AuthorModel { Id = a.Id, FirstName = a.FirstName, LastName = a.LastName }).ToList()) : null,
        //        Publisher = mod.Publisher,
        //        Year = mod.Year,
        //        PageCount = mod.PageCount
        //    }).ToList();

        //    XmlSerializer myXmlSerializer = new XmlSerializer(typeof(List<BookModel>));
        //    StreamWriter myStreamWriter = new StreamWriter(@"c:\Books.xml");
        //    myXmlSerializer.Serialize(myStreamWriter, myBooks);
        //    myStreamWriter.Close();

        //    string sTemp = "Look for file on folder!!!";

        //    return sTemp;
        //}


        public List<BookBusinessModel> GetBookByName(string searchString)
        {
            var bookModels = new List<BookBusinessModel>();

            string[] words = searchString.Trim().Split(' ');

            using (LibraryUow uow = new LibraryUow())
            {
                var bookInfoMapper = new BookMapper();
                var books = uow.Items.GetAll().OfType<Book>().ToList();

                // Search by BookName
                foreach (var book in books)
                {
                    foreach (string word in words)
                    {
                        if (book.Name.ToLower().Contains(word.ToLower()) || word.ToLower().Contains(book.Name.ToLower()))
                        {
                            var bookToMap = bookInfoMapper.Map(book);

                            // Distinct
                            if (!bookModels.Any(b => b.Id == bookToMap.Id))
                            {
                                bookModels.Add(bookToMap);
                            }
                        }
                    }
                }

                // Search by Authors FirstName or LastName
                foreach (var book in books)
                {
                    foreach (var author in book.Authors)
                    {
                        foreach (string word in words)
                        {
                            if (author.FirstName.ToLower().Contains(word.ToLower()) || word.ToLower().Contains(author.FirstName.ToLower()) ||
                            author.LastName.ToLower().Contains(word.ToLower()) || word.ToLower().Contains(author.LastName.ToLower()))
                            {
                                var bookToMap = bookInfoMapper.Map(book);

                                if (!bookModels.Any(b => b.Id == bookToMap.Id))
                                {
                                    bookModels.Add(bookToMap);
                                }
                            }
                        }
                    }
                }
            }

            return bookModels;
        }
        public List<ReaderHistoryBusinessModel> GetReaderHistoryByInventoryNumber(string searchString, int? readerId)
        {
            var readerHisroryModel = new List<ReaderHistoryBusinessModel>();
            List<ReaderHistory> readerHistories;

            using (LibraryUow uow = new LibraryUow())
            {
                var readerHistoryMapper = new ReaderHistoryMapper();

                if (readerId != null)
                {

                    readerHistories = this.uow.ReadersHistories.GetAll().Where(r => r.Reader.ReaderId == readerId && r.ReturnDate == null)
                      .Select(r => r).ToList();
                }
                else
                {
                    readerHistories = this.uow.ReadersHistories.GetAll().Where(r => r.ReturnDate == null).Select(r => r).ToList();
                }

                foreach (var readerHistory in readerHistories)
                {
                    if (readerHistory.Inventory.Number == searchString)
                    {
                        readerHisroryModel.Add(readerHistoryMapper.Map(readerHistory));

                    }

                }


            }
            return readerHisroryModel;
        }