public bool ResetPassword(string userID, string password) { var mapper = Common.GetMapper(); UserDao userdao = new UserDao(mapper); UserPasswordDao updao = new UserPasswordDao(mapper); var user = userdao.Query(new UserQueryForm { ID = userID }).FirstOrDefault(); if (user == null) { throw new XinLuClubException(202, "用户不存在"); } var up = updao.Query(new UserPasswordQueryForm { UserName = user.Name }).FirstOrDefault(); if (up == null) { updao.Add(new UserPassword { UserName = user.Name, Password = password }); } else { updao.Update(new UserPasswordUpdateForm { Entity = new UserPassword { Password = password }, QueryForm = new UserPasswordQueryForm { UserName = user.Name }, }); } return(true); }
public LoginResult Login(string userName, string password) { var mapper = Common.GetMapper(); UserDao userdao = new UserDao(mapper); TokenDao tokendao = new TokenDao(mapper); UserPasswordDao updao = new UserPasswordDao(mapper); var ups = updao.Query(new UserPasswordQueryForm { UserName = userName, Password = password }); if (ups == null || ups.Count == 0) { throw new XinLuClubException(102, "账号或者密码错误"); } var users = userdao.Query(new UserQueryForm { Name = userName }); if (users == null || users.Count == 0) { throw new XinLuClubException(103, "账号信息不存在"); } var user = users[0]; var userid = user.ID; var tokens = tokendao.Query(new TokenQueryForm { UserID = userid }); IIDGenerator generator = IDGeneratorFactory.Create(GeneratorType.GUID); string tokenstring = generator.Generate(); Token token = null; if (tokens == null || tokens.Count == 0) { token = new Token { ExpiredTime = DateTime.Now.AddHours(expiredHours), UserID = userid, AccessToken = tokenstring, }; tokendao.Add(token); } else { token = tokens[0]; token.ExpiredTime = DateTime.Now.AddHours(expiredHours); token.AccessToken = tokenstring; tokendao.Update(new TokenUpdateForm { Entity = new Token { AccessToken = token.AccessToken, ExpiredTime = token.ExpiredTime, }, QueryForm = new TokenQueryForm { ID = token.ID, } }); } SaveMe(user); LoginResult result = new LoginResult { Token = token, User = user, }; return(result); }