public List <BorrowDTO> ListBorrows()
        {
            using (UnitOfWork uow = new UnitOfWork())
            {
                var entities = uow.Borrows.Search(x => x.ReturnDate == null && x.EndDate < DateTime.Now);

                if (entities.Count > 0)
                {
                    List <BorrowDTO> list = new List <BorrowDTO>();

                    foreach (var item in entities)
                    {
                        BorrowDTO borrowDTO = new BorrowDTO
                        {
                            StudentId   = item.StudentId,
                            StudentName = item.Student.FirstName + " " + item.Student.LastName
                        };
                        list.Add(borrowDTO);
                    }
                    list = list.GroupBy(x => new { StudentId = x.StudentId, StudentName = x.StudentName })
                           .Select(x => new BorrowDTO {
                        StudentId = x.Key.StudentId, StudentName = x.Key.StudentName, NumberOfBooks = x.Count()
                    })
                           .ToList();

                    return(list);
                }
                else
                {
                    return(null);
                }
            }
        }
Exemple #2
0
        public void Borrow()
        {
            List <BorrowDTO> list = new List <BorrowDTO>();

            BorrowDTO book1 = new BorrowDTO
            {
                BookId    = 1,
                StudentId = 1,
                BeginDate = new DateTime(2019, 5, 10),
                EndDate   = new DateTime(2019, 5, 13)
            };

            list.Add(book1);

            BorrowDTO book2 = new BorrowDTO
            {
                BookId    = 2,
                StudentId = 1,
                BeginDate = new DateTime(2019, 5, 10),
                EndDate   = new DateTime(2019, 5, 13),
            };

            list.Add(book2);

            var result = service.Borrow(list);

            Assert.IsTrue(result);
        }
Exemple #3
0
        public async Task MarkAsReturnedAsync(BorrowDTO borrowToMarkAsReturned)
        {
            var borrowEntityToUpdate = await _context.Borrows.FirstAsync(x => x.BorrowId == borrowToMarkAsReturned.BorrowId);

            _mapper.Map <BorrowDTO, BorrowEntity>(borrowToMarkAsReturned, borrowEntityToUpdate);
            await _context.SaveChangesAsync();
        }
        public static List <BorrowDTO> getBorrowbyPersonId(List <string> personList)
        {
            List <BorrowDTO> dtoborrowerlist   = new List <BorrowDTO>();
            string           _connectionString = DataSource.GetConnectionString("library2"); // Make possible to define and use different connectionstrings
            SqlConnection    con = new SqlConnection(_connectionString);
            SqlCommand       cmd = new SqlCommand("SELECT * FROM BORROW WHERE BORROW.PersonId = '" + personList + "'", con);

            try
            {
                con.Open();
                SqlDataReader dar = cmd.ExecuteReader();
                if (dar.Read())
                {
                    BorrowDTO dto = new BorrowDTO();
                    dto.BorrowDate       = (DateTime)dar["BorrowDate"];
                    dto.ToBeReturnedDate = (DateTime)dar["ToBeReturnedDate"];
                    dto.ReturnDate       = (DateTime)dar["ReturnDate"];
                    dto.barcode          = dar["barcode"] as string;
                    dto.PersonId         = dar["personid"] as string;
                    dtoborrowerlist.Add(dto);
                }
            }
            catch (Exception er)
            {
                throw er;
            }
            finally
            {
                con.Close();
            }

            return(dtoborrowerlist);
        }
        public static BorrowDTO LoadBorrowDAL(string PersonId)
        {
            BorrowDTO     dto = new BorrowDTO();
            string        _connectionString = DataSource.GetConnectionString("library2"); // Make possible to define and use different connectionstrings
            SqlConnection con = new SqlConnection(_connectionString);
            SqlCommand    cmd = new SqlCommand("SELECT * FROM Borrow WHERE PersonId = " + PersonId, con);

            try
            {
                con.Open();
                SqlDataReader dar = cmd.ExecuteReader();
                if (dar.Read())
                {
                    dto.PersonId         = dar["PersonId"] as string;
                    dto.barcode          = dar["Barcode"] as string;
                    dto.BorrowDate       = (DateTime)dar["BorrowDate"];
                    dto.ToBeReturnedDate = (DateTime)dar["ToBeReturnedDate"];
                    dto.ReturnDate       = (DateTime)dar["ReturnDate"];
                }
            }
            catch (Exception er)
            {
                throw er;
            }
            finally
            {
                con.Close();
            }
            return(dto);
        }
