Пример #1
0
 public static int Delete_CS(CuonSach a)
 {
     SqlParameter[] para = new SqlParameter[]
     {
         new SqlParameter("@macs", a.MaCS),
     };
     return(DataProvider.ExecuteNonQuery("Delete_CS", para));
 }
 public CuonSachViewModel(CuonSach obj)
 {
     ID          = obj.ID;
     MaVach      = obj.MaVach;
     DauSachID   = obj.DauSachID;
     DauSach     = obj.DauSach.Ten;
     TinhTrangID = obj.TinhTrang;
     TinhTrang   = obj.TinhTrang != null?CommonHandler.GetEnumDescription((ConstantHandler.TinhTrang_CuonSach) TinhTrangID) : string.Empty;
 }
Пример #3
0
 public static int sua_CS(CuonSach a)
 {
     SqlParameter[] para = new SqlParameter[]
     {
         new SqlParameter("@mats", a.MaTS),
         new SqlParameter("@trangthai", a.TrangThai),
         new SqlParameter("@mats", a.MaTS)
     };
     return(DataProvider.ExecuteNonQuery("sua_CS", para));
 }
Пример #4
0
        public bool XoaCuonSach(string MaCuon)
        {
            QLThuVienEntities qltvEntity = new QLThuVienEntities();
            CuonSach          cs         = new CuonSach();

            cs.MaCuon = MaCuon;
            qltvEntity.CuonSaches.Attach(cs);
            qltvEntity.CuonSaches.Remove(cs);
            qltvEntity.SaveChanges();
            return(true);
        }
Пример #5
0
        public bool ThemCuonSach(string MaSach, string MaCuon, string ViTri)
        {
            QLThuVienEntities qltvEntity = new QLThuVienEntities();
            CuonSach          cs         = new CuonSach();

            cs.MaSach = MaSach;
            cs.MaCuon = MaCuon;
            cs.ViTri  = ViTri;
            qltvEntity.CuonSaches.Add(cs);
            qltvEntity.SaveChanges();
            return(true);
        }
Пример #6
0
 void Load_CsDangMuon(string MaCS)
 {
     using (Model_QuanLi_ThuVien qltv = new Model_QuanLi_ThuVien())
     {
         txbMaSach.Text = MaCS;
         CuonSach CS = qltv.CuonSaches.Where(p => p.MaSach == MaCS).FirstOrDefault();
         DauSach  DS = qltv.DauSaches.Where(p => p.MaDauSach == CS.MaDauSach).FirstOrDefault();
         txbTenSach.Text = DS.TenDauSach;
         txbGiaTien.Text = DS.GiaTien.ToString();
         ptbAnhCS.Image  = ByteToImage((byte[])DS.HinhAnh);
     }
 }
