bug fixed

This commit is contained in:
Malini 2025-11-26 18:16:53 +05:30
parent 398652e213
commit 49b14861aa
2 changed files with 23 additions and 22 deletions

View File

@ -36,7 +36,12 @@ const SubmissionTable = ({ selectedQuarter, selectedYear }) => {
const response = await apiClient.get(`/admin_dashboard?${params.toString()}`);
const result = response?.data;
if (result?.status === 'success') {
setData(result.recent_submissions || []);
// Map the data to include the updated_at as reviewerOn
const mappedData = (result.recent_submissions || []).map(item => ({
...item,
reviewerOn: item.updated_at || null
}));
setData(mappedData);
} else {
console.error('Error: Invalid response', result);
}
@ -177,7 +182,6 @@ const handleApproveConfirm = async () => {
toast.success('Submission approved successfully');
const currentUser = JSON.parse(sessionStorage.getItem("user_profile"))?.name || 'Admin';
const currentTime = new Date().toISOString();
const updatedAt = response?.data?.updated_at || new Date().toISOString();
// Update the status of the current item in the data array
@ -188,7 +192,8 @@ const handleApproveConfirm = async () => {
...item,
status: 'Approved',
reviewer_name: currentUser,
reviewerOn: updatedAt
reviewerOn: updatedAt,
updated_at: updatedAt
}
: item
)
@ -231,7 +236,6 @@ const handleRejectConfirm = async () => {
toast.error('Submission has been rejected');
const currentUser = JSON.parse(sessionStorage.getItem("user_profile"))?.name || 'Admin';
const currentTime = new Date().toISOString();
const updatedAt = response?.data?.updated_at || new Date().toISOString();
// Update the status of the current item in the data array
@ -242,7 +246,8 @@ const handleRejectConfirm = async () => {
...item,
status: 'Rejected',
reviewer_name: currentUser,
reviewerOn: updatedAt
reviewerOn: updatedAt,
updated_at: updatedAt
}
: item
)
@ -306,9 +311,9 @@ const tableRows = filtered.map((item) => [
item?.status?.toLowerCase() === 'approved' || item?.status?.toLowerCase() === 'rejected'
? (item?.reviewer_name || JSON.parse(sessionStorage.getItem("user_profile"))?.name || 'Admin')
: '-',
// Reviewed On - show reviewerOn after approval/rejection, otherwise show '-'
// Reviewed On - show updated_at after approval/rejection, otherwise show '-'
item?.status?.toLowerCase() === 'approved' || item?.status?.toLowerCase() === 'rejected'
? <span className="whitespace-nowrap">{formatDate(item?.reviewerOn)}</span>
? <span className="whitespace-nowrap">{formatDate(item?.updated_at || item?.reviewerOn)}</span>
: '-',
item,
]);

View File

@ -153,11 +153,11 @@ const ManageSubmissions = () => {
year: String(item.year ?? '-'),
quarter: item.quarter ?? '-',
products: item?.product_count || '-',
submittedBy: userProfile?.name || '-',
submittedBy: item.created_by_name || '-',
submittedAt: formatDateTime(item.created_at),
status: item.status ?? '-',
reviewer: userProfile?.name || '-',
reviewerOn: formatDateTime(item.updated_at || item.created_at),
reviewer: item.reviewer_name || '-',
reviewerOn: formatDateTime(item.updated_at ),
}));
setSubmissions(mapped);
} else {
@ -198,7 +198,6 @@ const ManageSubmissions = () => {
showToast('error', 'Submission has been rejected');
// Refresh the submissions list
const data = await fetchDashboardData(selectedQuarter, selectedYear);
const userProfile = JSON.parse(sessionStorage.getItem("user_profile"));
const mapped = (data || []).map((item) => ({
id: item.id,
establishment: item?.establishment?.factory_name || '-',
@ -206,11 +205,11 @@ const ManageSubmissions = () => {
year: String(item.year ?? '-'),
quarter: item.quarter ?? '-',
products: item?.product_count || '-',
submittedBy: userProfile?.name || '-',
submittedBy: item.created_by_name || '-',
submittedAt: formatDateTime(item.created_at),
status: item.status ?? '-',
reviewer: userProfile?.name || '-',
reviewerOn: formatDateTime(item.created_at),
reviewer: item.reviewer_name || '-',
reviewerOn: formatDateTime(item.updated_at),
}));
setSubmissions(mapped);
setRejectReason('');
@ -241,7 +240,6 @@ React.useEffect(() => {
try {
setLoading(true);
const data = await fetchDashboardData(selectedQuarter, selectedYear);
const userProfile = JSON.parse(sessionStorage.getItem("user_profile"));
const mapped = (data || []).map((item) => ({
id: item.id,
establishment: item?.establishment?.factory_name || '-',
@ -249,10 +247,10 @@ React.useEffect(() => {
year: String(item.year ?? '-'),
quarter: item.quarter ?? '-',
products: item?.product_count || '-',
submittedBy: userProfile?.name || '-',
submittedBy: item.created_by_name || '-',
submittedAt: formatDateTime(item.created_at),
status: item.status ?? '-',
reviewer: userProfile?.name || '-',
status: item.status || 'Pending',
reviewer: item.reviewer_name || '-',
reviewerOn: formatDateTime(item.updated_at || item.created_at),
}));
@ -320,8 +318,6 @@ React.useEffect(() => {
// Then fetch the submissions with the current quarter and year
const data = await fetchDashboardData(currentQuarter, currentYear);
const userProfile = JSON.parse(sessionStorage.getItem("user_profile") || '{}');
const mapped = (data || []).map((item) => ({
id: item.id,
establishment: item?.establishment?.factory_name || '-',
@ -329,10 +325,10 @@ React.useEffect(() => {
year: String(item.year ?? '-'),
quarter: item.quarter ?? '-',
products: item?.product_count || '-',
submittedBy: userProfile?.name || '-',
submittedBy: item.created_by_name || '-',
submittedAt: formatDateTime(item.created_at),
status: item.status || 'Pending',
reviewer: userProfile?.name || '-',
reviewer: item.reviewer_name || '-',
reviewerOn: formatDateTime(item.updated_at || item.created_at),
}));