public void TaoBaiViet(SaveBaiVietDto baiVietDto, int userSinhVienId) { Mapper.Map(baiVietDto, this); Tag(baiVietDto); NgayTao = DateTime.Now; NguoiTaoId = userSinhVienId; }
private void Tag(SaveBaiVietDto baiVietDto) { //Tag đơn vị if (baiVietDto.DanhSachDonViTag != null) { foreach (var donVi in baiVietDto.DanhSachDonViTag) { BaiVietDonVi.Add(new BaiVietDonVi { DonViId = donVi }); } } //tag lớp if (baiVietDto.DanhSachLopTag != null) { foreach (var lop in baiVietDto.DanhSachLopTag) { BaiVietLop.Add(new BaiVietLop { LopId = lop }); } } //Tag hoạt động if (baiVietDto.DanhSachHoatDongTag != null) { foreach (var hoatDong in baiVietDto.DanhSachHoatDongTag) { BaiVietHoatDong.Add(new BaiVietHoatDong { HoatDongId = hoatDong }); } } }
public void ChinhSuaBaiViet(SaveBaiVietDto baiVietDto) { Mapper.Map(baiVietDto, this); BaiVietDonVi.Clear(); BaiVietLop.Clear(); BaiVietHoatDong.Clear(); Tag(baiVietDto); }
public IHttpActionResult SaveBaiViet(SaveBaiVietDto baiVietDto) { if (!ModelState.IsValid) { return(BadRequest()); } var baiViet = new BaiViet(); var userSinhVienId = User.Identity.GetSinhVienId(); //Nếu là tạo bài viết mới if (baiVietDto.Id == 0) { if (userSinhVienId == 0) { return(BadRequest("Hãy liên kết tài khoản này với một sinh viên để tạo bài viết")); } baiViet.TaoBaiViet(baiVietDto, userSinhVienId); _context.DanhSachBaiViet.Add(baiViet); _context.SaveChanges(); return(Ok()); } //Nếu là chỉnh sửa bài viết có sẵn baiViet = _context.DanhSachBaiViet .Include(bv => bv.BaiVietHoatDong) .Include(bv => bv.BaiVietDonVi) .Include(bv => bv.BaiVietLop) .SingleOrDefault(cthd => cthd.Id == baiVietDto.Id); if (baiViet == null) { return(NotFound()); } //Check quyền sửa bài viết if (baiViet.NguoiTaoId != userSinhVienId && !User.IsInRole("Admin") && !User.IsInRole("QuanLyBaiViet")) { return(BadRequest()); } baiViet.ChinhSuaBaiViet(baiVietDto); _context.SaveChanges(); return(Ok()); }