public ActionResult Edit([Bind(Prefix = "phieunhap")] phieunhap phieunhap, [Bind(Prefix = "ct")] ctpn[] ctpn) { if (ModelState.IsValid) { int idpn = phieunhap.idpn; int idct = 1; //thêm chi tiết sửa vào database foreach (ctpn ct in ctpn) { ct.idpn = idpn; ct.idctpn = idct; idct++; sach s = db.sach.Find(ct.idsach); if (s.soluongton != null) { s.soluongton = s.soluongton + ct.soluong; } else { s.soluongton = ct.soluong; } } //xóa chi tiết cũ trong database var ctpncu = db.ctpn.Where(ct => ct.idpn == phieunhap.idpn).ToList(); foreach (var ct in ctpncu) { sach s = db.sach.Find(ct.idsach); int soluonghientai = (int)(s.soluongton - ct.soluong); if (soluonghientai < 0) { ViewBag.idsach = new SelectList(db.sach, "idsach", "tensach"); ViewBag.idnxb = new SelectList(db.nxb, "idnxb", "tennxb", phieunhap.idnxb); phieunhapviewmodel pnvm = new phieunhapviewmodel(); phieunhap.ctpn = ctpn; pnvm.phieunhap = phieunhap; return(View(pnvm)); } s.soluongton = soluonghientai; db.ctpn.Remove(ct); } foreach (ctpn ct in ctpn) { db.ctpn.Add(ct); } db.Entry(phieunhap).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.idsach = new SelectList(db.sach, "idsach", "tensach"); ViewBag.idnxb = new SelectList(db.nxb, "idnxb", "tennxb", phieunhap.idnxb); phieunhapviewmodel pnvm1 = new phieunhapviewmodel(); phieunhap.ctpn = ctpn; pnvm1.phieunhap = phieunhap; return(View(pnvm1)); }
public ActionResult Create([Bind(Prefix = "phieunhap")] phieunhap phieunhap, [Bind(Prefix = "ct")] ctpn[] ctpn) { if (ModelState.IsValid) { int idpn = 1; if (db.phieunhap.Any()) { idpn = db.phieunhap.Max(o => o.idpn) + 1; } int idct = 1; foreach (ctpn ct in ctpn) { ct.idpn = idpn; ct.idctpn = idct; idct++; sach s = db.sach.Find(ct.idsach); if (s.idnxb != phieunhap.idnxb) { ModelState.AddModelError("", "nxb nay khong co ban cuon sach nay"); ViewBag.idnxb = new SelectList(db.nxb, "idnxb", "tennxb", phieunhap.idnxb); ViewBag.idsach = new SelectList(db.sach, "idsach", "tensach"); phieunhap.ctpn = ctpn; phieunhapviewmodel pnvm = new phieunhapviewmodel(); pnvm.phieunhap = phieunhap; return(View(pnvm)); } if (s.soluongton != null) { s.soluongton = s.soluongton + ct.soluong; } else { s.soluongton = ct.soluong; } } phieunhap.ctpn = ctpn; TimeSpan time = DateTime.Now.TimeOfDay; phieunhap.ngaynhap = phieunhap.ngaynhap + time; db.phieunhap.Add(phieunhap); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.idnxb = new SelectList(db.nxb, "idnxb", "tennxb", phieunhap.idnxb); ViewBag.idsach = new SelectList(db.sach, "idsach", "tensach"); phieunhap.ctpn = ctpn; phieunhapviewmodel pnvm = new phieunhapviewmodel(); pnvm.phieunhap = phieunhap; return(View(pnvm)); }
// GET: phieunhaps/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } phieunhap phieunhap = db.phieunhap.Find(id); if (phieunhap == null) { return(HttpNotFound()); } ViewBag.idsach = new SelectList(db.sach, "idsach", "tensach"); ViewBag.idnxb = new SelectList(db.nxb, "idnxb", "tennxb", phieunhap.idnxb); phieunhapviewmodel pnvm = new phieunhapviewmodel(); pnvm.phieunhap = phieunhap; return(View(pnvm)); }