public IActionResult Post([FromBody] LoginDto userDto) { var login = Mapper.Map <Login>(userDto); if (_loginRepository.VerifyLogin(login)) { var logininfo = _loginRepository.GetLoginInfo(userDto.UserName); _unitOfWork.ChangeDatabase(logininfo.Company); var userinfo = _userRepository.GetUserInfo(userDto.UserName); if (userinfo == null) { return(StatusCode(500, "用户信息缺失")); } var tokeninfo = Mapper.Map <Login, LoginCreateDto>(logininfo); Mapper.Map(userinfo, tokeninfo); try { return(new ObjectResult(TokenOperator.GenerateToken(tokeninfo))); } catch (Exception e) { return(StatusCode(500, "生成令牌时出错: " + e.Message)); } } return(BadRequest()); }
public IActionResult PostEncrypt([FromBody] EncryptedString encryptedString) { LoginDto loginDto; try { string origintext = Encryptor.DecryptString_Aes(encryptedString.ciphertext, Encryptor.key); loginDto = JsonConvert.DeserializeObject <LoginDto>(origintext); } catch (Exception e) { return(BadRequest(e)); } if (loginDto != null) { Login login = Mapper.Map <Login>(loginDto); if (_loginRepository.VerifyLogin(login)) { var logininfo = _loginRepository.GetLoginInfo(loginDto.UserName); _unitOfWork.ChangeDatabase(logininfo.Company); var userinfo = _userRepository.GetUserInfo(loginDto.UserName); if (userinfo == null) { return(StatusCode(500, "用户信息缺失")); } var tokeninfo = Mapper.Map <Login, LoginCreateDto>(logininfo); Mapper.Map(userinfo, tokeninfo); try { return(new ObjectResult(TokenOperator.GenerateToken(tokeninfo))); } catch (Exception e) { return(StatusCode(500, "生成令牌时出错:" + e.Message)); } } } return(BadRequest()); }