Exemple #6
0
        public void Borrow()
        {
            BorrowDTO borrow1 = new BorrowDTO
            {
                BookId    = 1,
                StudentId = 1,
                BeginDate = new DateTime(2019, 5, 10),
                EndDate   = new DateTime(2019, 5, 13)
            };

            BorrowDTO borrow2 = new BorrowDTO
            {
                BookId    = 2,
                StudentId = 1,
                BeginDate = new DateTime(2019, 5, 10),
                EndDate   = new DateTime(2019, 5, 13)
            };

            BorrowDTO borrow3 = new BorrowDTO
            {
                BookId    = 3,
                StudentId = 1,
                BeginDate = new DateTime(2019, 5, 10),
                EndDate   = new DateTime(2019, 5, 13)
            };

            List <BorrowDTO> list = new List <BorrowDTO>()
            {
                borrow1, borrow2, borrow3
            };

            var result = service.Borrow(list);

            Assert.IsTrue(result);
        }
Exemple #7
0
        public List <BorrowDTO> ListBorrows()
        {
            using (UnitOfWork uow = new UnitOfWork())
            {
                var entities = uow.Borrows.Search(
                    x =>
                    x.ReturnDate == null &&
                    x.EndDate < DateTime.Now);

                if (entities.Count > 0)
                {
                    List <BorrowDTO> list = new List <BorrowDTO>();

                    foreach (var item in entities)
                    {
                        BorrowDTO borrowDTO = new BorrowDTO
                        {
                            StudentId   = item.StudentId,
                            StudentName = item.Student.FirstName + " " + item.Student.LastName
                        };

                        list.Add(borrowDTO);
                    }

                    return(list);
                }
                else
                {
                    return(null);
                }
            }
        }
        public static int update(BorrowDTO borrow)
        {
            string sql = string.Format("update phieumuon set madocgia = '{0}', masach = '{1}', ngaymuon = '{2}', hantra = '{3}' where maphieumuon = '{4}'",
                                       borrow.ReaderID, borrow.BookID, borrow.BorrowedDate, borrow.ReturnDate, borrow.BorrowID);
            var result = ProcessData.ExcuteNonQuery(sql);

            return(result);
        }
        public static int insert(BorrowDTO borrow)
        {
            string sql = string.Format("insert into phieumuon values" +
                                       "('{0}', '{1}', '{2}', '{3}', '{4}')",
                                       borrow.BorrowID, borrow.ReaderID, borrow.BookID, borrow.BorrowedDate, borrow.ReturnDate);
            var result = ProcessData.ExcuteNonQuery(sql);

            return(result);
        }
Exemple #10
0
        public BorrowDTO Get(int bookID, int studentID)
        {
            BorrowDTO Borrow = _borrowService.Find(bookID, studentID);

            if (Borrow == null)
            {
                throw new DataException(string.Format(ValidationConstants.SDataNotFoundWithValue, "Borrow", string.Format("book: {0} student: {1}", bookID, studentID)));
            }

            return(Borrow);
        }
        private BorrowDTO GetBorrowInfo()
        {
            BorrowDTO br = new BorrowDTO();

            br.BorrowID     = txtBorrowid.Text;
            br.ReaderID     = txtReaderid.Text;
            br.BookID       = txtBookid.Text;
            br.BorrowedDate = borrowDate.Value;
            br.ReturnDate   = returnDate.Value;
            return(br);
        }
Exemple #12
0
        public void Update(BorrowDTO recDTO)
        {
            Borrow borrow = _borrowRepository.Find(recDTO.BookID, recDTO.StudentID);

            if (borrow == null)
            {
                throw new DataException(string.Format(ValidationConstants.SDataNotFoundWithValue, "Borrow", string.Format("book: {0} student: {1}", recDTO.BookID, recDTO.StudentID)));
            }

            borrow = BorrowMapper.Map(recDTO);
            _borrowRepository.Update(borrow);
        }
Exemple #13
0
 public void Add(BorrowDTO recDTO)
 {
     if (_borrowRepository.isBookAvaliable(recDTO.BookID))
     {
         Borrow Borrow = BorrowMapper.Map(recDTO);
         _borrowRepository.Add(Borrow);
     }
     else
     {
         throw new DataException("This Book is already borrowed");
     }
 }
