Ejemplo n.º 1
0
        /// <summary>
        /// Saas后台管理登录
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public async Task <(string Error, User User)> SaasLoginAsync(string account, string password, string ip = "")
        {
            User user = await UserRep.FindSingleAsync(o => o.Account == account);

            if (user == null)
            {
                return($"帐号不存在", null);
            }
            if (user.State == 0)
            {
                return($"帐号禁止登录", null);
            }
            if (user.Password != password)
            {
                return($"密码不正确", null);
            }
            CurrentUser curUser = new CurrentUser
            {
                Id             = user.Id,
                RealName       = user.Account,
                LoginIPAddress = ip
            };
            await OperateLogApp.CustomLogAsync(curUser, "用户登录", user.RealName + "进行了登录操作");

            await UserRep.UpdateAsync(o => o.Id == user.Id, o => new User()
            {
                LastLoginTime = DateTime.Now
            });

            return(string.Empty, user);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 删除(假删除)
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="agentId"></param>
        /// <param name="optId"></param>
        /// <returns>-1: 失败 , 0:不存在 ,1:成功</returns>
        public async Task <(string Error, User User)> DeleteAsync(long Id, long agentId, long optId)
        {
            User user = await UserRep.FindSingleAsync(o => o.Id == Id);

            if (user == null || user.DeleteMark == true)
            {
                return("帐号不存在", null);
            }
            user.DeleteMark   = true;
            user.DeleteTime   = DateTime.Now;
            user.DeleteUserId = optId;
            await UserRep.UpdateAsync(user);

            return(string.Empty, user);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 重置密码
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="newPassword"></param>
        /// <param name="agentId"></param>
        /// <returns></returns>
        public async Task <R> ResetPasswordAsync(long Id, string password, long agentId, CurrentUser curUser)
        {
            User user = await UserRep.FindSingleAsync(o => o.Id == Id);

            if (user == null)
            {
                return(R.Err("1001", $"帐号({Id})不存在"));
            }
            password = MD5Encrypt.MD5(password);
            await UserRep.UpdateAsync(o => o.Id == Id, o => new User()
            {
                Password = password
            });

            return(R.Suc());
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 修改登录状态
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="agentId"></param>
        /// <param name="curUser"></param>
        /// <returns></returns>
        public async Task <R> updatestatus(long Id, CurrentUser curUser)
        {
            var entry = await GetAsync(Id);

            if (entry == null)
            {
                return(R.Err(msg: "该用户不存在"));
            }
            int s = 1;

            if (entry.State == 1)
            {
                s = 0;
            }
            await UserRep.UpdateAsync(u => u.Id == Id, u => new User {
                State = s
            });

            return(R.Suc());
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 修改密码
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="password">旧密码</param>
        /// <param name="newPassword">新密码</param>
        /// <returns></returns>
        public async Task <R> ChangePasswordAsync(long Id, string password, string newPassword, long agentId, CurrentUser curUser)
        {
            User user = await UserRep.FindSingleAsync(o => o.Id == Id);

            if (user == null || user.DeleteMark == true)
            {
                return(R.Err("1001", $"帐号({Id})不存在"));
            }
            if (user.Password != MD5Encrypt.MD5(password))
            {
                return(R.Err("1003", $"原密码不正确"));
            }
            newPassword = MD5Encrypt.MD5(newPassword);
            await UserRep.UpdateAsync(o => o.Id == Id, o => new User()
            {
                Password = newPassword
            });

            return(R.Suc());
        }
Ejemplo n.º 6
0
        /// <summary>
        ///  更新用户信息
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="curUser"></param>
        /// <returns></returns>
        public async Task <R> UpdateUserInfoAsync(User entity, CurrentUser curUser)
        {
            await UserRep.UpdateAsync(entity);

            return(R.Suc());
        }