public ThongKeDauSachViewModel(ThongKeDauSach obj) { ID = obj.ID; DauSachID = obj.DauSachID; DauSach = obj.DauSach.Ten; Ngay = obj.Ngay; SoLuongHienTai = obj.SoLuongHienTai; SoLuongDaMuon = obj.DauSach.SoLuongTon - obj.SoLuongHienTai; }
public JsonResult deleteChiTietTra(string id, string mathe) { if (id != null) { int ID = Convert.ToInt32(id); var cttra = db.ChiTietTra.Where(i => i.ID.Equals(ID)).FirstOrDefault(); var docgia = db.DocGia.Where(o => o.MaThe.Equals(mathe)).FirstOrDefault(); docgia.SoSachConLai = docgia.SoSachConLai - 1; var cuonsach = db.CuonSach.Where(o => o.ID.Equals(cttra.CuonSachID)).FirstOrDefault(); cuonsach.TinhTrang = 1; var dausach = db.DauSach.Where(o => o.ID.Equals(cuonsach.DauSachID)).FirstOrDefault(); dausach.SoLuongTon = dausach.SoLuongTon - 1; var thongkedausach = db.ThongKeDauSach.Where(o => o.DauSachID.Equals(cuonsach.DauSachID)).FirstOrDefault(); DateTime date_thongke = thongkedausach.Ngay.Date; DateTime now = DateTime.Now.Date; if (date_thongke == now) { thongkedausach.SoLuongHienTai = thongkedausach.SoLuongHienTai - 1; } else { ThongKeDauSach tk = new ThongKeDauSach(); tk.DauSachID = cuonsach.DauSachID; tk.Ngay = DateTime.Now.Date; tk.SoLuongHienTai = dausach.SoLuongTon - 1; db.ThongKeDauSach.Add(tk); } var ctphieumuon = db.ChiTietMuon.Where(o => o.CuonSach.ID.Equals(cuonsach.ID) && o.PhieuMuon.DocGiaID.Equals(docgia.ID)).FirstOrDefault(); ctphieumuon.TinhTrang = 1; db.ChiTietTra.Remove(cttra); db.SaveChanges(); return(Json("ok")); } else { return(Json("error")); } }
public JsonResult Post_EditChiTietTra(string sMaVach, string MaPhieuTra) { if (sMaVach != null && MaPhieuTra != null) { string[] Arr_sMaVach = sMaVach.Split(','); var phieutra = db.PhieuTra.Where(i => i.MaPhieuTra.Equals(MaPhieuTra)).FirstOrDefault(); var docgia = db.DocGia.Where(o => o.ID.Equals(phieutra.DocGiaID)).FirstOrDefault(); docgia.SoSachConLai = docgia.SoSachConLai + (Arr_sMaVach.Length - 1); for (int i = 0; i < Arr_sMaVach.Length - 1; i++) { string mavach = Arr_sMaVach[i]; var cuonsach = db.CuonSach.Where(o => o.MaVach.Equals(mavach)).FirstOrDefault(); cuonsach.TinhTrang = 2; var dausach = db.DauSach.Where(o => o.ID.Equals(cuonsach.DauSachID)).FirstOrDefault(); dausach.SoLuongTon = dausach.SoLuongTon + 1; var thongkedausach = db.ThongKeDauSach.Where(o => o.DauSachID.Equals(cuonsach.DauSachID)).FirstOrDefault(); DateTime date_thongke = thongkedausach.Ngay.Date; DateTime now = DateTime.Now.Date; if (date_thongke == now) { thongkedausach.SoLuongHienTai = thongkedausach.SoLuongHienTai + 1; } else { ThongKeDauSach tk = new ThongKeDauSach(); tk.DauSachID = cuonsach.DauSachID; tk.Ngay = DateTime.Now.Date; tk.SoLuongHienTai = dausach.SoLuongTon + 1; db.ThongKeDauSach.Add(tk); } //0 chua tra //1 tra roi var ctphieumuon = db.ChiTietMuon.Where(o => o.CuonSach.MaVach.Equals(mavach) && o.PhieuMuon.DocGiaID.Equals(docgia.ID)).FirstOrDefault(); ctphieumuon.TinhTrang = 1; //giai quyet tinh trang phieu muon ChiTietTra ctTra = new ChiTietTra(); ctTra.CuonSachID = cuonsach.ID; ctTra.PhieuTraID = phieutra.ID; db.ChiTietTra.Add(ctTra); } db.SaveChanges(); return(Json("ok")); } else { return(Json("error")); } }
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 }); }
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)); }
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 }); }