Exemple #14
0
        public async Task <IActionResult> OnPostAsync()
        {
            var borrowToRegister = new BorrowDTO();
            var doesPlayerExist  = await _playerService.DoesPlayerExistAsync(Borrow.PlayerId);

            var doesBoxExist = await _boxService.DoesBoxExistAsync(Borrow.BoxId);

            var boxIsRented = await _borrowService.IsBoxRentedAsync(Borrow.BoxId);

            if (!doesPlayerExist && !doesBoxExist)
            {
                ToastMessage = _locService.GetLocalizedString("Both codes are unregistered!");
                ToastType    = "error";
                return(Page());
            }
            else if (!doesPlayerExist)
            {
                ToastMessage = _locService.GetLocalizedString("Player with that code is not registered!");
                ToastType    = "error";
                return(Page());
            }
            else if (!doesBoxExist)
            {
                ToastMessage = _locService.GetLocalizedString("Game (box) with that code is not registered!");
                ToastType    = "error";
                return(Page());
            }

            if (boxIsRented)
            {
                ToastMessage = _locService.GetLocalizedString("Game (box) already marked as rented. Check the code!");
                ToastType    = "error";
                return(Page());
            }

            if (await TryUpdateModelAsync <BorrowDTO>(
                    borrowToRegister,
                    "borrow",
                    r => r.PlayerId, r => r.BoxId))
            {
                borrowToRegister.BorrowTime = DateTime.UtcNow;
                await _borrowService.AddBorrowAsync(borrowToRegister);

                ToastMessage = _locService.GetLocalizedString("Record added");
                ToastType    = "success";
                return(RedirectToPage("./Lend"));
            }

            ToastMessage = _locService.GetLocalizedString("Error! Please try again!");
            ToastType    = "error";
            return(Page());
        }
Exemple #15
0
        public BorrowDTO Find(int bookID, int studentID)
        {
            Borrow borrow = _borrowRepository.Find(bookID, studentID);

            if (borrow == null)
            {
                return(null);
            }

            BorrowDTO recDTO = BorrowMapper.Map(borrow);

            return(recDTO);
        }
Exemple #16
0
 private void Load()
 {
     // Initiates a read from the database of the DTO-object for a specific author, if loadstatus is set to "Ghost"
     try
     {
         if (_BorrowDTO.loadStatus == LoadStatus.Ghost)
         {
             _BorrowDTO = LibraryDataAccess.LoadBorrowDAL(_BorrowDTO.PersonId);
         }
     }
     catch (Exception ex)
     {
         //Do some error-log functionality with ex.Data
     }
 }
Exemple #17
0
        public HttpResponseMessage Put([FromBody] BorrowDTO borrow)
        {
            if (borrow == null)
            {
                throw new ModelValidationResultsException(string.Format(ValidationConstants.SRequiredProperty, "borrow"));
            }

            if (borrow.BookID == 0 || borrow.StudentID == 0)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            _borrowService.Update(borrow);

            return(Request.CreateResponse(HttpStatusCode.OK));
        }
        private void btnAdd_Click(object sender, EventArgs e)
        {
            BorrowDTO borrowInfo = GetBorrowInfo();

            if (AddBorrow != null)
            {
                AddBorrow(borrowInfo);
            }

            if (UpdateBorrow != null)
            {
                UpdateBorrow(borrowInfo);
            }

            this.Close();
        }
Exemple #19
0
        public async Task MarkAsReturnedAsync_markGameAsReturned()
        {
            // Arrange:
            var currentTime = DateTime.UtcNow;
            var service     = new BorrowService(Context, _mapper);

            // Act:
            BorrowDTO borrowToMarkAsReturned = new BorrowDTO {
                BorrowId = 3, BoxId = 3, PlayerId = 3, Returned = false
            };

            borrowToMarkAsReturned.Returned = true;
            await service.MarkAsReturnedAsync(borrowToMarkAsReturned);

            // Assert:
            Assert.True(Context.Borrows.Where(x => x.BoxId == 3).Any(x => x.Returned != true) == false);
        }
Exemple #20
0
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Borrow = await _context.Borrows
                     .Include(r => r.Box)
                     .Include(r => r.Player).FirstOrDefaultAsync(m => m.BorrowId == id);

            if (Borrow == null)
            {
                return(NotFound());
            }
            return(Page());
        }
Exemple #21
0
        public async Task AddBorrowAsync_addsNewBorrow()
        {
            // Arrange:
            var borrowDTOtoAdd = new BorrowDTO {
                BoxId = 1, PlayerId = 1
            };
            var service = new BorrowService(Context, _mapper);

            // Act:
            await service.AddBorrowAsync(borrowDTOtoAdd);

            // Assert:
            var addedBorrow = await Context.Borrows.FirstOrDefaultAsync(x => x.PlayerId == 1 && x.BoxId == 1 && x.Returned == false);

            Assert.Equal(addedBorrow.BoxId, borrowDTOtoAdd.BoxId);
            Assert.Equal(addedBorrow.PlayerId, borrowDTOtoAdd.PlayerId);
            Assert.True(await Context.Borrows.CountAsync() == 5);
        }
