コード例 #1
0
 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;
     }
 }
コード例 #2
0
        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;
            }
        }
コード例 #3
0
ファイル: UserBE.cs プロジェクト: godsayyou/Mes-1
        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;
            }
        }