Пример #1
0
 public void AddBook(BookData bookData)
 {
     using (IRepositoryTransactionContext ctx = ObjectContainer.Instance.GetService <IRepositoryTransactionContext>())
     {
         IRepository <Book> bookRepository = ctx.GetRepository <Book>();
         Book book = bookData.ToEntity();
         bookRepository.Add(book);
         ctx.Commit();
     }
 }
Пример #2
0
        public IEnumerable <RegistrationData> GetReaderRegistrations(string readerUserName)
        {
            try
            {
                using (IRepositoryTransactionContext ctx = ObjectContainer.Instance.GetService <IRepositoryTransactionContext>())
                {
                    IRepository <Reader> readerRepository = ctx.GetRepository <Reader>();
                    Reader reader               = readerRepository.Find(Specification <Reader> .Eval(r => r.UserName.Equals(readerUserName)));
                    var    registrations        = reader.Registrations;
                    List <RegistrationData> ret = new List <RegistrationData>();
                    foreach (var registration in registrations)
                    {
                        RegistrationData rd = new RegistrationData
                        {
                            BookGuid       = registration.Book.Id,
                            BookISBN       = registration.Book.ISBN,
                            BookTitle      = registration.Book.Title,
                            Date           = registration.Date,
                            DueDate        = registration.DueDate,
                            ReaderName     = reader.Name,
                            ReaderUserName = reader.UserName,
                            ReturnDate     = registration.ReturnDate,
                            Status         = registration.Status,
                        };
                        if (registration.Expired)
                        {
                            rd.Status     = -1;
                            rd.StatusText = "Expired";
                        }
                        else
                        {
                            switch (registration.RegistrationStatus)
                            {
                            case RegistrationStatus.Normal:
                                rd.StatusText = "Normal";
                                break;

                            case RegistrationStatus.Returned:
                                rd.StatusText = "Returned";
                                break;

                            default: break;
                            }
                        }
                        ret.Add(rd);
                    }
                    return(ret);
                }
            }
            catch
            {
                throw;
            }
        }
Пример #3
0
 public IEnumerable <BookData> GetAllBooks()
 {
     using (IRepositoryTransactionContext ctx = ObjectContainer.Instance.GetService <IRepositoryTransactionContext>())
     {
         IRepository <Book> bookRepository = ctx.GetRepository <Book>();
         List <BookData>    bds            = new List <BookData>();
         var books = bookRepository.GetAll();
         foreach (var book in books)
         {
             BookData bd = new BookData();
             bd.FromEntity(book);
             bds.Add(bd);
         }
         return(bds);
     }
 }
Пример #4
0
 public BookData GetBookDetail(Guid id)
 {
     try
     {
         using (IRepositoryTransactionContext ctx = ObjectContainer.Instance.GetService <IRepositoryTransactionContext>())
         {
             IRepository <Book> bookRepository = ctx.GetRepository <Book>();
             Book     bk = bookRepository.GetByKey(id);
             BookData bd = new BookData();
             bd.FromEntity(bk);
             return(bd);
         }
     }
     catch
     {
         throw;
     }
 }
Пример #5
0
 public bool AddReader(ReaderData readerData)
 {
     try
     {
         using (IRepositoryTransactionContext ctx = ObjectContainer.Instance.GetService <IRepositoryTransactionContext>())
         {
             IRepository <Reader> readerRepository = ctx.GetRepository <Reader>();
             Reader reader = readerData.ToEntity();
             readerRepository.Add(reader);
             ctx.Commit();
         }
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Пример #6
0
 public void Return(string readerUserName, Guid bookId)
 {
     try
     {
         using (IRepositoryTransactionContext ctx = ObjectContainer.Instance.GetService <IRepositoryTransactionContext>())
         {
             IRepository <Book>   bookRepository   = ctx.GetRepository <Book>();
             IRepository <Reader> readerRepository = ctx.GetRepository <Reader>();
             Reader reader = readerRepository.Find(Specification <Reader> .Eval(r => r.UserName.Equals(readerUserName)));
             Book   book   = bookRepository.GetByKey(bookId);
             reader.Return(book);
             ctx.Commit();
         }
     }
     catch
     {
         throw;
     }
 }