/// <summary> /// 判断一个人员是否对栏目有发布权 /// </summary> /// <param name="docDir"></param> /// <param name="userId"></param> /// <returns></returns> public bool IsPublish(Model.DocDir docDir, Guid userId) { if (null == docDir) { return(false); } return(new User().Exists(userId.ToString(), docDir.PublishUsers)); }
/// <summary> /// 判断一个人员是否对栏目有阅读权 /// </summary> /// <param name="docDir"></param> /// <param name="userId"></param> /// <returns></returns> public bool IsRead(Model.DocDir docDir, Guid userId) { if (null == docDir) { return(false); } return(docDir.ReadUsers.IsNullOrWhiteSpace() || new User().Exists(userId.ToString(), docDir.ReadUsers)); }
/// <summary> /// 更新目录 /// </summary> /// <param name="docDir">目录实体</param> public int Update(Model.DocDir docDir) { ClearCache(); using (var db = new DataContext()) { db.Update(docDir); return(db.SaveChanges()); } }
private void AddChilds(Model.DocDir docDir, List <Model.DocDir> docDirs, List <Model.DocDir> all) { var childs = all.FindAll(p => p.ParentId == docDir.Id); foreach (var child in childs) { docDirs.Add(child); AddChilds(child, docDirs, all); } }
/// <summary> /// 判断一个栏目对于当前用户是否可以显示 /// </summary> /// <param name="docDir"></param> /// <param name="userId"></param> /// <returns></returns> public bool IsDisplay(Model.DocDir docDir, Guid userId) { if (null == docDir) { return(false); } if (IsRead(docDir, userId) || IsManage(docDir, userId) || IsPublish(docDir, userId)) { return(true); } var allChilds = GetAllChilds(docDir.Id, false); foreach (var child in allChilds) { if (IsRead(child, userId) || IsManage(child, userId) || IsPublish(child, userId)) { return(true); } } return(false); }
/// <summary> /// 删除一个目录 /// </summary> /// <param name="docDir">目录实体</param> /// <returns></returns> public int Delete(Model.DocDir docDir) { var childs = GetAllChilds(docDir.Id); return(docDirData.Delete(childs.ToArray())); }
/// <summary> /// 更新目录 /// </summary> /// <param name="docDir">目录实体</param> public int Update(Model.DocDir docDir) { return(docDirData.Update(docDir)); }
/// <summary> /// 添加一个目录 /// </summary> /// <param name="docDir">目录实体</param> /// <returns></returns> public int Add(Model.DocDir docDir) { return(docDirData.Add(docDir)); }