diff --git a/src/pages/DemandNote/Search_Public/DataGrid.js b/src/pages/DemandNote/Search_Public/DataGrid.js
index 2a3f080..76dd4f5 100644
--- a/src/pages/DemandNote/Search_Public/DataGrid.js
+++ b/src/pages/DemandNote/Search_Public/DataGrid.js
@@ -51,7 +51,7 @@ export default function SearchDemandNote({ recordList }) {
headerName: '狀態',
width: 175,
renderCell: (params) => {
- return [StatusUtils.getStatus_Eng(params)]
+ return [StatusUtils.getStatus_Cht(params)]
},
},
{
diff --git a/src/pages/Organization/DetailPage/CreditorHistoryTable.js b/src/pages/Organization/DetailPage/CreditorHistoryTable.js
new file mode 100644
index 0000000..ae2b301
--- /dev/null
+++ b/src/pages/Organization/DetailPage/CreditorHistoryTable.js
@@ -0,0 +1,53 @@
+// material-ui
+import * as React from 'react';
+import { FiDataGrid } from "components/FiDataGrid";
+import { useEffect } from "react";
+import * as DateUtils from "utils/DateUtils";
+// ==============================|| EVENT TABLE ||============================== //
+
+export default function CreditorHistoryTable({ recordList }) {
+ const [rows, setRows] = React.useState(recordList);
+
+ useEffect(() => {
+ setRows(recordList);
+ }, [recordList]);
+
+ const columns = [
+ {
+ id: 'actionType',
+ field: 'actionType',
+ headerName: 'Action',
+ flex: 2
+ },
+ {
+ id: 'modified',
+ field: 'modified',
+ headerName: 'Datetime',
+ flex: 1,
+ renderCell: (params) => {
+ return DateUtils.datetimeStr(params.value);
+ }
+ },
+ {
+ id: 'modifiedByName',
+ field: 'modifiedByName',
+ headerName: 'Modified By',
+ width: 200,
+ },
+
+ ];
+
+ return (
+
+
+
+ );
+}
diff --git a/src/pages/Organization/DetailPage/OrganizationCard.js b/src/pages/Organization/DetailPage/OrganizationCard.js
index 15527aa..1b9c582 100644
--- a/src/pages/Organization/DetailPage/OrganizationCard.js
+++ b/src/pages/Organization/DetailPage/OrganizationCard.js
@@ -1,6 +1,7 @@
// material-ui
import {
- Grid, Button, Checkbox, FormControlLabel, Typography
+ Grid, Button, Checkbox, FormControlLabel, Typography,
+ Dialog, DialogTitle, DialogContent, DialogActions,
} from '@mui/material';
// import { FormControlLabel } from '@material-ui/core';
import MainCard from "../../../components/MainCard";
@@ -22,6 +23,9 @@ import { notifySaveSuccess } from 'utils/CommonFunction';
const OrganizationCard = ({ userData, loadDataFun, id }) => {
+ 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);
@@ -93,7 +97,7 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => {
addressLine2: vaule.addressLine2,
addressLine3: vaule.addressLine3,
},
- creditor: vaule.creditor,
+ //creditor: vaule.creditor,
},
onSuccess: function () {
notifySaveSuccess()
@@ -125,6 +129,26 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => {
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 (
{
Edit
+
+
+
+
+
+
>
}
@@ -212,7 +264,7 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => {
:
-
+
Organisation Details
@@ -233,7 +285,8 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => {
onChange={() => {
formik.setFieldValue("creditor", !formik.values.creditor);
}}
- disabled={!editMode && !createMode}
+ disabled={true}
+ //disabled={!editMode && !createMode}
/>
@@ -334,6 +387,30 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => {
}
+
+
+
+
+
+
);
};
diff --git a/src/pages/Organization/DetailPage/index.js b/src/pages/Organization/DetailPage/index.js
index ad864a9..849b6a8 100644
--- a/src/pages/Organization/DetailPage/index.js
+++ b/src/pages/Organization/DetailPage/index.js
@@ -1,18 +1,17 @@
// material-ui
import { Grid, Typography, Stack, Box, Button } from '@mui/material';
-import { useEffect, useState } from "react";
import * as React from "react";
-import * as HttpUtils from "../../../utils/HttpUtils";
-import { useParams } from "react-router-dom";
-import * as UrlUtils from "../../../utils/ApiPathConst";
-import * as DateUtils from "../../../utils/DateUtils";
+import * as HttpUtils from "utils/HttpUtils";
+import * as UrlUtils from "utils/ApiPathConst";
+import * as DateUtils from "utils/DateUtils";
import Loadable from 'components/Loadable';
-import { lazy } from 'react';
-const InfoCard = Loadable(lazy(() => import('./OrganizationCard')));
-const LoadingComponent = Loadable(lazy(() => import('../../extra-pages/LoadingComponent')));
+const InfoCard = Loadable(React.lazy(() => import('./OrganizationCard')));
+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 } from 'react-router-dom';
+import { useNavigate, useParams } from 'react-router-dom';
import titleBackgroundImg from 'assets/images/dashboard/gazette-bar.png'
const BackgroundHead = {
@@ -30,11 +29,12 @@ const BackgroundHead = {
const OrganizationDetailPage = () => {
const params = useParams();
- const [formData, setFormData] = useState({})
- const [isLoading, setLoding] = useState(true);
+ const [formData, setFormData] = React.useState({})
+ const [list, setList] = React.useState([])
+ const [isLoading, setLoding] = React.useState(true);
const navigate = useNavigate();
- useEffect(() => {
+ React.useEffect(() => {
console.log(formData);
loadData();
}, []);
@@ -59,13 +59,14 @@ const OrganizationDetailPage = () => {
response.data["brExpiryDate"] = response.data.brExpiryDate ? DateUtils.dateStr(response.data.brExpiryDate) : "";
setFormData(response.data)
+ setList(response.historyList)
}
});
}
};
- useEffect(() => {
+ React.useEffect(() => {
setLoding(false);
}, [formData]);
@@ -99,6 +100,19 @@ const OrganizationDetailPage = () => {
+
+
+
+
+
+
+
+
+
{/*col 2*/}
diff --git a/src/pages/Organization/SearchPage/OrganizationSearchForm.js b/src/pages/Organization/SearchPage/OrganizationSearchForm.js
index 3f03328..5c1f317 100644
--- a/src/pages/Organization/SearchPage/OrganizationSearchForm.js
+++ b/src/pages/Organization/SearchPage/OrganizationSearchForm.js
@@ -3,17 +3,18 @@ import {
Button,
CardContent,
Grid, TextField,
- Typography
+ Typography,
+ Checkbox, FormControlLabel,
} from '@mui/material';
import MainCard from "../../../components/MainCard";
-import {useForm} from "react-hook-form";
+import { useForm } from "react-hook-form";
-import { useState} from "react";
+import { useState } from "react";
import * as React from "react";
// ==============================|| DASHBOARD - DEFAULT ||============================== //
-const OrganizationSearchForm = ({applySearch}) => {
+const OrganizationSearchForm = ({ applySearch }) => {
const [type, setType] = useState([]);
@@ -22,7 +23,7 @@ const OrganizationSearchForm = ({applySearch}) => {
let typeArray = [];
- for(let i =0; i < type.length; i++){
+ for (let i = 0; i < type.length; i++) {
typeArray.push(type[i].label);
}
@@ -30,19 +31,20 @@ const OrganizationSearchForm = ({applySearch}) => {
brNo: data.brNo,
enCompanyName: data.enCompanyName,
chCompanyName: data.chCompanyName,
+ searchCreditor: data.searchCreditor
};
applySearch(temp);
};
- function resetForm(){
+ function resetForm() {
setType([]);
reset();
}
return (
+ border={false}
+ content={false}>
diff --git a/src/pages/Organization/SearchPage/OrganizationTable.js b/src/pages/Organization/SearchPage/OrganizationTable.js
index 4dd7420..73de8a0 100644
--- a/src/pages/Organization/SearchPage/OrganizationTable.js
+++ b/src/pages/Organization/SearchPage/OrganizationTable.js
@@ -76,12 +76,21 @@ export default function OrganizationTable({ recordList }) {
{
id: 'brExpiryDate',
field: 'brExpiryDate',
- headerName: 'Expiry Date',
+ headerName: 'BR Expiry Date',
flex: 1,
valueGetter: (params) => {
return DateUtils.dateStr(params?.value);
}
},
+ {
+ id: 'creditor',
+ field: 'creditor',
+ headerName: 'Creditor',
+ width: 100,
+ valueGetter: (params) => {
+ return params?.value?"Yes":"";
+ }
+ },
];
function handleRowDoubleClick(params) {
diff --git a/src/utils/ApiPathConst.js b/src/utils/ApiPathConst.js
index 4f9fd6e..5e4c319 100644
--- a/src/utils/ApiPathConst.js
+++ b/src/utils/ApiPathConst.js
@@ -26,6 +26,9 @@ export const GET_ORG_PATH = apiPath+'/org';
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';
+export const GET_ORG_CHECK_CREDITOR = apiPath+'/org/check-creditor';
+export const GET_ORG_MARK_AS_CREDITOR = apiPath+'/org/mark-as-creditor';
+export const GET_ORG_MARK_AS_NON_CREDITOR = apiPath+'/org/mark-as-non-creditor';