public void DeleteUser2Role(Sender sender, User2Role user2Role) { try { using (ObjectProxy op = new ObjectProxy(true)) { op.DeleteUser2RoleByUserID_RoleID(user2Role.UserID, user2Role.RoleID); op.CommitTransaction(); } } catch (Exception ex) { PLogger.LogError(ex); throw ex; } }
public void SaveRole(Sender sender, SaveRoleArgs args) { try { if (string.IsNullOrEmpty(args.Role.RoleName)) { throw new Exception(string.Format("角色名称:{0}命名无效,可能存在特殊字符。", args.Role.RoleName)); } if (RoleIsDuplicated(sender, args.Role)) { throw new Exception(string.Format("角色名称:{0}已存在,请重新输入。", args.Role.RoleName)); } using (ObjectProxy op = new ObjectProxy(true)) { Role role = new Role(); role.RoleID = args.Role.RoleID; if (op.LoadRoleByRoleID(role) == 0) { role = null; } if (role == null) { args.Role.Created = DateTime.Now; args.Role.CreatedBy = sender.UserCode + "." + sender.UserName; args.Role.Modified = args.Role.Created; args.Role.ModifiedBy = args.Role.CreatedBy; op.InsertRole(args.Role); } else { args.Role.Modified = DateTime.Now; args.Role.ModifiedBy = sender.UserCode + "." + sender.UserName; op.UpdateRoleByRoleID(args.Role); } if (args.UserIDs != null) { op.DeleteUser2RolesByRoleID(args.Role.RoleID); foreach (Guid userID in args.UserIDs) { User2Role ug = new User2Role(); ug.UserID = userID; ug.RoleID = args.Role.RoleID; op.InsertUser2Role(ug); } } if (args.PrivilegeItemIDs != null) { op.DeleteRole2PrivilegeItemsByRoleID(args.Role.RoleID); foreach (Guid privilege in args.PrivilegeItemIDs) { Role2PrivilegeItem rp = new Role2PrivilegeItem(); rp.RoleID = args.Role.RoleID; rp.PrivilegeItemID = privilege; op.InsertRole2PrivilegeItem(rp); } } op.CommitTransaction(); } } catch (Exception ex) { PLogger.LogError(ex); throw ex; } }
public void SaveUser(Sender sender, SaveUserArgs args) { try { if (string.IsNullOrEmpty(args.User.UserCode)) { throw new Exception(string.Format("用户编号:{0}命名无效,可能存在特殊字符。", args.User.UserCode)); } if (string.IsNullOrEmpty(args.User.UserName)) { throw new Exception(string.Format("用户名称:{0}命名无效,可能存在特殊字符。", args.User.UserName)); } if (UserIsDuplicated(sender, args.User)) { throw new Exception(string.Format("用户编号:{0}已存在,请重新输入。", args.User.UserCode)); } if (UserMobileIsDuplicated(sender, args.User)) { throw new Exception(string.Format("用户手机号:{0}已存在,请重新输入。", args.User.Mobile)); } using (ObjectProxy op = new ObjectProxy(true)) { User user = new User(); user.UserID = args.User.UserID; if (op.LoadUserByUserID(user) == 0) { user = null; } if (user == null) { args.User.Created = DateTime.Now; args.User.CreatedBy = sender.UserCode + "." + sender.UserName; args.User.Modified = args.User.Created; args.User.ModifiedBy = args.User.CreatedBy; op.InsertUser(args.User); UserPassword up = new UserPassword(); up.UserID = args.User.UserID; up.Password = args.User.Password; up.Modified = DateTime.Now; up.ModifiedBy = sender.UserCode + "." + sender.UserName; op.InsertUserPassword(up); } else { args.User.Modified = DateTime.Now; args.User.ModifiedBy = sender.UserCode + "." + sender.UserName; op.UpdateUserByUserID(args.User); if (args.RoleIDs != null) { op.DeleteUser2RolesByUserID(args.User.UserID); } if (args.User.Password != user.Password) { UserPassword up = new UserPassword(); up.UserID = args.User.UserID; up.Password = args.User.Password; up.Modified = DateTime.Now; up.ModifiedBy = sender.UserCode + "." + sender.UserName; op.InsertUserPassword(up); } } if (args.RoleIDs != null) { foreach (Guid roleID in args.RoleIDs) { User2Role ur = new User2Role(); ur.UserID = args.User.UserID; ur.RoleID = roleID; op.InsertUser2Role(ur); } } op.CommitTransaction(); } } catch (Exception ex) { PLogger.LogError(ex); throw ex; } }