diff --git a/src/layout/MainLayout/Header/index.js b/src/layout/MainLayout/Header/index.js
index 5d33f9a..1ba5533 100644
--- a/src/layout/MainLayout/Header/index.js
+++ b/src/layout/MainLayout/Header/index.js
@@ -212,6 +212,14 @@ function Header(props) {
+
+
+
+ {/* */}
+ Organisation Profile
+
+
+
>
:
diff --git a/src/pages/Organization/DetailPage/OrganizationPubCard.js b/src/pages/Organization/DetailPage/OrganizationPubCard.js
new file mode 100644
index 0000000..b02e724
--- /dev/null
+++ b/src/pages/Organization/DetailPage/OrganizationPubCard.js
@@ -0,0 +1,425 @@
+// material-ui
+import {
+ Grid, Button, Checkbox, FormControlLabel, Typography,
+ Dialog, DialogTitle, DialogContent, DialogActions,
+} from '@mui/material';
+// import { FormControlLabel } from '@material-ui/core';
+import MainCard from "../../../components/MainCard";
+import * as React from "react";
+import { useFormik } from 'formik';
+import * as yup from 'yup';
+import { useEffect, useState } from "react";
+import * as HttpUtils from '../../../utils/HttpUtils';
+import * as UrlUtils from "../../../utils/ApiPathConst";
+import * as FieldUtils from "../../../utils/FieldUtils";
+import * as ComboData from "../../../utils/ComboData";
+const LoadingComponent = Loadable(lazy(() => import('../../extra-pages/LoadingComponent')));
+import Loadable from 'components/Loadable';
+import { lazy } from 'react';
+import { notifySaveSuccess } from 'utils/CommonFunction';
+import {useIntl} from "react-intl";
+
+// ==============================|| DASHBOARD - DEFAULT ||============================== //
+
+
+const OrganizationPubCard = ({ userData, loadDataFun, id, setEditModeFun }) => {
+ const intl = useIntl();
+ const [creditorConfirmPopUp, setCreditorConfirmPopUp] = React.useState(false);
+ const [nonCreditorConfirmPopUp, setNonCreditorConfirmPopUp] = React.useState(false);
+
+ const [currentUserData, setCurrentUserData] = useState({});
+ const [editMode, setEditMode] = useState(false);
+ const [createMode, setCreateMode] = useState(false);
+ const [onReady, setOnReady] = useState(false);
+
+ useEffect(() => {
+ //if state data are ready and assign to different field
+ // console.log(currentApplicationDetailData)
+ if (Object.keys(currentUserData).length > 0) {
+ setOnReady(true);
+ }
+ }, [currentUserData]);
+
+ function displayErrorMsg(errorMsg) {
+ return {errorMsg}
+ }
+
+ const formik = useFormik({
+ enableReinitialize: true,
+ initialValues: currentUserData,
+ validationSchema: yup.object().shape({
+ enCompanyName: yup.string().max(255).required(displayErrorMsg(intl.formatMessage({id: 'userRequireEnglishName'}))),
+ chCompanyName: yup.string().max(255, displayErrorMsg(intl.formatMessage({id: 'userRequireChineseName'}))).nullable(),
+ addressLine1: yup.string().max(255).required(displayErrorMsg(intl.formatMessage({id: 'validateAddressLine1'}))),
+ addressLine2: yup.string().max(255, displayErrorMsg(intl.formatMessage({id: 'noMoreThen255Words'}))),
+ addressLine3: yup.string().max(255, displayErrorMsg(intl.formatMessage({id: 'noMoreThen255Words'}))),
+ fax_countryCode: yup.string().min(3, displayErrorMsg(intl.formatMessage({id: 'requireDialingCode'}))).nullable(),
+ tel_countryCode: yup.string().min(3, displayErrorMsg(intl.formatMessage({id: 'requireDialingCode'}))),
+ phoneNumber: yup.string().min(8, displayErrorMsg(intl.formatMessage({id: 'requiredValidNumber'}))).required(displayErrorMsg(intl.formatMessage({id: 'requireContactNumber'}))),
+ faxNumber: yup.string().min(8, displayErrorMsg(intl.formatMessage({id: 'require8Number'}))).nullable(),
+ brExpiryDate: yup.string().min(8).required(displayErrorMsg(intl.formatMessage({id: 'pleaseFillInBusinessRegCertValidityDate'}))),
+ brNo: yup.string().required(displayErrorMsg(intl.formatMessage({id: 'pleaseFillInBusinessRegCertNumber'}))).test('checkBrNoFormat', displayErrorMsg(displayErrorMsg(intl.formatMessage({id: 'pleaseFillInValidBusinessRegCertNumber'}))), function (value) {
+ var brNo_pattern = /[0-9]{8}/
+ if (value !== undefined) {
+ if (value.match(brNo_pattern)) {
+ return true
+ } else {
+ return false
+ }
+ }
+ }),
+ }),
+ onSubmit: vaule => {
+ console.log(vaule)
+ HttpUtils.post({
+ url: UrlUtils.POST_ORG_SAVE_PATH,
+ params: {
+ id: id > 0 ? id : null,
+ enCompanyName: vaule.enCompanyName,
+ chCompanyName: vaule.chCompanyName,
+ brNo: vaule.brNo,
+ brExpiryDate: vaule.brExpiryDate,
+ enCompanyNameTemp: vaule.enCompanyNameTemp,
+ chCompanyNameTemp: vaule.chCompanyNameTemp,
+ brExpiryDateTemp: vaule.brExpiryDateTemp,
+ contactPerson: vaule.contactPerson,
+ contactTel: {
+ countryCode: vaule.tel_countryCode,
+ phoneNumber: vaule.phoneNumber
+ },
+ faxNo: {
+ countryCode: vaule.fax_countryCode,
+ faxNumber: vaule.faxNumber
+ },
+ addressTemp: {
+ country: vaule.country,
+ district: vaule.district,
+ addressLine1: vaule.addressLine1,
+ addressLine2: vaule.addressLine2,
+ addressLine3: vaule.addressLine3,
+ },
+ //creditor: vaule.creditor,
+ },
+ onSuccess: function () {
+ notifySaveSuccess()
+ loadDataFun();
+ setEditMode(false);
+ }
+ });
+ }
+ });
+
+ useEffect(()=>{
+ setEditModeFun(editMode);
+ },[editMode]);
+
+ useEffect(() => {
+ if (Object.keys(userData).length > 0) {
+ setCreateMode(id <= 0);
+ setEditMode(id <= 0);
+ setCurrentUserData(userData);
+ }
+ }, [userData]);
+
+ // useEffect(() => {
+ // if (Object.keys(userData).length > 0) {
+ // if(userData.creditor === undefined||userData.creditor === null){
+ // userData.creditor = false
+ // }
+ // setCurrentUserData(userData);
+ // }
+ // }, []);
+
+ const onEditClick = () => {
+ setEditMode(true);
+ };
+
+ const markAsCreditor = () => {
+ setCreditorConfirmPopUp(false);
+ HttpUtils.get({
+ url: UrlUtils.GET_ORG_MARK_AS_CREDITOR + "/" + id,
+ onSuccess: () => {
+ loadDataFun();
+ }
+ });
+ }
+
+ const markAsNonCreditor = () => {
+ setNonCreditorConfirmPopUp(false);
+ HttpUtils.get({
+ url: UrlUtils.GET_ORG_MARK_AS_NON_CREDITOR + "/" + id,
+ onSuccess: () => {
+ loadDataFun();
+ }
+ });
+ }
+
+ return (
+
+
+
+
+
+
+
+
+
+
+ );
+};
+
+export default OrganizationPubCard;
diff --git a/src/pages/Organization/DetailPage/index.js b/src/pages/Organization/DetailPage/index.js
index 546155e..f2b2405 100644
--- a/src/pages/Organization/DetailPage/index.js
+++ b/src/pages/Organization/DetailPage/index.js
@@ -7,14 +7,21 @@ import * as DateUtils from "utils/DateUtils";
import Loadable from 'components/Loadable';
const InfoCard = Loadable(React.lazy(() => import('./OrganizationCard')));
+const InfoPubCard = Loadable(React.lazy(() => import('./OrganizationPubCard')));
const Table = Loadable(React.lazy(() => import('./CreditorHistoryTable')));
const LoadingComponent = Loadable(React.lazy(() => import('pages/extra-pages/LoadingComponent')));
import ForwardIcon from '@mui/icons-material/Forward';
import { useNavigate, useParams } from 'react-router-dom';
import titleBackgroundImg from 'assets/images/dashboard/gazette-bar.png'
-import {getObjectByValue} from "../../../utils/CommonFunction";
-import * as ComboData from "../../../utils/ComboData";
+import {getObjectByValue} from "utils/CommonFunction";
+import * as ComboData from "utils/ComboData";
+import {
+ isGLDLoggedIn,
+ isINDLoggedIn,
+ isORGLoggedIn,
+ isPrimaryLoggedIn
+} from "utils/Utils";
const BackgroundHead = {
backgroundImage: `url(${titleBackgroundImg})`,
@@ -39,32 +46,63 @@ const OrganizationDetailPage = () => {
React.useEffect(() => {
console.log(formData);
+ if (isINDLoggedIn()||isORGLoggedIn()&&!isPrimaryLoggedIn()){
+ navigate('/dashboard');
+ }else{
+ loadData();
+ }
loadData();
}, []);
const loadData = () => {
setLoding(true);
- if (params.id > 0) {
- HttpUtils.get({
- url: UrlUtils.GET_ORG_PATH + "/" + params.id,
- onSuccess: function (response) {
- response.data["country"] = getObjectByValue(ComboData.country, "key", response.data.address?.country);
- response.data["district"] = getObjectByValue(ComboData.district, "key", response.data.address?.district);
- response.data["addressLine1"] = response.data.addressTemp?.addressLine1;
- response.data["addressLine2"] = response.data.addressTemp?.addressLine2;
- response.data["addressLine3"] = response.data.addressTemp?.addressLine3;
-
- response.data["phoneNumber"] = response.data.contactTel?.phoneNumber;
- response.data["tel_countryCode"] = response.data.contactTel?.countryCode;
-
- response.data["faxNumber"] = response.data.faxNo?.faxNumber;
- response.data["fax_countryCode"] = response.data.faxNo?.countryCode;
-
- response.data["brExpiryDate"] = response.data.brExpiryDate ? DateUtils.dateStr(response.data.brExpiryDate) : "";
- setFormData(response.data)
- setList(response.historyList)
- }
- });
+ if(isGLDLoggedIn()){
+ if (params.id > 0) {
+ HttpUtils.get({
+ url: UrlUtils.GET_ORG_PATH + "/" + params.id,
+ onSuccess: function (response) {
+ response.data["country"] = getObjectByValue(ComboData.country, "key", response.data.address?.country);
+ response.data["district"] = getObjectByValue(ComboData.district, "key", response.data.address?.district);
+ response.data["addressLine1"] = response.data.addressTemp?.addressLine1;
+ response.data["addressLine2"] = response.data.addressTemp?.addressLine2;
+ response.data["addressLine3"] = response.data.addressTemp?.addressLine3;
+
+ response.data["phoneNumber"] = response.data.contactTel?.phoneNumber;
+ response.data["tel_countryCode"] = response.data.contactTel?.countryCode;
+
+ response.data["faxNumber"] = response.data.faxNo?.faxNumber;
+ response.data["fax_countryCode"] = response.data.faxNo?.countryCode;
+
+ response.data["brExpiryDate"] = response.data.brExpiryDate ? DateUtils.dateStr(response.data.brExpiryDate) : "";
+ setFormData(response.data)
+ setList(response.historyList)
+ }
+ });
+ }
+ }
+ if(isPrimaryLoggedIn()){
+ if (params.id > 0) {
+ HttpUtils.get({
+ url: UrlUtils.GET_PUB_ORG_PATH,
+ onSuccess: function (response) {
+ response.data["country"] = getObjectByValue(ComboData.country, "key", response.data.address?.country);
+ response.data["district"] = getObjectByValue(ComboData.district, "key", response.data.address?.district);
+ response.data["addressLine1"] = response.data.addressTemp?.addressLine1;
+ response.data["addressLine2"] = response.data.addressTemp?.addressLine2;
+ response.data["addressLine3"] = response.data.addressTemp?.addressLine3;
+
+ response.data["phoneNumber"] = response.data.contactTel?.phoneNumber;
+ response.data["tel_countryCode"] = response.data.contactTel?.countryCode;
+
+ response.data["faxNumber"] = response.data.faxNo?.faxNumber;
+ response.data["fax_countryCode"] = response.data.faxNo?.countryCode;
+
+ response.data["brExpiryDate"] = response.data.brExpiryDate ? DateUtils.dateStr(response.data.brExpiryDate) : "";
+ setFormData(response.data)
+ setList(response.historyList)
+ }
+ });
+ }
}
};
@@ -95,28 +133,40 @@ const OrganizationDetailPage = () => {
-
+ {isGLDLoggedIn?
+
+ :
+
+ }
-
-
-
-
-
+ {isGLDLoggedIn()?
+
+
+
+
+
+
-
-
-
+
+
+ : null
+ }
{/*col 2*/}
diff --git a/src/pages/User/DetailsPage_Organization/index.js b/src/pages/User/DetailsPage_Organization/index.js
index 4126cae..f0ebba8 100644
--- a/src/pages/User/DetailsPage_Organization/index.js
+++ b/src/pages/User/DetailsPage_Organization/index.js
@@ -99,7 +99,7 @@ const UserMaintainPage_Organization = () => {
onSuccess: function (response) {
// console.log(response)
if (response.data.orgId != null) {
- console.log("1a")
+ // console.log("1a")
response.data["addressBus"] = response.orgDetail.data["addressTemp"];
response.data["contactTel"] = response.orgDetail.data["contactTel"];
response.data["faxNo"] = response.orgDetail.data["faxNo"];
@@ -110,14 +110,14 @@ const UserMaintainPage_Organization = () => {
response.data["chCompanyName"] = response.orgDetail.data.chCompanyName;
response.data["chCompanyName"] = response.orgDetail.data.chCompanyName;
} else {
- console.log("1b")
+ // console.log("1b")
response.data["addressBus"] = JSON.parse(response.data["addressBus"]);
response.data["contactTel"] = JSON.parse(response.data["contactTel"]);
response.data["faxNo"] = JSON.parse(response.data["faxNo"]);
response.data["brExpiryDate"] = response.data.brExpiryDate ? DateUtils.dateStr(response.data.brExpiryDate) : "";
}
- console.log("2")
- console.log(response.data)
+ // console.log("2")
+ // console.log(response.data)
let createDate = DateUtils.datetimeStr(response.data.created);
let modifiedBy = DateUtils.datetimeStr(response.data.modified) + ", " + response.data.modifiedBy;
@@ -142,8 +142,8 @@ const UserMaintainPage_Organization = () => {
//response.data["orgId"] = response.data.brExpiryDate?DateUtils.dateStr(response.data.brExpiryDate):"";
- console.log("3")
- console.log(response.data)
+ // console.log("3")
+ // console.log(response.data)
setUserData(response.data);
setOrgData(response.orgList);
}
@@ -153,7 +153,7 @@ const UserMaintainPage_Organization = () => {
HttpUtils.get({
url: `${UrlUtils.GET_PUB_ORG_USER_PATH}`,
onSuccess: function (response) {
- console.log(response)
+ // console.log(response)
response.data["contactTel"] = JSON.parse(response.data["contactTel"]);
response.data["primaryUser"] = response.data.primaryUser?isPrimaryLocale:notPrimaryLocale;
diff --git a/src/routes/PublicUserRoutes.js b/src/routes/PublicUserRoutes.js
index 0c87a62..508991d 100644
--- a/src/routes/PublicUserRoutes.js
+++ b/src/routes/PublicUserRoutes.js
@@ -25,6 +25,7 @@ const PaymentDetails_Public = Loadable(lazy(() => import('pages/Payment/Details_
const DemandNote_Public = Loadable(lazy(() => import('pages/DemandNote/Search_Public')));
const UserMaintainPage_Individual = Loadable(lazy(() => import('pages/User/DetailsPage_Individual')));
const UserMaintainPage_Organization = Loadable(lazy(() => import('pages/User/DetailsPage_Organization')));
+const OrganizationDetailPage = Loadable(lazy(() => import('pages/Organization/DetailPage')));
// ==============================|| MAIN ROUTING ||============================== //
@@ -115,6 +116,10 @@ const PublicDashboard = {
path: '/orgUser',
element:
},
+ {
+ path: '/org',
+ element:
+ },
]
},
]
diff --git a/src/utils/ApiPathConst.js b/src/utils/ApiPathConst.js
index a0a8170..a6a03b8 100644
--- a/src/utils/ApiPathConst.js
+++ b/src/utils/ApiPathConst.js
@@ -29,6 +29,7 @@ export const GET_PUB_ORG_USER_PATH = apiPath+'/user/pubOrg';
export const POST_PUB_ORG_USER = apiPath+'/user/pubOrg';
export const GET_ORG_PATH = apiPath+'/org';
+export const GET_PUB_ORG_PATH = apiPath+'/org/pub';
export const GET_ORG_FROM_USER_PATH = apiPath+'/org/from-user';
export const POST_ORG_SAVE_PATH = apiPath+'/org/save';
export const GET_ORG_COMBO = apiPath+'/org/combo';