Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 

88 linhas
3.1 KiB

  1. // material-ui
  2. import {Grid, Typography} from '@mui/material';
  3. import {useEffect, useState} from "react";
  4. import * as React from "react";
  5. import * as HttpUtils from "../../utils/HttpUtils";
  6. import {useParams} from "react-router-dom";
  7. import * as UrlUtils from "../../utils/ApiPathConst";
  8. import * as DateUtils from "../../utils/DateUtils";
  9. import Loadable from 'components/Loadable';
  10. import { lazy } from 'react';
  11. const InfoCard = Loadable(lazy(() => import('./OrganizationCard')));
  12. const LoadingComponent = Loadable(lazy(() => import('../extra-pages/LoadingComponent')));
  13. // ==============================|| DASHBOARD - DEFAULT ||============================== //
  14. const OrganizationDetailPage = () => {
  15. const params = useParams();
  16. const [formData, setFormData] = useState({})
  17. const [isLoading, setLoding] = useState(true);
  18. useEffect(()=>{
  19. console.log(formData);
  20. loadData();
  21. },[]);
  22. const loadData = ()=>{
  23. setLoding(true);
  24. if(params.id>0){
  25. HttpUtils.get({
  26. url: UrlUtils.GET_ORG_PATH+"/"+params.id,
  27. onSuccess: function(response){
  28. response.data["country"] = response.data.addressTemp?.country;
  29. response.data["district"] = response.data.addressTemp?.district;
  30. response.data["addressLine1"] = response.data.addressTemp?.addressLine1;
  31. response.data["addressLine2"] = response.data.addressTemp?.addressLine2;
  32. response.data["addressLine3"] = response.data.addressTemp?.addressLine3;
  33. response.data["phoneNumber"] = response.data.contactTel?.phoneNumber;
  34. response.data["tel_countryCode"] = response.data.contactTel?.countryCode;
  35. response.data["faxNumber"] = response.data.faxNo?.faxNumber;
  36. response.data["fax_countryCode"] = response.data.faxNo?.countryCode;
  37. response.data["brExpiryDate"] = response.data.brExpiryDate?DateUtils.dateStr(response.data.brExpiryDate): "";
  38. setFormData(response.data)
  39. }
  40. });
  41. }
  42. };
  43. useEffect(() => {
  44. setLoding(false);
  45. }, [formData]);
  46. return (
  47. isLoading ?
  48. <LoadingComponent/>
  49. :
  50. <Grid container rowSpacing={4.5} columnSpacing={2.75}>
  51. <Grid item xs={12} sx={{mb: -2.25}}>
  52. <Typography variant="h5" >Organization Details</Typography>
  53. </Grid>
  54. {/*col 1*/}
  55. <Grid item xs={12} >
  56. <Grid container>
  57. <Grid item xs={12} md={12} lg={12}>
  58. <InfoCard
  59. userData={formData}
  60. loadDataFun={loadData}
  61. id={params.id}
  62. />
  63. </Grid>
  64. </Grid>
  65. </Grid>
  66. {/*col 2*/}
  67. </Grid>
  68. );
  69. };
  70. export default OrganizationDetailPage;