// material-ui
import {
Grid,
Typography,
Stack,
Box,
Button
} from '@mui/material';
import * as UrlUtils from "utils/ApiPathConst";
import * as React from "react";
import * as HttpUtils from "utils/HttpUtils";
import * as DateUtils from "utils/DateUtils";
import { useParams } from "react-router-dom";
import { useNavigate } from "react-router-dom";
import Loadable from 'components/Loadable';
const LoadingComponent = Loadable(React.lazy(() => import('pages/extra-pages/LoadingComponent')));
const PaymentDetails = Loadable(React.lazy(() => import('./PaymentDetails')));
const DataGrid = Loadable(React.lazy(() => import('./DataGrid')));
import ForwardIcon from '@mui/icons-material/Forward';
import titleBackgroundImg from 'assets/images/dashboard/gazette-bar.png'
import {FormattedMessage,useIntl} from "react-intl";
const BackgroundHead = {
backgroundImage: `url(${titleBackgroundImg})`,
width: '100%',
height: '100%',
backgroundSize: 'contain',
backgroundRepeat: 'no-repeat',
backgroundColor: '#0C489E',
backgroundPosition: 'right'
}
// ==============================|| DASHBOARD - DEFAULT ||============================== //
const Index = () => {
const params = useParams();
const navigate = useNavigate()
const intl = useIntl();
const [responeData, setResponeData] = React.useState({});
const [transactionData, setTransactionData] = React.useState({});
const [record, setRecord] = React.useState({});
const [itemList, setItemList] = React.useState([]);
const [onReady, setOnReady] = React.useState(false);
const [onDownload, setOnDownload] = React.useState(false);
// const [detailsOrder, setDetailsOrder] = React.useState(2);
const { locale } = intl;
React.useEffect(() => {
loadForm();
// window.addEventListener('resize', handleResize)
}, []);
React.useEffect(() => {
if (Object.keys(responeData).length > 0) {
setTransactionData(responeData);
}
}, [responeData]);
React.useEffect(() => {
if (Object.keys(transactionData).length > 0) {
console.log(transactionData)
console.log(itemList)
console.log(record)
setOnReady(true);
}
}, [transactionData]);
// const handleResize = () => {
// setDetailsOrder(window.innerWidth > 1023 ? 2 : -1);
// }
const doPrint = () => {
// window.print();
setOnDownload(true)
const local = locale
// console.log(local)
HttpUtils.fileDownload({
url: UrlUtils.GEN_PAYMENT_RECEIPT+"/"+params.id+"/"+local,
onResponse:()=>{
setOnDownload(false)
},
onError:()=>{
setOnDownload(false)
}
});
};
const loadForm = () => {
if (params.id > 0) {
HttpUtils.get({
url: UrlUtils.PAYMENT_LOAD + "/" + params.id,
onSuccess: (responseData) => {
if (!responseData.data?.id) {
navigate("/paymentPage/search");
}
if(responseData.data.status==null||responseData.data.status=="INPR"){
HttpUtils.post({
url: UrlUtils.PAYMENT_RETRY_STATUS_API,
params:{
"paymentId": params.id
},
onSuccess: function(responseData2){
responseData2.data["transDateStr"] = DateUtils.dateFormat(responseData2.data.transDateTime, "DD/MM/YYYY");
responseData2.data["transTimeStr"] = DateUtils.dateFormat(responseData2.data.transDateTime, "HH:mm:ss");
setResponeData(responseData2.transactionData)
setItemList(responseData2.paymentItemList)
setRecord(responseData2.data);
},
onError: function(){
responseData.data["transDateStr"] = DateUtils.dateFormat(responseData.data.transDateTime, "DD/MM/YYYY");
responseData.data["transTimeStr"] = DateUtils.dateFormat(responseData.data.transDateTime, "HH:mm:ss");
setResponeData(responseData)
}
});
}else{
responseData.data["transDateStr"] = DateUtils.dateFormat(responseData.data.transDateTime, "DD/MM/YYYY");
responseData.data["transTimeStr"] = DateUtils.dateFormat(responseData.data.transDateTime, "HH:mm:ss");
setResponeData(responseData)
setItemList(responseData.paymentItemList)
setRecord(responseData.data);
}
}
});
}
}
return (
!onReady ?