Пример #7
0
        private void btn_add_Click(object sender, EventArgs e)
        {
            try
            {
                var dausach = new DauSach();
                dausach.Ten          = txt_name.Text;
                dausach.TheLoaiID    = Convert.ToInt32(cbb_category.SelectedValue);
                dausach.TacGiaID     = Convert.ToInt32(cbb_author.SelectedValue);
                dausach.TomTat       = txt_summary.Text;
                dausach.TaiBan       = Convert.ToInt32(txt_republish.Text);
                dausach.NhaSanXuatID = Convert.ToInt32(cbb_producer.SelectedValue);
                dausach.SoLuongTong  = Convert.ToInt32(txt_sumnumber.Text);
                dausach.TinhTrang    = Convert.ToByte(cbb_state.SelectedValue);

                _context.DauSach.Add(dausach);
                _context.SaveChanges();



                for (int i = 1; i <= Convert.ToInt32(txt_sumnumber.Text); i++)
                {
                    var cuonsach = new CuonSach();
                    cuonsach.MaVach    = "MV" + dausach.ID + i;
                    cuonsach.DauSachID = dausach.ID;
                    cuonsach.TinhTrang = 2;
                    _context.CuonSach.Add(cuonsach);
                }

                var phieunhap = new PhieuNhapDauSach();
                phieunhap.DauSachID       = dausach.ID;
                phieunhap.NgayNhap        = DateTime.Now;
                phieunhap.SoLuongCuonSach = dausach.SoLuongTong;

                _context.PhieuNhapDauSach.Add(phieunhap);

                _context.SaveChanges();


                txt_name.Text      = null;
                txt_republish.Text = null;
                txt_summary.Text   = null;
                txt_sumnumber.Text = null;
                form_qlds          = new QuanLyDauSach();
                form_qlds.Refresh();
                form_qlds.Refresh_DataGridView();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #8
0
        private void btn_save_Click(object sender, EventArgs e)
        {
            try
            {
                var cuonsach_id     = label_id.Text;
                int soluong_dausach = Convert.ToInt32(label_sumnumber.Text);
                if (cuonsach_id != "mới")
                {
                    int id       = Convert.ToInt32(cuonsach_id);
                    var cuonsach = _context.CuonSach.Where(i => i.ID.Equals(id)).FirstOrDefault();
                    cuonsach.TinhTrang = Convert.ToByte(cbb_state.SelectedValue);
                }
                else
                {
                    var cuonsach = new CuonSach();
                    cuonsach.MaVach    = txt_key.Text;
                    cuonsach.DauSachID = DauSachID;
                    cuonsach.TinhTrang = Convert.ToByte(cbb_state.SelectedValue);
                    _context.CuonSach.Add(cuonsach);

                    var dausach = _context.DauSach.Where(i => i.ID.Equals(DauSachID)).FirstOrDefault();
                    dausach.SoLuongTong = dausach.SoLuongTong + 1;
                    soluong_dausach     = dausach.SoLuongTong;


                    var phieunhap = new PhieuNhapDauSach();
                    phieunhap.DauSachID       = dausach.ID;
                    phieunhap.NgayNhap        = DateTime.Now;
                    phieunhap.SoLuongCuonSach = 1;

                    _context.PhieuNhapDauSach.Add(phieunhap);
                }
                _context.SaveChanges();

                label_sumnumber.Text = soluong_dausach.ToString();

                Refresh_DataGridView();
                label_id.Text    = "mới";
                txt_key.ReadOnly = false;
                txt_key.Text     = null;
                //label_defaultMV.Text = "MV" + DauSachID.ToString();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
 private void btSuaCS_Click(object sender, EventArgs e)
 {
     using (Model_QuanLi_ThuVien qltv = new Model_QuanLi_ThuVien())
     {
         Load_MaViTri();
         ThongTinCuonSach TTCS = qltv.ThongTinCuonSaches.Where(p => p.MaSach == txbMaCS.Text).SingleOrDefault();
         CuonSach         CS   = qltv.CuonSaches.Where(p => p.MaSach == txbMaCS.Text).SingleOrDefault();
         cbbMaVT.Text       = CS.MaViTri;
         txbTenGiaSach.Text = TTCS.TenGiaSach;
         txbTang.Text       = TTCS.Tang;
         txbNgan.Text       = TTCS.Ngan;
         ThemOrSua          = false;
         TrangThaiThemOrSua();
         cbbMaVT.Visible = true;
         lbMaVT.Visible  = true;
     }
 }
 private void btXoaCS_Click(object sender, EventArgs e)
 {
     using (Model_QuanLi_ThuVien qltv = new Model_QuanLi_ThuVien())
     {
         CuonSach cs = qltv.CuonSaches.Where(p => p.MaSach == txbMaCS.Text).SingleOrDefault();
         if (cs.TinhTrang == false)
         {
             MessageBox.Show("Cuon sach dang duoc cho muon! khong xoa duoc!");
         }
         else
         {
             qltv.Database.ExecuteSqlCommand($"exec XoaCuonSach  '{txbMaCS.Text}' ");
             MessageBox.Show("Xoa thanh cong cuon sach");
             Load_CuonSach();
         }
     }
     TrangThaiBanDau();
 }
Пример #11
0
        public bool XoaThacCuonSach(string MaCuon)
        {
            QLThuVienEntities qltvEntity = new QLThuVienEntities();
            CuonSach          cs         = new CuonSach();

            cs.MaCuon = MaCuon;
            qltvEntity.CuonSaches.Attach(cs);
            qltvEntity.CuonSaches.Remove(cs);
            foreach (MuonTra mt in qltvEntity.MuonTras)
            {
                if (mt.MaCuon == MaCuon)
                {
                    qltvEntity.MuonTras.Attach(mt);
                    qltvEntity.MuonTras.Remove(mt);
                }
            }
            qltvEntity.SaveChanges();
            return(true);
        }
Пример #12
0
        // tao list CuonSach
        public ActionResult List()
        {
            List <CuonSach> list = new List <CuonSach>();

            for (int i = 0; i <= 10; i++)
            {
                CuonSach CuonSach = new CuonSach();
                CuonSach.Id         = i;
                CuonSach.Name       = " CuonSach " + i;
                CuonSach.GiaTien    = 200 * i;
                CuonSach.GioiThieu  = " gioi thieu " + i;
                CuonSach.Id_NXB     = i + 10;
                CuonSach.ID_TheLoai = i + 20;
                CuonSach.SoLuong    = i + 3;
                CuonSach.MainImage  = " Image" + i;
                list.Add(CuonSach);
            }
            return(View(list));
        }
 private void ThongTin_MuonSach()
 {
     using (Model_QuanLi_ThuVien qltv = new Model_QuanLi_ThuVien())
     {
         CuonSach TTCS = qltv.CuonSaches.Where(p => p.MaSach == MaSach).SingleOrDefault();
         DauSach  TTDS = qltv.DauSaches.Where(p => p.MaDauSach == TTCS.MaDauSach).SingleOrDefault();
         DocGia   TTDG = qltv.DocGias.Where(p => p.MaDocGia == MaDG).SingleOrDefault();
         //////////////////////////////////
         txtTenDG.Text       = TTDG.TenDocGia;
         txtDonVi.Text       = TTDG.DonVi;
         txtSDT.Text         = TTDG.SDT;
         ptbAnhDG.Image      = ByteToImage((byte[])TTDG.HinhAnh);
         ptbAnhDS.Image      = ByteToImage((byte[])TTDS.HinhAnh);
         txbTenCuonSach.Text = TTDS.TenDauSach;
         txbSoTrang.Text     = TTDS.SoTrang.ToString();
         txbGiaTien.Text     = TTDS.GiaTien.ToString();
         ////////////////////////////////////////
         //xử lý hình ảnh
         //doi lai vieww thanh ten
     }
 }
Пример #14
0
 public static int Insert_CS(CuonSach a)
 {
     return(DAO.Insert_CS(a));
 }
Пример #15
0
 public static int Update_CS(CuonSach a)
 {
     return(DAO.Update_CS(a));
 }
Пример #16
0
 public static int Delete_CS(CuonSach a)
 {
     return(DAO.Delete_CS(a));
 }
Пример #17
0
 public static int them_CS(CuonSach a)
 {
     return(DAO.them_CS(a));
 }
Пример #18
0
        public JsonResult ChiTietPhieuTra(PhieuTraModel PhieuTraJSON)
        {
            ICollection <ChiTietMuon> dsChiTietMuon = PhieuTraJSON.dsChiTietMuon;
            PhieuTra PhieuTra = new PhieuTra();

            PhieuTra.NgayTra = DateTime.Now;
            //Tìm độc giả theo mã thẻ để thêm vào phiếu trả
            DocGia docGiaTra = db.DocGia
                               .Where(dgt => dgt.MaThe == PhieuTraJSON.MaThe)
                               .FirstOrDefault();

            PhieuTra.DocGiaID = docGiaTra.ID;
            db.PhieuTra.Add(PhieuTra);
            db.SaveChanges();
            PhieuTra.MaPhieuTra = "PT" + PhieuTra.ID;
            db.SaveChanges();
            foreach (var chiTietMuonJSON in dsChiTietMuon)
            {
                ChiTietMuon chiTietMuon = db.ChiTietMuon.Find(chiTietMuonJSON.ID);
                //Tạo 1 chi tiết trả mới
                ChiTietTra chiTietTra = new ChiTietTra();
                chiTietTra.CuonSachID = chiTietMuon.CuonSach.ID;
                chiTietTra.PhieuTraID = PhieuTra.ID;
                //Cập nhật lại số lượng tồn của đầu sách
                DauSach dauSachUpdated = db.DauSach.Find(chiTietMuon.CuonSach.DauSachID);
                db.DauSach.Attach(dauSachUpdated);
                dauSachUpdated.SoLuongTon = dauSachUpdated.SoLuongTon + 1;
                //Cập nhật lại tình trạng của cuốn sách là còn trong kho
                CuonSach cuonSachUpdated = db.CuonSach.Find(chiTietMuon.CuonSach.ID);
                cuonSachUpdated.TinhTrang = 2;
                //Tăng số sách còn lại của độc giả đã mượn cuốn sách này lên
                DocGia docGiaUpdated = db.DocGia.Find(chiTietMuon.PhieuMuon.DocGiaID);
                docGiaUpdated.SoSachConLai = docGiaUpdated.SoSachConLai + 1;
                db.SaveChanges();
                //db.Entry(dauSachUpdated).State = System.Data.Entity.EntityState.Modified;
                //Tạo hoặc cập nhật thống kê đầu sách
                ThongKeDauSach thongKeDauSach = new ThongKeDauSach();
                DateTime       today          = DateTime.Now;
                if (db.ThongKeDauSach.Any(a =>
                                          a.DauSachID == chiTietMuon.CuonSach.DauSachID &&
                                          a.Ngay.Day == today.Day &&
                                          a.Ngay.Month == today.Month &&
                                          a.Ngay.Year == today.Year))
                {
                    thongKeDauSach = db.ThongKeDauSach.Where(a =>
                                                             a.DauSachID == chiTietMuon.CuonSach.DauSachID &&
                                                             a.Ngay.Day == today.Day &&
                                                             a.Ngay.Month == today.Month &&
                                                             a.Ngay.Year == today.Year).FirstOrDefault();
                    db.ThongKeDauSach.Attach(thongKeDauSach);
                    thongKeDauSach.SoLuongHienTai  = dauSachUpdated.SoLuongTon;
                    db.Entry(thongKeDauSach).State = System.Data.Entity.EntityState.Modified;
                }
                else
                {
                    thongKeDauSach.DauSachID      = chiTietMuon.CuonSach.DauSachID;
                    thongKeDauSach.Ngay           = today;
                    thongKeDauSach.SoLuongHienTai = dauSachUpdated.SoLuongTon;
                    db.ThongKeDauSach.Add(thongKeDauSach);
                }
                db.SaveChanges();
                //chiTietTra.CuonSachID = chiTietMuon.CuonSach.ID;
                //chiTietTra.PhieuTraID = PhieuTra.ID;
                db.ChiTietTra.Add(chiTietTra);
                db.SaveChanges();
            }
            //Tạo response trả về cho Angular hiển thị kết quả
            var responsePhieuTra = db.PhieuTra.Select(
                c => new
            {
                ID           = c.ID,
                DocGia       = c.DocGia,
                DocGiaID     = c.DocGiaID,
                NgayTra      = c.NgayTra,
                MaPhieuTra   = c.MaPhieuTra,
                dsChiTietTra = db.ChiTietTra.Select(ctt =>
                                                    new
                {
                    CuonSach   = ctt.CuonSach,
                    PhieuTraID = ctt.PhieuTraID,
                })
                               .Where(d => d.PhieuTraID == c.ID)
            }).Where(pt => pt.ID == PhieuTra.ID).FirstOrDefault();

            return(new JsonResult()
            {
                Data = responsePhieuTra, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Пример #19
0
 public ActionResult Delete(CuonSach CuonSach)
 {
     return(RedirectToAction("List"));
 }
Пример #20
0
 public static int sua_CS(CuonSach a)
 {
     return(DAO.sua_CS(a));
 }
Пример #21
0
        // xoa CuonSach duoc chon
        public ActionResult Delete(int id)
        {
            CuonSach CuonSach = new CuonSach(id, " CuonSach 3", "GioiThieu", 123, 2, 2, 4, "Image ");

            return(View(CuonSach));
        }
Пример #22
0
 public ActionResult Create(CuonSach _CuonSach)
 {
     return(RedirectToAction("List"));
 }
Пример #23
0
 public frm_CS()
 {
     InitializeComponent();
     cs = new CuonSach();
 }
        public ActionResult Edit(EditPhieuMuonRequest phieuMuonRequest)
        {
            PhieuMuon phieuMuonUpdate = db.PhieuMuon.Find(phieuMuonRequest.ID);

            phieuMuonUpdate.DocGiaID = phieuMuonRequest.DocGiaID;
            db.SaveChanges();
            ViewBag.DocGiaID   = new SelectList(db.DocGia, "ID", "MaThe", phieuMuonUpdate.DocGiaID);
            ViewBag.NhanVienID = new SelectList(db.NhanVien, "ID", "MaNhanVien", phieuMuonUpdate.NhanVienID);
            ICollection <ChiTietMuon> dsChiTietMuonCu = db.ChiTietMuon
                                                        .Where(x => x.PhieuMuonID == phieuMuonRequest.ID)
                                                        .ToList();

            foreach (EditChiTietMuon chiTietMuonRequest in phieuMuonRequest.dsChiTietMuon)
            {
                //Nếu chi tiết mượn đã tồn tại và bị xóa trên giao diện thì tiến hành xóa trong CSDL
                //và cập nhật lại tình trạng
                if (chiTietMuonRequest.isOld == true && chiTietMuonRequest.isDeleted == true)
                {
                    //Tìm chi tiết mượn theo id để xóa
                    ChiTietMuon chiTietMuonDeleted = db.ChiTietMuon.Find(chiTietMuonRequest.ChiTietMuonId);
                    //Chỉ cập nhật và thống kê nếu chi tiết mượn này chưa được trả, tức là tình trạng cuốn sách là đang được mượn
                    if (chiTietMuonDeleted.CuonSach.TinhTrang == 1)
                    {
                        //Tiến hành cập nhật lại số lượng tồn kho và số lượng còn lại của độc giả và thống kê đầu sách
                        //Cập nhật lại tình trạng cuốn sách là còn trong kho
                        CuonSach cuonSachMuon = db.CuonSach.Find(chiTietMuonRequest.cuonSachMuonId);
                        cuonSachMuon.TinhTrang = 2;
                        //Cập nhật lại số lượng tồn của đầu sách
                        DauSach dauSachUpdated = db.DauSach.Find(cuonSachMuon.DauSachID);
                        dauSachUpdated.SoLuongTon = dauSachUpdated.SoLuongTon + 1;
                        db.DauSach.Attach(dauSachUpdated);
                        //Cập nhật lại số sách còn lại của độc giả
                        DocGia docGiaUpdated = db.DocGia.Find(phieuMuonRequest.DocGiaID);
                        docGiaUpdated.SoSachConLai = docGiaUpdated.SoSachConLai + 1;
                        //gán biến dauSachUpdated vào db Dau Sach
                        db.SaveChanges();
                        //Thêm hoặc cập nhật thống kê
                        ThongKeDauSach thongKeDauSach = new ThongKeDauSach();
                        DateTime       today          = DateTime.Now;
                        if (db.ThongKeDauSach.Any(a =>
                                                  a.DauSachID == cuonSachMuon.DauSachID &&
                                                  a.Ngay.Day == today.Day &&
                                                  a.Ngay.Month == today.Month &&
                                                  a.Ngay.Year == today.Year))
                        {
                            thongKeDauSach = db.ThongKeDauSach.Where(a =>
                                                                     a.DauSachID == cuonSachMuon.DauSachID &&
                                                                     a.Ngay.Day == today.Day &&
                                                                     a.Ngay.Month == today.Month &&
                                                                     a.Ngay.Year == today.Year).FirstOrDefault();
                            db.ThongKeDauSach.Attach(thongKeDauSach);
                            thongKeDauSach.SoLuongHienTai  = dauSachUpdated.SoLuongTon;
                            db.Entry(thongKeDauSach).State = System.Data.Entity.EntityState.Modified;
                        }
                        else
                        {
                            thongKeDauSach.DauSachID      = cuonSachMuon.DauSachID;
                            thongKeDauSach.Ngay           = today;
                            thongKeDauSach.SoLuongHienTai = dauSachUpdated.SoLuongTon;
                            db.ThongKeDauSach.Add(thongKeDauSach);
                        }
                    }
                    db.ChiTietMuon.Remove(chiTietMuonDeleted);
                    phieuMuonUpdate.TongSoLuongMuon = phieuMuonUpdate.TongSoLuongMuon - 1;
                    db.SaveChanges();
                }
                //Nếu chi tiết mượn là mới thì tiến hành thêm như bình thường
                if (chiTietMuonRequest.isOld == false && chiTietMuonRequest.isDeleted == false)
                {
                    CuonSach    cuonSachMuon = db.CuonSach.Find(chiTietMuonRequest.cuonSachMuonId);
                    ChiTietMuon chiTietMuon  = new ChiTietMuon();
                    //Tiến hành cập nhật lại số lượng tồn kho và số lượng còn lại của độc giả và thống kê đầu sách
                    DauSach dauSachUpdated = db.DauSach.Find(cuonSachMuon.DauSachID);
                    DocGia  docGiaUpdated  = db.DocGia.Find(phieuMuonRequest.DocGiaID);
                    db.DauSach.Attach(dauSachUpdated);
                    //gán biến dauSachUpdated vào db Dau Sach
                    dauSachUpdated.SoLuongTon  = dauSachUpdated.SoLuongTon - 1;
                    docGiaUpdated.SoSachConLai = docGiaUpdated.SoSachConLai - 1;
                    cuonSachMuon.TinhTrang     = 1;
                    db.SaveChanges();
                    //db.Entry(dauSachUpdated).State = System.Data.Entity.EntityState.Modified;
                    ThongKeDauSach thongKeDauSach = new ThongKeDauSach();
                    DateTime       today          = DateTime.Now;
                    if (db.ThongKeDauSach.Any(a =>
                                              a.DauSachID == cuonSachMuon.DauSachID &&
                                              a.Ngay.Day == today.Day &&
                                              a.Ngay.Month == today.Month &&
                                              a.Ngay.Year == today.Year))
                    {
                        thongKeDauSach = db.ThongKeDauSach.Where(a =>
                                                                 a.DauSachID == cuonSachMuon.DauSachID &&
                                                                 a.Ngay.Day == today.Day &&
                                                                 a.Ngay.Month == today.Month &&
                                                                 a.Ngay.Year == today.Year).FirstOrDefault();
                        db.ThongKeDauSach.Attach(thongKeDauSach);
                        thongKeDauSach.SoLuongHienTai  = dauSachUpdated.SoLuongTon;
                        db.Entry(thongKeDauSach).State = System.Data.Entity.EntityState.Modified;
                    }
                    else
                    {
                        thongKeDauSach.DauSachID      = cuonSachMuon.DauSachID;
                        thongKeDauSach.Ngay           = today;
                        thongKeDauSach.SoLuongHienTai = dauSachUpdated.SoLuongTon;
                        db.ThongKeDauSach.Add(thongKeDauSach);
                    }
                    db.SaveChanges();
                    chiTietMuon.CuonSachID  = cuonSachMuon.ID;
                    chiTietMuon.PhieuMuonID = phieuMuonUpdate.ID;
                    chiTietMuon.TinhTrang   = 0;
                    db.ChiTietMuon.Add(chiTietMuon);
                    phieuMuonUpdate.TongSoLuongMuon = phieuMuonUpdate.TongSoLuongMuon + 1;
                    db.SaveChanges();
                }
            }
            return(View(phieuMuonUpdate));
        }
Пример #25
0
        public JsonResult ChiTietPhieuMuon(PhieuMuonModel phieuMuonJSON)
        {
            DocGia docGiaMuon = phieuMuonJSON.DocGia;
            ICollection <CuonSach> dsCuonSachMuon = phieuMuonJSON.dsCuonSach;
            PhieuMuon PhieuMuon = new PhieuMuon();

            PhieuMuon.DocGiaID = docGiaMuon.ID;
            PhieuMuon.NgayMuon = DateTime.Now;
            if (docGiaMuon.Loai == 1)
            {
                PhieuMuon.NgayHetHan = PhieuMuon.NgayMuon.AddDays(20);
            }
            else
            {
                PhieuMuon.NgayHetHan = PhieuMuon.NgayMuon.AddDays(30);
            }
            PhieuMuon.NhanVienID = 1;
            PhieuMuon.TinhTrang  = 0;
            db.PhieuMuon.Add(PhieuMuon);
            db.SaveChanges();
            PhieuMuon.MaPhieuMuon = "PM" + PhieuMuon.ID;
            db.SaveChanges();
            foreach (CuonSach cuonSachMuon in dsCuonSachMuon)
            {
                ChiTietMuon chiTietMuon    = new ChiTietMuon();
                DauSach     dauSachUpdated = db.DauSach.Find(cuonSachMuon.DauSachID);
                //Cập nhật lại tình trạng cuốn sách
                CuonSach cuonSachUpdated = db.CuonSach.Find(cuonSachMuon.ID);
                cuonSachUpdated.TinhTrang = 1;
                //Cập nhật lại số lượng còn lại của độc giả
                DocGia docGiaUpdated = db.DocGia.Find(docGiaMuon.ID);
                docGiaUpdated.SoSachConLai = docGiaUpdated.SoSachConLai - 1;
                //gán biến dauSachUpdated vào db Dau Sach
                db.DauSach.Attach(dauSachUpdated);
                dauSachUpdated.SoLuongTon = dauSachUpdated.SoLuongTon - 1;
                db.SaveChanges();
                //db.Entry(dauSachUpdated).State = System.Data.Entity.EntityState.Modified;
                ThongKeDauSach thongKeDauSach = new ThongKeDauSach();
                DateTime       today          = DateTime.Now;
                if (db.ThongKeDauSach.Any(a =>
                                          a.DauSachID == cuonSachMuon.DauSachID &&
                                          a.Ngay.Day == today.Day &&
                                          a.Ngay.Month == today.Month &&
                                          a.Ngay.Year == today.Year))
                {
                    thongKeDauSach = db.ThongKeDauSach.Where(a =>
                                                             a.DauSachID == cuonSachMuon.DauSachID &&
                                                             a.Ngay.Day == today.Day &&
                                                             a.Ngay.Month == today.Month &&
                                                             a.Ngay.Year == today.Year).FirstOrDefault();
                    db.ThongKeDauSach.Attach(thongKeDauSach);
                    thongKeDauSach.SoLuongHienTai  = dauSachUpdated.SoLuongTon;
                    db.Entry(thongKeDauSach).State = System.Data.Entity.EntityState.Modified;
                }
                else
                {
                    thongKeDauSach.DauSachID      = cuonSachMuon.DauSachID;
                    thongKeDauSach.Ngay           = today;
                    thongKeDauSach.SoLuongHienTai = dauSachUpdated.SoLuongTon;
                    db.ThongKeDauSach.Add(thongKeDauSach);
                }
                db.SaveChanges();
                chiTietMuon.CuonSachID  = cuonSachMuon.ID;
                chiTietMuon.PhieuMuonID = PhieuMuon.ID;
                chiTietMuon.TinhTrang   = 0;
                db.ChiTietMuon.Add(chiTietMuon);
                PhieuMuon.TongSoLuongMuon = PhieuMuon.TongSoLuongMuon + 1;
                cuonSachMuon.TinhTrang    = 1;
                db.SaveChanges();
            }
            var responsePhieuMuon = db.PhieuMuon.Select(c =>
                                                        new
            {
                ID              = c.ID,
                MaPhieuMuon     = c.MaPhieuMuon,
                NgayHetHan      = c.NgayHetHan,
                NgayMuon        = c.NgayMuon,
                NhanVienID      = c.NhanVienID,
                TongSoLuongMuon = c.TongSoLuongMuon,
                TinhTrang       = c.TinhTrang,
                DocGia          = c.DocGia,
                DocGiaID        = c.DocGiaID,
                dsChiTietMuon   = db.ChiTietMuon.Select(ctm =>
                                                        new
                {
                    CuonSach    = ctm.CuonSach,
                    PhieuMuonID = ctm.PhieuMuonID,
                    TinhTrang   = ctm.TinhTrang
                })
                                  .Where(d => d.PhieuMuonID == c.ID)
            }).Where(e => e.ID == PhieuMuon.ID).FirstOrDefault();

            return(new JsonResult()
            {
                Data = responsePhieuMuon, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }