public JsonResult TinhNoNXB(DateTime datethis) { List <NoNXBList> cnlist = new List <NoNXBList>(); List <NXBDebtTien> dt = db.NXBDebtTiens.ToList(); List <NXB> dl = db.NXBs.ToList(); foreach (var i in dl) { List <NXBDebtTien> l = db.NXBDebtTiens.Where(x => x.fk_nxbID == i.nxbID && x.nxbdebttien_ngaycapnhat <= datethis).ToList(); var Maxdate = l.Select(x => x.nxbdebttien_ngaycapnhat).Max(); NXBDebtTien b = db.NXBDebtTiens.Where(x => x.fk_nxbID == i.nxbID && x.nxbdebttien_ngaycapnhat == Maxdate).SingleOrDefault(); if (b != null) { NoNXBList h = new NoNXBList { fk_nxbID = i.nxbID, NXB_NAME = i.nxb_ten, notiennxb = b.nxbdebttien_tien }; cnlist.Add(h); } else { NoNXBList h = new NoNXBList { fk_nxbID = i.nxbID, NXB_NAME = i.nxb_ten, notiennxb = 0 }; cnlist.Add(h); } } return(Json(cnlist, JsonRequestBehavior.AllowGet)); }
public JsonResult save(int nxbID, float tongtien) { DateTime date = DateTime.Now; var dt = date.Date; List <NXBDebt> n = db.NXBDebts.Where(x => x.fk_nxbID == nxbID).ToList(); foreach (var i in n) { i.nxbdebt_soluong -= i.nxbdebt_banduoc; i.nxbdebt_banduoc = 0; } List <NXBDebtTien> li = db.NXBDebtTiens.Where(x => x.fk_nxbID == nxbID).ToList(); var maxdate = li.Select(x => x.nxbdebttien_ngaycapnhat).Max(); NXBDebtTien e = db.NXBDebtTiens.Where(x => x.fk_nxbID == nxbID && x.nxbdebttien_ngaycapnhat == maxdate).FirstOrDefault(); if (n != null) { if (dt == e.nxbdebttien_ngaycapnhat) { e.nxbdebttien_tien -= tongtien; } else if (dt > e.nxbdebttien_ngaycapnhat) { e.nxbdebttien_tien -= tongtien; e.fk_nxbID = nxbID; e.nxbdebttien_ngaycapnhat = dt; db.NXBDebtTiens.Add(e); } else if (dt < e.nxbdebttien_ngaycapnhat) { List <NXBDebtTien> dd = db.NXBDebtTiens.Where(x => x.fk_nxbID == nxbID && x.nxbdebttien_ngaycapnhat >= dt).ToList(); foreach (var c in dd) { c.nxbdebttien_tien -= tongtien; } NXBDebtTien m = db.NXBDebtTiens.Where(x => x.fk_nxbID == nxbID && x.nxbdebttien_ngaycapnhat == dt).SingleOrDefault(); if (m == null) { NXBDebtTien v = new NXBDebtTien { fk_nxbID = nxbID, nxbdebttien_tien = tongtien, nxbdebttien_ngaycapnhat = dt }; db.NXBDebtTiens.Add(v); } } } db.SaveChanges(); return(Json(JsonRequestBehavior.AllowGet)); }
public JsonResult save(NhapSachVM O) { bool status = false; if (ModelState.IsValid) { NhapSachMaster order = new NhapSachMaster { fk_nxbID = O.fk_nxbID, nhapsach_ngaygiao = O.nhapsach_ngaygiao, nhapsach_nguoigiao = O.nhapsach_nguoigiao }; foreach (var i in O.NhapSachDetails) { order.NhapSachDetails.Add(i); } db.NhapSachMasters.Add(order); foreach (var i in O.NhapSachDetails) { NXBDebt l = db.NXBDebts.SingleOrDefault(x => x.fk_sachID == i.fk_sachID && x.fk_nxbID == O.fk_nxbID); if (l != null) { l.nxbdebt_soluong += i.soluong; } else { NXBDebt k = new NXBDebt { fk_nxbID = O.fk_nxbID, fk_sachID = i.fk_sachID, nxbdebt_soluong = i.soluong, nxbdebt_banduoc = 0 }; db.NXBDebts.Add(k); } } foreach (var i in O.NhapSachDetails) { Sach w = db.Saches.SingleOrDefault(x => x.sachID == i.fk_sachID); w.sach_soluong += i.soluong; } foreach (var i in O.NhapSachDetails) { List <TonKho> la = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID).ToList(); var maxdate1 = la.Select(x => x.tonkho_ngaycapnhat).Max(); TonKho u = db.TonKhoes.Where(s => s.fk_sachID == i.fk_sachID && s.tonkho_ngaycapnhat == maxdate1).FirstOrDefault(); if (u != null) { if (O.nhapsach_ngaygiao == u.tonkho_ngaycapnhat) { u.tonkho_soluong += i.soluong; } else if (O.nhapsach_ngaygiao > u.tonkho_ngaycapnhat) { u.tonkho_soluong += i.soluong; u.fk_sachID = i.fk_sachID; u.tonkho_ngaycapnhat = O.nhapsach_ngaygiao; db.TonKhoes.Add(u); } else if (O.nhapsach_ngaygiao < u.tonkho_ngaycapnhat) { List <TonKho> bb = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat >= O.nhapsach_ngaygiao).ToList(); foreach (var c in bb) { c.tonkho_soluong += i.soluong; } TonKho h = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat == O.nhapsach_ngaygiao).SingleOrDefault(); if (h == null) { TonKho a = new TonKho { fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.nhapsach_ngaygiao }; db.TonKhoes.Add(a); } } } else { TonKho p = new TonKho { fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.nhapsach_ngaygiao }; db.TonKhoes.Add(p); } } } foreach (var i in O.NhapSachDetails) { List <NXBDebtTien> li = db.NXBDebtTiens.Where(x => x.fk_nxbID == O.fk_nxbID).ToList(); var maxdate = li.Select(x => x.nxbdebttien_ngaycapnhat).Max(); NXBDebtTien n = db.NXBDebtTiens.Where(s => s.fk_nxbID == O.fk_nxbID && s.nxbdebttien_ngaycapnhat == maxdate).FirstOrDefault(); var gn = db.Saches.Where(x => x.sachID == i.fk_sachID).Select(x => x.sach_gianhap).SingleOrDefault(); if (n != null) { if (O.nhapsach_ngaygiao == n.nxbdebttien_ngaycapnhat) { n.nxbdebttien_tien += gn * i.soluong; } else if (O.nhapsach_ngaygiao > n.nxbdebttien_ngaycapnhat) { n.nxbdebttien_tien += gn * i.soluong; n.fk_nxbID = O.fk_nxbID; n.nxbdebttien_ngaycapnhat = O.nhapsach_ngaygiao; db.NXBDebtTiens.Add(n); } else if (O.nhapsach_ngaygiao < n.nxbdebttien_ngaycapnhat) { List <NXBDebtTien> dd = db.NXBDebtTiens.Where(x => x.fk_nxbID == O.fk_nxbID && x.nxbdebttien_ngaycapnhat >= O.nhapsach_ngaygiao).ToList(); foreach (var c in dd) { c.nxbdebttien_tien += gn * i.soluong; } NXBDebtTien m = db.NXBDebtTiens.Where(x => x.fk_nxbID == O.fk_nxbID && x.nxbdebttien_ngaycapnhat == O.nhapsach_ngaygiao).SingleOrDefault(); if (m == null) { NXBDebtTien v = new NXBDebtTien { fk_nxbID = O.fk_nxbID, nxbdebttien_tien = gn, nxbdebttien_ngaycapnhat = O.nhapsach_ngaygiao }; db.NXBDebtTiens.Add(v); } } } else { NXBDebtTien q = new NXBDebtTien { fk_nxbID = O.fk_nxbID, nxbdebttien_tien = gn * i.soluong, nxbdebttien_ngaycapnhat = O.nhapsach_ngaygiao }; db.NXBDebtTiens.Add(q); } } db.SaveChanges(); status = true; return(new JsonResult { Data = new { status = status } }); }