No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 

69 líneas
2.4 KiB

  1. import * as React from "react";
  2. import * as HttpUtils from "utils/HttpUtils";
  3. import * as UrlUtils from "utils/ApiPathConst";
  4. import { useNavigate } from "react-router-dom";
  5. import { useDispatch } from "react-redux";
  6. import { handleLogoutFunction, handleLogin } from 'auth/index';
  7. import Loadable from 'components/Loadable';
  8. const LoadingComponent = Loadable(React.lazy(() => import('pages/extra-pages/LoadingComponent')));
  9. // ==============================|| DASHBOARD - DEFAULT ||============================== //
  10. const Index = () => {
  11. const dispatch = useDispatch()
  12. const navigate = useNavigate()
  13. React.useEffect(() => {
  14. goLogin();
  15. }, []);
  16. function goLogin(){
  17. dispatch(handleLogoutFunction());
  18. let params = new URLSearchParams(window.location.search)
  19. if(params.get("code")){
  20. HttpUtils.post({
  21. url: UrlUtils.GET_SMART_DIRECT_LOGIN,
  22. params:{
  23. code: params.get("code")
  24. },
  25. onSuccess: (responseData) => {
  26. console.log("responseData");
  27. console.log(responseData);
  28. const userData = {
  29. id: responseData.id,
  30. fullenName: responseData.name,
  31. fullchName: responseData.chName,
  32. email: responseData.email,
  33. type: responseData.type,
  34. role: responseData.role,
  35. abilities: responseData.abilities,
  36. creditor: responseData.creditor,
  37. //avatar: require('src/assets/images/users/avatar-3.png').default,
  38. }
  39. const data = { ...userData, accessToken: responseData.accessToken, refreshToken: responseData.refreshToken }
  40. dispatch(handleLogin(data))
  41. navigate('/dashboard');
  42. },
  43. onFail: (response)=>{
  44. console.log("Fail");
  45. console.log(response);
  46. window.location.assign("/iamsmart/loginFail");
  47. },
  48. onError:(error)=>{
  49. console.log(error);
  50. }
  51. });
  52. }
  53. }
  54. return (
  55. <LoadingComponent />
  56. );
  57. };
  58. export default Index;