public virtual YZSoft.Group.MemberCollection GetGroupMembers(HttpContext context) { YZRequest request = new YZRequest(context); int groupid = request.GetInt32("groupid"); Group.MemberCollection members; using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { members = GroupManager.GetGroupMembers(provider, cn, groupid); } } using (BPMConnection cn = new BPMConnection()) { cn.WebOpen(); for (int i = 0; i < members.Count; i++) { YZSoft.Group.Member member = members[i]; member.User = User.TryGetUser(cn, member.UID); if (member.User == null) { members.RemoveAt(i); i--; } } } return(members); }
public virtual object GetGroupAndUserPerm(HttpContext context) { YZRequest request = new YZRequest(context); int groupid = request.GetInt32("groupid"); string uid = request.GetString("uid", YZAuthHelper.LoginUserAccount); using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { YZSoft.Group.Group group = GroupManager.GetGroup(provider, cn, groupid); YZSoft.Group.Member member = GroupManager.GetGroupMember(provider, cn, groupid, uid); return(new { Group = group, Member = member, Perm = member.GroupPerm }); } } }
public virtual Group.Group CreateGroup(HttpContext context) { YZRequest request = new YZRequest(context); string groupType = request.GetString("groupType"); string FolderID = request.GetString("FolderID", null); string DocumentFolderID = request.GetString("DocumentFolderID", null); JObject jPost = request.GetPostData <JObject>(); Group.Group groupPost = jPost["data"].ToObject <Group.Group>(); BPMObjectNameCollection uids = new BPMObjectNameCollection(); if (jPost["uids"] != null) { uids = jPost["uids"].ToObject <BPMObjectNameCollection>(); } using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { Group.Group group = new Group.Group(); group.GroupType = groupType; group.Name = groupPost.Name; group.Desc = groupPost.Desc; if (!String.IsNullOrEmpty(FolderID)) { Folder folder = this.CreateGroupFolder(provider, cn, groupPost.Name, FolderID); group.FolderID = folder.FolderID; } if (!String.IsNullOrEmpty(DocumentFolderID)) { Folder folder = this.CreateGroupFolder(provider, cn, groupPost.Name, DocumentFolderID); group.DocumentFolderID = folder.FolderID; } group.Owner = YZAuthHelper.LoginUserAccount; group.CreateAt = DateTime.Now; group.ImageFileID = groupPost.ImageFileID; group.Deleted = false; GroupManager.Insert(provider, cn, group); YZSoft.Group.Member member; member = new YZSoft.Group.Member(); member.GroupID = group.GroupID; member.UID = YZAuthHelper.LoginUserAccount; member.Role = "Owner"; GroupManager.Insert(provider, cn, member); foreach (string uid in uids) { member = new YZSoft.Group.Member(); member.GroupID = group.GroupID; member.UID = uid; member.Role = "Member"; GroupManager.Insert(provider, cn, member); } return(group); } } }