Exemple #22
0
        public static Borrow Map(BorrowDTO source, Borrow target = null)
        {
            if (source == null)
            {
                throw new ArgumentNullException("source");
            }

            if (target == null)
            {
                target = new Borrow();
            }

            target.BookID    = source.BookID;
            target.StudentID = source.StudentID;
            target.DueDate   = source.DueDate;

            if (source.ReturnDate.HasValue)
            {
                target.ReturnDate = source.ReturnDate.Value;
            }

            return(target);
        }
Exemple #23
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            var selectedBook = lstBooks.SelectedItem as BookDTO;

            if (list.Count > 0)
            {
                if (list.Any(x => x.BookId == selectedBook.BookId))
                {
                    MessageBox.Show("Bu kitabı zaten seçtiniz.");
                    return;
                }

                #region listenin içine forecah ile girip if ile de sorgulayabilirdik.
                //foreach (var item in list)
                //{
                //    if (item.BookId ==selectedBook.BookId)
                //    {
                //        MessageBox.Show("Bu kitabı zaten seçtiniz.");
                //    }
                //}

                #endregion
            }

            BorrowDTO borrowDTO = new BorrowDTO
            {
                StudentId = Convert.ToInt32(cmbStudentName.SelectedValue),
                BookId    = selectedBook.BookId,
                BookName  = selectedBook.BookName
            };
            list.Add(borrowDTO);

            lstSelectedBooks.DataSource    = null;
            lstSelectedBooks.DataSource    = list;
            lstSelectedBooks.DisplayMember = "BookName";
            lstSelectedBooks.ValueMember   = "BookId";
        }
Exemple #24
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            var selectedBook = lbBooks.SelectedItem as BookDTO;

            if (list.Count > 0)
            {
                if (list.Any(x => x.BookId == selectedBook.BookId))
                {
                    MessageBox.Show("Bu kitabı zaten seçtiniz!");
                    return;
                }

                //foreach (var item in list)
                //{
                //    if (item.BookId == selectedBook.BookId)
                //    {
                //        MessageBox.Show("Bu kitabı zaten seçtiniz!");
                //        return;
                //    }
                //}
            }

            BorrowDTO borrowDTO = new BorrowDTO
            {
                StudentId = Convert.ToInt32(cbStudents.SelectedValue),
                BookId    = selectedBook.BookId,
                BookName  = selectedBook.BookName
            };

            list.Add(borrowDTO);

            lbSelectedBooks.DataSource    = null;
            lbSelectedBooks.DataSource    = list;
            lbSelectedBooks.DisplayMember = "BookName";
            lbSelectedBooks.ValueMember   = "BookId";
        }
Exemple #25
0
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            if (gvBorrows.SelectedRows.Count > 0)
            {
                BorrowDTO br = new BorrowDTO();
                br.BorrowID     = (string)gvBorrows.SelectedRows[0].Cells["maphieumuon"].Value;
                br.ReaderID     = (string)gvBorrows.SelectedRows[0].Cells["madocgia"].Value;
                br.BookID       = (string)gvBorrows.SelectedRows[0].Cells["masach"].Value;
                br.BorrowedDate = (DateTime)gvBorrows.SelectedRows[0].Cells["ngaymuon"].Value;
                br.ReturnDate   = (DateTime)gvBorrows.SelectedRows[0].Cells["hantra"].Value;

                var addFrm = new AddBorrowForm();
                addFrm.update     = true;
                addFrm.borrow     = br;
                addFrm.AddBorrow += AddFrm_AddBorrow;
                this.Hide();
                addFrm.ShowDialog();
                this.Show();
            }
            else
            {
                MessageBox.Show("Select a row to update, pls!");
            }
        }
Exemple #26
0
 private void AddFrm_AddBorrow(BorrowDTO borrow)
 {
     borrowBUS.insert(borrow);
     gvBorrows.DataSource = borrowBUS.readAll();
 }
Exemple #27
0
 public int update(BorrowDTO borrow)
 {
     return(BorrowDAO.update(borrow));
 }
Exemple #28
0
 //Initialize a new DTO-object for the transferring data about author
 public Borrow()
 {
     _BorrowDTO = new BorrowDTO();
 }
Exemple #29
0
        public async Task AddBorrowAsync(BorrowDTO borrowToAdd)
        {
            var borrowEntity = _mapper.Map <BorrowEntity>(borrowToAdd);

            await AddAsync(borrowEntity);
        }
Exemple #30
0
 //A constructor which creates a DTO-object with data from an existing DTO-object
 public Borrow(BorrowDTO _sourceDTO)
 {
     _BorrowDTO = new BorrowDTO(_sourceDTO);
 }