Ejemplo n.º 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);
        }
Ejemplo n.º 2
0
        public EmailMassageModel GetMassageModelByReaderId(int readerId)
        {
            EmailMassageModel   emailMassageModel = new EmailMassageModel();
            ReaderHistoryMapper historyMapper     = new ReaderHistoryMapper();
            List <ReaderHistoryBusinessModel> readerHistoryBusiness = new List <ReaderHistoryBusinessModel>();

            List <ReaderHistory> readerHistory = this.uow.ReadersHistories.GetAll().Where(r => r.Reader.ReaderId == readerId && r.FinishDate < DateTime.Now && r.ReturnDate == null)
                                                 .Select(r => r).ToList();

            for (int i = 0; i < readerHistory.Count; i++)
            {
                readerHistoryBusiness.Add(historyMapper.Map(readerHistory[i]));
            }

            string books = null;

            foreach (var book in readerHistoryBusiness)
            {
                books += book.InventoryBusiness.Item.Name + ", ";
            }

            emailMassageModel.FirsName = readerHistoryBusiness.First().ReaderBusiness.FirstName;
            emailMassageModel.LastName = readerHistoryBusiness.First().ReaderBusiness.LastName;
            emailMassageModel.Email    = readerHistoryBusiness.First().ReaderBusiness.EMail;
            emailMassageModel.Subject  = "Owing Book";
            emailMassageModel.Message  = "Dear student: " + emailMassageModel.FirsName + " " + emailMassageModel.LastName + ": " +
                                         "you owe the books: " + books + "Please back them to the library";

            return(emailMassageModel);
        }
Ejemplo n.º 3
0
        public void UpdateReaderHistory(ReaderHistoryBusinessModel readerHistoryBusiness)
        {
            ReaderHistoryMapper mapper        = new ReaderHistoryMapper();
            ReaderHistory       readerHistory = new ReaderHistory();

            readerHistory = mapper.Map(readerHistoryBusiness);
            this.uow.ReadersHistories.Update(readerHistory);

            Inventory inventory = this.uow.Inventories.GetById(readerHistoryBusiness.InventoryBusiness.InventoryId);

            if (inventory.IsAvailable == false)
            {
                if (readerHistoryBusiness.ReturnDate != null)
                {
                    inventory.IsAvailable = true;
                }
                else
                {
                    inventory.IsAvailable = false;
                }
            }
            else
            {
                throw new Exception("This inventory already exist in the Library");
            }

            uow.Commit();
        }
Ejemplo n.º 4
0
        public ReaderHistoryBusinessModel GetReaderHistoryById(int readerHistoryId)
        {
            ReaderHistoryMapper        mapper = new ReaderHistoryMapper();
            ReaderHistoryBusinessModel readerHistoryBusiness = new ReaderHistoryBusinessModel();

            readerHistoryBusiness = mapper.Map(this.uow.ReadersHistories.GetById(readerHistoryId));

            return(readerHistoryBusiness);
        }
Ejemplo n.º 5
0
        public void ReaderHistoryEntityToModelMappingTest()
        {
            var result = readerHistoryMapper.Map(this.readerHistoryEntityToMap);

            Assert.AreEqual(this.ReaderHistoryModelToCompareWith.Id, result.Id);
            Assert.AreEqual(this.ReaderHistoryModelToCompareWith.StartDate, result.StartDate);
            Assert.AreEqual(this.ReaderHistoryModelToCompareWith.ReturnDate, result.ReturnDate);
            Assert.AreEqual(this.ReaderHistoryModelToCompareWith.FinishDate, result.FinishDate);
            Assert.AreEqual(this.ReaderHistoryModelToCompareWith.ReaderBusiness.FirstName, result.ReaderBusiness.FirstName);
            Assert.AreEqual(this.ReaderHistoryModelToCompareWith.ReaderBusiness.LastName, result.ReaderBusiness.LastName);
            Assert.AreEqual(this.ReaderHistoryModelToCompareWith.InventoryBusiness.Number, result.InventoryBusiness.Number);
        }
Ejemplo n.º 6
0
        public void AddNewReaderHistory(ReaderHistoryBusinessModel readerHistoryBusiness, int readerId)
        {
            ReaderHistoryMapper readerHistoryMapper = new ReaderHistoryMapper();
            ReaderHistory       readerHistory       = new ReaderHistory();

            readerHistory = readerHistoryMapper.Map(readerHistoryBusiness);
            var       reader    = uow.Readers.GetById(readerId);
            Inventory inventory = this.uow.Inventories.GetAll().Where(inv => inv.Number == readerHistory.Inventory.Number).Select(inv => inv).Single();

            uow.ReadersHistories.Add(new ReaderHistory
            {
                StartDate  = readerHistory.StartDate,
                FinishDate = readerHistory.FinishDate,
                Reader     = reader,
                Inventory  = this.uow.Inventories.GetById(inventory.InventoryId)
            });
            uow.Commit();
        }
Ejemplo n.º 7
0
        public void GiveBookToStudent(ReaderHistoryBusinessModel readerHistoryBusinessModel)
        {
            ReaderHistoryMapper readerHistoryMapper = new ReaderHistoryMapper();
            ReaderHistory       readerHistory       = new ReaderHistory();

            readerHistory = readerHistoryMapper.Map(readerHistoryBusinessModel);

            Inventory inventory = this.uow.Inventories.GetAll().Where(inv => inv.Number == readerHistory.Inventory.Number).Select(inv => inv).Single();

            if (inventory.IsAvailable == true)
            {
                inventory.IsAvailable = false;
            }
            else
            {
                throw new Exception();
            }

            this.uow.Inventories.Update(inventory);
            uow.Commit();
        }
Ejemplo n.º 8
0
        public IEnumerable<ReaderHistoryBusinessModel> GetReaderHistoriesByReaderId(int? readerId)
        {
            List<ReaderHistoryBusinessModel> readerHistoryBusiness = new List<ReaderHistoryBusinessModel>();

            ReaderHistoryMapper readerHistoryMapper = new ReaderHistoryMapper();
            List<ReaderHistory> readerHistory = this.uow.ReadersHistories.GetAll().Where(r => r.Reader.ReaderId == readerId)
                .Select(r => r).ToList();
            for (int i = 0; i < readerHistory.Count; i++)
            {
                readerHistoryBusiness.Add(readerHistoryMapper.Map(readerHistory[i]));
            }

            var readerHistoryBusinessSorted = readerHistoryBusiness.OrderByDescending(x => x.StartDate);

            /*if (readerHistoryBusinessSorted.Count() == 0)
            {
                readerHistoryBusinessSorted.First().ReaderBusiness.ReaderId = readerId;
            }*/

            return readerHistoryBusinessSorted;
        }
Ejemplo n.º 9
0
        public IEnumerable <ReaderHistoryBusinessModel> GetReaderHistoriesByReaderId(int?readerId)
        {
            List <ReaderHistoryBusinessModel> readerHistoryBusiness = new List <ReaderHistoryBusinessModel>();

            ReaderHistoryMapper  readerHistoryMapper = new ReaderHistoryMapper();
            List <ReaderHistory> readerHistory       = this.uow.ReadersHistories.GetAll().Where(r => r.Reader.ReaderId == readerId)
                                                       .Select(r => r).ToList();

            for (int i = 0; i < readerHistory.Count; i++)
            {
                readerHistoryBusiness.Add(readerHistoryMapper.Map(readerHistory[i]));
            }

            var readerHistoryBusinessSorted = readerHistoryBusiness.OrderByDescending(x => x.StartDate);

            /*if (readerHistoryBusinessSorted.Count() == 0)
             * {
             *  readerHistoryBusinessSorted.First().ReaderBusiness.ReaderId = readerId;
             * }*/

            return(readerHistoryBusinessSorted);
        }
Ejemplo n.º 10
0
        public void GiveBookToStudent(ReaderHistoryBusinessModel readerHistoryBusinessModel)
        {
            ReaderHistoryMapper readerHistoryMapper = new ReaderHistoryMapper();
            ReaderHistory readerHistory = new ReaderHistory();

            readerHistory = readerHistoryMapper.Map(readerHistoryBusinessModel);

            Inventory inventory = this.uow.Inventories.GetAll().Where(inv => inv.Number == readerHistory.Inventory.Number).Select(inv => inv).Single();

            if (inventory.IsAvailable == true)
            {
                inventory.IsAvailable = false;
            }
            else
            {
                throw new Exception();
            }

            this.uow.Inventories.Update(inventory);
            uow.Commit();

        }
Ejemplo n.º 11
0
        public EmailMassageModel GetMassageModelByReaderId(int readerId)
        {

            EmailMassageModel emailMassageModel = new EmailMassageModel();
            ReaderHistoryMapper historyMapper = new ReaderHistoryMapper();
            List<ReaderHistoryBusinessModel> readerHistoryBusiness = new List<ReaderHistoryBusinessModel>();

            List<ReaderHistory> readerHistory = this.uow.ReadersHistories.GetAll().Where(r => r.Reader.ReaderId == readerId && r.FinishDate < DateTime.Now && r.ReturnDate == null)
                .Select(r => r).ToList();

            for (int i = 0; i < readerHistory.Count; i++)
            {
                readerHistoryBusiness.Add(historyMapper.Map(readerHistory[i]));
            }

            string books = null;
            foreach (var book in readerHistoryBusiness)
            {
                books += book.InventoryBusiness.Item.Name + ", ";
            }

            emailMassageModel.FirsName = readerHistoryBusiness.First().ReaderBusiness.FirstName;
            emailMassageModel.LastName = readerHistoryBusiness.First().ReaderBusiness.LastName;
            emailMassageModel.Email = readerHistoryBusiness.First().ReaderBusiness.EMail;
            emailMassageModel.Subject = "Owing Book";
            emailMassageModel.Message = "Dear student: " + emailMassageModel.FirsName + " " + emailMassageModel.LastName + ": " +
                "you owe the books: " + books + "Please back them to the library";

            return emailMassageModel;
        }
Ejemplo n.º 12
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;
        }
Ejemplo n.º 13
0
        public void UpdateReaderHistory(ReaderHistoryBusinessModel readerHistoryBusiness)
        {
            ReaderHistoryMapper mapper = new ReaderHistoryMapper();
            ReaderHistory readerHistory = new ReaderHistory();

            readerHistory = mapper.Map(readerHistoryBusiness);
            this.uow.ReadersHistories.Update(readerHistory);

            Inventory inventory = this.uow.Inventories.GetById(readerHistoryBusiness.InventoryBusiness.InventoryId);

            if (inventory.IsAvailable == false)
            {
                if (readerHistoryBusiness.ReturnDate != null)
                {
                    inventory.IsAvailable = true;
                }
                else
                {
                    inventory.IsAvailable = false;
                }
            }
            else
            {
                throw new Exception("This inventory already exist in the Library");
            }

            uow.Commit();
        }
Ejemplo n.º 14
0
        public ReaderHistoryBusinessModel GetReaderHistoryById(int readerHistoryId)
        {
            ReaderHistoryMapper mapper = new ReaderHistoryMapper();
            ReaderHistoryBusinessModel readerHistoryBusiness = new ReaderHistoryBusinessModel();
            readerHistoryBusiness = mapper.Map(this.uow.ReadersHistories.GetById(readerHistoryId));

            return readerHistoryBusiness;
        }
Ejemplo n.º 15
0
        public void AddNewReaderHistory(ReaderHistoryBusinessModel readerHistoryBusiness, int readerId)
        {
            ReaderHistoryMapper readerHistoryMapper = new ReaderHistoryMapper();
            ReaderHistory readerHistory = new ReaderHistory();

            readerHistory = readerHistoryMapper.Map(readerHistoryBusiness);
            var reader = uow.Readers.GetById(readerId);
            Inventory inventory = this.uow.Inventories.GetAll().Where(inv => inv.Number == readerHistory.Inventory.Number).Select(inv => inv).Single();

            uow.ReadersHistories.Add(new ReaderHistory
            {
                StartDate = readerHistory.StartDate,
                FinishDate = readerHistory.FinishDate,
                Reader = reader,
                Inventory = this.uow.Inventories.GetById(inventory.InventoryId)

            });
            uow.Commit();
        }