public new bool Ghi(NhomNguoiDung entity) { try { var xlnd = new XuLyNguoiDung(); var users = entity.DanhSachNguoiDung.Select(id => xlnd.Doc(id)).ToList(); foreach (var nguoiDung in users) { if (nguoiDung.DanhSachChucNangTheoNhom != null) { if (nguoiDung.DanhSachChucNangTheoCaNhan != null) { nguoiDung.DanhSachChucNang = new List <string>(); nguoiDung.DanhSachChucNang.AddRange(nguoiDung.DanhSachChucNangTheoCaNhan); foreach (var s in nguoiDung.DanhSachChucNangTheoNhom.Where(s => !nguoiDung.DanhSachChucNang.Contains(s))) { nguoiDung.DanhSachChucNang.Add(s); } } else { nguoiDung.DanhSachChucNang = nguoiDung.DanhSachChucNangTheoNhom; } } else { if (nguoiDung.DanhSachChucNangTheoCaNhan != null) { nguoiDung.DanhSachChucNang = nguoiDung.DanhSachChucNangTheoCaNhan; } } xlnd.CapNhat(nguoiDung); } return(base.Ghi(entity)); } catch (Exception) { return(false); } finally { GC.Collect(); } }
public new bool Xoa(NhomNguoiDung entity) { try { var xlnd = new XuLyNguoiDung(); var users = entity.DanhSachNguoiDung.Select(id => xlnd.Doc(id)).ToList(); foreach (var nguoiDung in users) { nguoiDung.DanhSachChucNangTheoNhom = null; nguoiDung.DanhSachChucNang = nguoiDung.DanhSachChucNangTheoCaNhan; xlnd.CapNhat(nguoiDung); } return(base.Xoa(entity)); } catch (Exception) { return(false); } finally { GC.Collect(); } }