Ejemplo n.º 1
0
 public ActionResult Edit([Bind(Include = "ID,MaPhieuMuon,NgayMuon,DocGiaID,NhanVienID,NgayHetHan,TongSoLuongMuon,SoLuongTra,TinhTrang")] PhieuMuon phieuMuon)
 {
     if (ModelState.IsValid)
     {
         db.Entry(phieuMuon).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.DocGiaID   = new SelectList(db.DocGia, "ID", "MaThe", phieuMuon.DocGiaID);
     ViewBag.NhanVienID = new SelectList(db.NhanVien, "ID", "MaNhanVien", phieuMuon.NhanVienID);
     return(View(phieuMuon));
 }
Ejemplo n.º 2
0
 public ActionResult Edit([Bind(Include = "ID,Ten")] TheLoai theLoai)
 {
     if (ModelState.IsValid)
     {
         db.Entry(theLoai).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(theLoai));
 }
Ejemplo n.º 3
0
 public ActionResult Edit([Bind(Include = "ID,MaPhieuTra,NgayTra,DocGiaID")] PhieuTra phieuTra)
 {
     if (ModelState.IsValid)
     {
         db.Entry(phieuTra).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.DocGiaID = new SelectList(db.DocGia, "ID", "MaThe", phieuTra.DocGiaID);
     return(View(phieuTra));
 }
 public ActionResult Edit([Bind(Include = "ID,PhieuMuonID,CuonSachID,TinhTrang")] ChiTietMuon chiTietMuon)
 {
     if (ModelState.IsValid)
     {
         db.Entry(chiTietMuon).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.CuonSachID  = new SelectList(db.CuonSach, "ID", "MaVach", chiTietMuon.CuonSachID);
     ViewBag.PhieuMuonID = new SelectList(db.PhieuMuon, "ID", "MaPhieuMuon", chiTietMuon.PhieuMuonID);
     return(View(chiTietMuon));
 }
        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));
        }