예제 #1
0
        public async Task <ActionResult> Edit(List <string> DSTacGia, [Bind(Include = "MaSach,MaISBN,TenSach,MaLoai,MaLinhVuc,MaNXB,NamXuatBan")] SachGiaoTrinh sachGiaoTrinh)
        {
            if (ModelState.IsValid)
            {
                if (DSTacGia != null)
                {
                    db.DSTacGias.Where(p => p.MaSach == sachGiaoTrinh.MaSach && p.LaChuBien == false).ForEach(z => db.DSTacGias.Remove(z));
                    foreach (var mankh in DSTacGia)
                    {
                        DSTacGia tacGia = new DSTacGia
                        {
                            LaChuBien = false,
                            MaSach    = sachGiaoTrinh.MaSach,
                            MaNKH     = Int32.Parse(mankh)
                        };
                        sachGiaoTrinh.DSTacGias.Add(tacGia);
                    }
                }
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            var lstAllNKH = db.NhaKhoaHocs.Where(p => p.MaNKH != 1).Select(p => new
            {
                p.MaNKH,
                TenNKH = p.HoNKH + " " + p.TenNKH
            }).ToList();
            var tacgiaphu = db.NhaKhoaHocs.Where(p => p.DSTacGias.Any(d => d.MaSach == sachGiaoTrinh.MaSach && d.LaChuBien == false)).Select(p => p.MaNKH).ToList();

            ViewBag.MaLinhVuc = new SelectList(db.LinhVucs, "MaLinhVuc", "TenLinhVuc", sachGiaoTrinh.MaLinhVuc);
            ViewBag.MaNXB     = new SelectList(db.NhaXuatBans, "MaNXB", "TenNXB", sachGiaoTrinh.MaNXB);
            ViewBag.MaLoai    = new SelectList(db.PhanLoaiSaches, "MaLoai", "TenLoai", sachGiaoTrinh.MaLoai);
            ViewBag.DSTacGia  = new MultiSelectList(lstAllNKH, "MaNKH", "TenNKH", tacgiaphu);
            return(View(sachGiaoTrinh));
        }
        public async Task <ActionResult> Create([Bind(Include = "MaSach,MaISBN,TenSach,MaLoai,MaLinhVuc,MaNXB,NamXuatBan")] SachGiaoTrinh sachGiaoTrinh, int MaChuBien)
        {
            if (ModelState.IsValid)
            {
                db.SachGiaoTrinhs.Add(sachGiaoTrinh);
                await db.SaveChangesAsync();

                DSTacGia dstacgia = new DSTacGia
                {
                    MaNKH     = MaChuBien,
                    MaSach    = sachGiaoTrinh.MaSach,
                    LaChuBien = true
                };

                db.DSTacGias.Add(dstacgia);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            ViewBag.MaLinhVuc = new SelectList(db.LinhVucs, "MaLinhVuc", "TenLinhVuc", sachGiaoTrinh.MaLinhVuc);
            ViewBag.MaNXB     = new SelectList(db.NhaXuatBans, "MaNXB", "TenNXB", sachGiaoTrinh.MaNXB);
            ViewBag.MaLoai    = new SelectList(db.PhanLoaiSaches, "MaLoai", "TenLoai", sachGiaoTrinh.MaLoai);
            return(View(sachGiaoTrinh));
        }
        public async Task <ActionResult> DeleteConfirmed(int id, int mankh, int?manhakhoahoc)
        {
            DSTacGia dSTacGia = await db.DSTacGias.Where(p => p.MaSach == id && p.MaNKH == mankh).FirstOrDefaultAsync();

            db.DSTacGias.Remove(dSTacGia);
            await db.SaveChangesAsync();

            return(RedirectToAction("Edit", new { id = id, manhakhoahoc = manhakhoahoc }));
        }
예제 #4
0
        public async Task <ActionResult> EditDanhSachTacGia([Bind(Include = "MaSach,MaNKH,LaChuBien")] DSTacGia dSTacGia)
        {
            if (ModelState.IsValid)
            {
                db.DSTacGias.AddOrUpdate(dSTacGia);
                await db.SaveChangesAsync();

                return(RedirectToAction("DanhSachTacGia"));
            }

            ViewBag.tensach = db.SachGiaoTrinhs.Find(dSTacGia.MaSach).TenSach;
            return(View(dSTacGia));
        }
예제 #5
0
        // GET: AdminDSTacGia/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DSTacGia dSTacGia = await db.DSTacGias.FindAsync(id);

            if (dSTacGia == null)
            {
                return(HttpNotFound());
            }
            return(View(dSTacGia));
        }
        /*edit danh sach tac gia*/
        public async Task <ActionResult> EditDanhSachTacGia(int?id, int?manhakhoahoc)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DSTacGia dSTacGia = await db.DSTacGias.Where(p => p.MaSach == id && p.MaNKH == manhakhoahoc).FirstOrDefaultAsync();

            if (dSTacGia == null)
            {
                return(HttpNotFound());
            }
            ViewBag.tensach = db.SachGiaoTrinhs.Find(id).TenSach;
            return(View(dSTacGia));
        }
        // GET: AdminDSTacGia/Delete/5
        public async Task <ActionResult> Delete(int?id, int?mankh, int?manhakhoahoc)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DSTacGia dSTacGia = await db.DSTacGias.Where(p => p.MaSach == id && p.MaNKH == mankh).FirstOrDefaultAsync();

            if (dSTacGia == null)
            {
                return(HttpNotFound());
            }
            ViewBag.manhakhoahoc = manhakhoahoc;
            ViewBag.masach       = id;
            ViewBag.mankh        = mankh;
            return(View(dSTacGia));
        }
        /* delete danh sach tac gia*/
        public async Task <ActionResult> DeleteDanhSachTacGia(int?id, int?manhakhoahoc)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DSTacGia dSTacGia = await db.DSTacGias.Where(p => p.MaSach == id && p.MaNKH == manhakhoahoc).FirstOrDefaultAsync();

            if (dSTacGia == null)
            {
                return(HttpNotFound());
            }
            db.DSTacGias.Remove(dSTacGia);
            await db.SaveChangesAsync();

            return(RedirectToAction("DanhSachTacGia"));
        }
        public async Task <ActionResult> EditDanhSachTacGia([Bind(Include = "MaSach,MaNKH,LaChuBien")] DSTacGia dSTacGia)
        {
            if (ModelState.IsValid)
            {
                DSTacGia tacGia = db.DSTacGias.Where(p => p.MaSach == dSTacGia.MaSach && p.MaNKH == dSTacGia.MaNKH).FirstOrDefault();
                if (tacGia != null)
                {
                    tacGia.LaChuBien = dSTacGia.LaChuBien;
                }
                else
                {
                    db.DSTacGias.Add(dSTacGia);
                }
                await db.SaveChangesAsync();

                return(RedirectToAction("DanhSachTacGia"));
            }

            ViewBag.tensach = db.SachGiaoTrinhs.Find(dSTacGia.MaSach).TenSach;
            return(View(dSTacGia));
        }
        public async Task <ActionResult> CreateDanhSachTacGia([Bind(Include = "MaSach,MaNKH,LaChuBien")] DSTacGia dSTacGia)
        {
            if (ModelState.IsValid)
            {
                db.DSTacGias.Add(dSTacGia);
                await db.SaveChangesAsync();

                return(RedirectToAction("DanhSachTacGia"));
            }


            var dsnguoidathamgia = db.DSTacGias.Where(p => p.MaSach == dSTacGia.MaSach).Select(p => p.MaNKH).ToList();
            var lstAllNKH        = db.NhaKhoaHocs.Where(p => !dsnguoidathamgia.Contains(p.MaNKH)).Select(p => new
            {
                p.MaNKH,
                TenNKH = p.HoNKH + " " + p.TenNKH
            }).ToList();

            ViewBag.MaNKH   = new SelectList(lstAllNKH, "MaNKH", "TenNKH");
            ViewBag.masach  = dSTacGia.MaSach;
            ViewBag.TenSach = db.SachGiaoTrinhs.Find(dSTacGia.MaSach).TenSach;
            return(View(dSTacGia));
        }