public IEnumerable <BookInfo> GetBooksUnderSection(Guid sectionId) { using (var uow = new LibUnitOfWork()) { return(uow.SectionRepository.GetBooks(sectionId)); } }
public IEnumerable <BookCopy> BookCopiesOf(Guid BookId) { using (var uow = new LibUnitOfWork()) { return(uow.BookCopyRepository.Where(bc => bc.BookInfoId.Equals(BookId)).ToList()); } }
public IEnumerable <Section> GetAllSections() { using (var uow = new LibUnitOfWork()) { return(uow.SectionRepository.GetAll()); } }
public IEnumerable <BookInfo> GetBooks() { using (LibUnitOfWork uow = new LibUnitOfWork()) { return(uow.BookInfoRepository.GetAll()); } }
public LibraryUser FindUserByRFID(string userTag) { using (var uow = new LibUnitOfWork()) { return(uow.LibraryUserRepository.FindByUserRFIDTag(userTag)); } }
public BookCopy FindByLongRange(string tag) { using (var uow = new LibUnitOfWork()) { return(uow.BookCopyRepository.Where(bc => bc.BookTagLong == tag).Single()); } }
public void AddLibraryUser(LibraryUser user) { using (var uow = new LibUnitOfWork()) { uow.LibraryUserRepository.Add(user); uow.SaveChanges(); } }
public void AddHoliday(Holiday newHoliday) { using (var uow = new LibUnitOfWork()) { uow.HolidayRepository.AddOrUpdate(newHoliday); uow.SaveChanges(); } }
public void CreateNewSection(Section section) { using (var uow = new LibUnitOfWork()) { uow.SectionRepository.Add(section); uow.SaveChanges(); } }
public void DeleteHoliday(Holiday holiday) { using (var uow = new LibUnitOfWork()) { var h = uow.HolidayRepository.FindById(holiday.Id); uow.HolidayRepository.Remove(h); uow.SaveChanges(); } }
public void DeleteCourse(Course course) { using (LibUnitOfWork uow = new LibUnitOfWork()) { var _course = uow.CourseRepository.FindById(course.Id); uow.CourseRepository.Remove(_course); uow.SaveChanges(); } }
public void DeleteBook(BookInfo bookInfo) { using (LibUnitOfWork uow = new LibUnitOfWork()) { var _bookInfo = uow.BookInfoRepository.FindById(bookInfo.Id); uow.BookInfoRepository.Remove(_bookInfo); uow.SaveChanges(); } }
public override void Execute() { using (var uow = new LibUnitOfWork()) { BookCopy.IsBorrowed = false; _LastTransaction.ReturnDate = DateTime.Now; uow.BookTransactionInfoRepository.Update(_LastTransaction); uow.BookCopyRepository.Update(BookCopy); uow.SaveChanges(); } }
public void RemoveBookCopy(Guid BookCopyId) { using (var uow = new LibUnitOfWork()) { var bookCopy = uow.BookCopyRepository.FindById(BookCopyId); if (bookCopy != null) { uow.BookCopyRepository.Remove(bookCopy); uow.SaveChanges(); } } }
public void DeleteSection(Section section) { using (var uow = new LibUnitOfWork()) { var sectionToDelete = uow.SectionRepository.FindById(section.Id); if (sectionToDelete != null) { uow.SectionRepository.Remove(sectionToDelete); uow.SaveChanges(); } } }
public void DeleteDepartment(Department dept) { using (var uow = new LibUnitOfWork()) { var _dept = uow.DepartmentRepository.FindById(dept.Id); if (_dept != null) { uow.DepartmentRepository.Remove(_dept); uow.SaveChanges(); } } }
public override void Execute() { using (var uow = new LibUnitOfWork()) { BookCopy.IsBorrowed = false; _LastTransaction.ReturnDate = DateTime.Now.Date; _LastTransaction.AmountToPay = _PaymentService.ComputeNecessaryFee(BookCopy, _LastTransaction); uow.BookTransactionInfoRepository.Update(_LastTransaction); uow.BookCopyRepository.Update(BookCopy); uow.SaveChanges(); } }
public void AddOrUpdate(Department dept) { using (LibUnitOfWork uow = new LibUnitOfWork()) { var _Dept = uow.DepartmentRepository.FindById(dept.Id); if (_Dept == null) { uow.DepartmentRepository.Add(dept); } else { uow.DepartmentRepository.Update(dept); } uow.SaveChanges(); } }
public void AddOrUpdateSection(Section section) { using (LibUnitOfWork uow = new LibUnitOfWork()) { var _section = uow.BookInfoRepository.FindById(section.Id); if (_section == null) { uow.BookInfoRepository.Add(_section); } else { uow.BookInfoRepository.Update(_section); } uow.SaveChanges(); } }
public void SaveSection(Section section) { using (var uow = new LibUnitOfWork()) { var sect = uow.SectionRepository.FindById(section.Id); if (sect == null) { uow.SectionRepository.Add(section); } else { uow.SectionRepository.Update(section); } uow.SaveChanges(); } }
public void AddOrUpdate(Course c) { using (LibUnitOfWork uow = new LibUnitOfWork()) { var course = uow.CourseRepository.FindById(c.Id); if (course == null) { uow.CourseRepository.Add(c); } else { uow.CourseRepository.Update(c); } uow.SaveChanges(); } }
public void AddOrUpdateBook(BookInfo bookInfo) { using (LibUnitOfWork uow = new LibUnitOfWork()) { var book = uow.BookInfoRepository.FindById(bookInfo.Id); if (book == null) { uow.BookInfoRepository.Add(bookInfo); } else { uow.BookInfoRepository.Update(bookInfo); } uow.SaveChanges(); } }
public LibraryUser GetAuthenticatedUser(string username, string password) { using (var uow = new LibUnitOfWork()) { var user = uow.LibraryUserRepository.FindByUsername(username); if (user == null) { return(null); } if (user.Password == password) { return(user); } return(null); } }
public override void Execute() { using (var uow = new LibUnitOfWork()) { BookCopy.IsBorrowed = true; var bookInfo = uow.BookInfoRepository.BookInfoOf(BookCopy); var section = uow.SectionRepository.Where(s => s.Id.Equals(bookInfo.SectionId)).Single(); if (section.MaxDaysAllowedForBorrowing == 0) { return; } uow.BookCopyRepository.Update(BookCopy); uow.BookTransactionInfoRepository.Add(bookTransInfo); uow.SaveChanges(); } }
public static LibraryTransactionBase CreateTransaction(LibraryUser libraryUser, string bookTag) { using (var uow = new LibUnitOfWork()) { var bookCopy = uow.BookCopyRepository.FindByShortRangeRFId(bookTag); if (bookCopy == null) { throw new InvalidOperationException("Unknown Book!"); } if (bookCopy.IsBorrowed == true) { var lastBookTrans = uow.BookTransactionInfoRepository.GetLastBookTransaction(bookCopy.Id); if (lastBookTrans == null) { throw new InvalidOperationException("The book has no known borrowed information."); } else if (libraryUser.LibraryUserType == LibraryUser.UserType.Instructor || libraryUser.LibraryUserType == LibraryUser.UserType.Employee) { return(new ReturnBookIgnorePaymentTransaction(bookCopy, lastBookTrans)); } else if (libraryUser.Id != lastBookTrans.LibraryUserId) { throw new InvalidOperationException("Please surrender this book to admin"); } else { return(new ReturnBookTransaction(bookCopy, lastBookTrans)); } } else { return(new BorrowBookTransaction(libraryUser, bookCopy)); } } }
public void MarkSatSunAsHolidays() { using (var uow = new LibUnitOfWork()) { var startDay = DateTime.Now.Date; while (startDay != new DateTime(startDay.Year, 12, 31)) { if (startDay.DayOfWeek == DayOfWeek.Sunday || startDay.DayOfWeek == DayOfWeek.Saturday) { //todo : add this day to database var newHoliday = new Holiday(); newHoliday.Day = startDay; newHoliday.Description = "Weekends"; uow.HolidayRepository.AddOrUpdate(newHoliday); } startDay = startDay.AddDays(1); } uow.SaveChanges(); } }
public void AddOrUpdateLibraryUser(LibraryUser libraryUser) { using (LibUnitOfWork uow = new LibUnitOfWork()) { var libUser = uow.LibraryUserRepository.FindById(libraryUser.Id); var _libuser = uow.LibraryUserRepository.FindByUsername(libraryUser.Username); if (_libuser != null && _libuser.Id != libraryUser.Id) { throw new InvalidOperationException("Username already exists"); } if (libUser == null) { uow.LibraryUserRepository.Add(libraryUser); } else { uow.LibraryUserRepository.Update(libraryUser); } uow.SaveChanges(); } }
public IEnumerable <BookSearchResultDTO> Search(string keyword) { List <BookSearchResultDTO> bookSearchDTO = new List <BookSearchResultDTO>(); using (var uow = new LibUnitOfWork()) { var books = uow.BookInfoRepository.SearchForBooks(keyword); foreach (var book in books) { var section = uow.SectionRepository.GetBookSection(book); var booksearch = new BookSearchResultDTO { BookInfo = book, Section = section }; booksearch.AvailableCopies = uow.BookInfoRepository.GetNumberOfAvailableCopies(book); booksearch.NumberOfCopies = uow.BookInfoRepository.GetNumberOfCopies(book); bookSearchDTO.Add(booksearch); } return(bookSearchDTO); } }
public void AddOrUpdateBookCopy(BookCopy bookCopy) { using (var uow = new LibUnitOfWork()) { var existingBookCopy = uow.BookCopyRepository.Where(bc => bc.Id == bookCopy.Id).FirstOrDefault(); if (existingBookCopy != null) { var existing = uow.BookCopyRepository.Where(bc => bc.BookTagLong == bookCopy.BookTagLong && bc.Id != bookCopy.Id).FirstOrDefault(); if (existing != null) { throw new InvalidOperationException("That long-ranged RFID tag is already used"); } existing = uow.BookCopyRepository.Where(bc => bc.BookTagShort == bookCopy.BookTagShort && bc.Id != bookCopy.Id).FirstOrDefault(); if (existing != null) { throw new InvalidOperationException("That short-ranged RFID tag is already used"); } existing = uow.BookCopyRepository.Where(bc => bc.AcquisitionNumber == bookCopy.AcquisitionNumber && bc.Id != bookCopy.Id).FirstOrDefault(); if (existing != null) { throw new InvalidOperationException("Duplicate in Acquisition Number!"); } bookCopy.IsBorrowed = false; var lastTrans = uow.BookTransactionInfoRepository.GetLastBookTransaction(bookCopy.Id); if (lastTrans != null) { lastTrans.ReturnDate = DateTime.Now; lastTrans.AmountToPay = 0; uow.BookTransactionInfoRepository.Update(lastTrans); } uow.BookCopyRepository.Update(bookCopy); } else { var existing = uow.BookCopyRepository.FindByLongRangeRFId(bookCopy.BookTagLong); if (existing != null) { throw new InvalidOperationException("That long-ranged RFID tag is already used"); } existing = uow.BookCopyRepository.FindByShortRangeRFId(bookCopy.BookTagShort); if (existing != null) { throw new InvalidOperationException("That short-ranged RFID tag is already used"); } if (uow.BookCopyRepository.Where(bc => bc.AcquisitionNumber == bookCopy.AcquisitionNumber).Any()) { throw new InvalidOperationException("Duplicate in Acquisition Number!"); } uow.BookCopyRepository.Add(bookCopy); } uow.SaveChanges(); } }