This commit is contained in:
wayanrivan
2025-05-19 14:13:29 +07:00
parent 0fada02155
commit fecb55328e
4 changed files with 75 additions and 11 deletions

View File

@ -223,6 +223,7 @@ const DetailApprovalTransaction = () => {
{(() => { {(() => {
let status; let status;
let badgeClass; let badgeClass;
if (transactionDetails?.status === 'C') { if (transactionDetails?.status === 'C') {
status = 'COMPLETE'; status = 'COMPLETE';
badgeClass = 'bg-green-100 text-green-800'; badgeClass = 'bg-green-100 text-green-800';
@ -232,9 +233,15 @@ const DetailApprovalTransaction = () => {
} else if (transactionDetails?.status === 'O') { } else if (transactionDetails?.status === 'O') {
status = 'ON PROCESS'; status = 'ON PROCESS';
badgeClass = 'bg-blue-100 text-blue-800'; badgeClass = 'bg-blue-100 text-blue-800';
} else { } else if (transactionDetails?.status === 'P') {
status = 'PENDING'; status = 'PENDING';
badgeClass = 'bg-gray-100 text-gray-800'; badgeClass = 'bg-gray-100 text-gray-800';
} else if (transactionDetails?.status === 'R') {
status = 'ROLLBACK';
badgeClass = 'bg-yellow-100 text-yellow-800';
} else if (transactionDetails?.status === 'S') {
status = 'REVERSAL';
badgeClass = 'bg-purple-100 text-purple-800';
} }
return ( return (
@ -261,7 +268,7 @@ const DetailApprovalTransaction = () => {
kind = 'TOP UP'; kind = 'TOP UP';
} else if (transactionDetails?.kind === 'R') { } else if (transactionDetails?.kind === 'R') {
kind = 'RETURN'; kind = 'RETURN';
}else if (transactionDetails?.kind === 'E') { } else if (transactionDetails?.kind === 'E') {
kind = 'REWARD'; kind = 'REWARD';
} }
return kind; return kind;
@ -419,16 +426,33 @@ const DetailApprovalTransaction = () => {
<p className="font-medium"> <p className="font-medium">
{(() => { {(() => {
let status; let status;
let badgeClass;
if (transactionDetails?.status === 'C') { if (transactionDetails?.status === 'C') {
status = 'COMPLETE'; status = 'COMPLETE';
badgeClass = 'bg-green-100 text-green-800';
} else if (transactionDetails?.status === 'F') { } else if (transactionDetails?.status === 'F') {
status = 'FAILED'; status = 'FAILED';
badgeClass = 'bg-red-100 text-red-800';
} else if (transactionDetails?.status === 'O') { } else if (transactionDetails?.status === 'O') {
status = 'ON PROCESS'; status = 'ON PROCESS';
} else { badgeClass = 'bg-blue-100 text-blue-800';
} else if (transactionDetails?.status === 'P') {
status = 'PENDING'; status = 'PENDING';
badgeClass = 'bg-gray-100 text-gray-800';
} else if (transactionDetails?.status === 'R') {
status = 'ROLLBACK';
badgeClass = 'bg-yellow-100 text-yellow-800';
} else if (transactionDetails?.status === 'S') {
status = 'REVERSAL';
badgeClass = 'bg-purple-100 text-purple-800';
} }
return status;
return (
<span className={`px-3 py-1 rounded-full text-xs font-semibold ${badgeClass}`}>
{status}
</span>
);
})()} })()}
</p> </p>
</div> </div>
@ -447,7 +471,7 @@ const DetailApprovalTransaction = () => {
kind = 'TOP UP'; kind = 'TOP UP';
} else if (transactionDetails?.kind === 'R') { } else if (transactionDetails?.kind === 'R') {
kind = 'RETURN'; kind = 'RETURN';
}else if (transactionDetails?.kind === 'E') { } else if (transactionDetails?.kind === 'E') {
kind = 'REWARD'; kind = 'REWARD';
} }
return kind; return kind;

View File

@ -158,11 +158,15 @@ const ApprovalTransactionProvider = ({ children }: { children: React.ReactNode }
}, },
{ {
accessorFn: (row) => { accessorFn: (row) => {
switch (row.status) { switch (row.status) {
case 'C': return 'COMPLETE'; case 'C': return 'COMPLETE';
case 'F': return 'FAILED'; case 'F': return 'FAILED';
case 'O': return 'ON PROCESS'; case 'O': return 'ON PROCESS';
default: return 'PENDING'; case "P" : return 'PENDING';
case 'R': return 'ROLLBACK';
case 'S': return 'REVERSAL';
default: return 'UNKNOWN';
} }
}, },
id: 'status', id: 'status',

View File

@ -283,6 +283,7 @@ const DetailTransaction = () => {
{(() => { {(() => {
let status; let status;
let badgeClass; let badgeClass;
if (transactionDetails?.status === 'C') { if (transactionDetails?.status === 'C') {
status = 'COMPLETE'; status = 'COMPLETE';
badgeClass = 'bg-green-100 text-green-800'; badgeClass = 'bg-green-100 text-green-800';
@ -292,9 +293,15 @@ const DetailTransaction = () => {
} else if (transactionDetails?.status === 'O') { } else if (transactionDetails?.status === 'O') {
status = 'ON PROCESS'; status = 'ON PROCESS';
badgeClass = 'bg-blue-100 text-blue-800'; badgeClass = 'bg-blue-100 text-blue-800';
} else { } else if (transactionDetails?.status === 'P') {
status = 'PENDING'; status = 'PENDING';
badgeClass = 'bg-gray-100 text-gray-800'; badgeClass = 'bg-gray-100 text-gray-800';
} else if (transactionDetails?.status === 'R') {
status = 'ROLLBACK';
badgeClass = 'bg-yellow-100 text-yellow-800';
} else if (transactionDetails?.status === 'S') {
status = 'REVERSAL';
badgeClass = 'bg-purple-100 text-purple-800';
} }
return ( return (
@ -484,16 +491,33 @@ const DetailTransaction = () => {
<p className="font-medium"> <p className="font-medium">
{(() => { {(() => {
let status; let status;
let badgeClass;
if (transactionDetails?.status === 'C') { if (transactionDetails?.status === 'C') {
status = 'COMPLETE'; status = 'COMPLETE';
badgeClass = 'bg-green-100 text-green-800';
} else if (transactionDetails?.status === 'F') { } else if (transactionDetails?.status === 'F') {
status = 'FAILED'; status = 'FAILED';
badgeClass = 'bg-red-100 text-red-800';
} else if (transactionDetails?.status === 'O') { } else if (transactionDetails?.status === 'O') {
status = 'ON PROCESS'; status = 'ON PROCESS';
} else { badgeClass = 'bg-blue-100 text-blue-800';
} else if (transactionDetails?.status === 'P') {
status = 'PENDING'; status = 'PENDING';
badgeClass = 'bg-gray-100 text-gray-800';
} else if (transactionDetails?.status === 'R') {
status = 'ROLLBACK';
badgeClass = 'bg-yellow-100 text-yellow-800';
} else if (transactionDetails?.status === 'S') {
status = 'REVERSAL';
badgeClass = 'bg-purple-100 text-purple-800';
} }
return status;
return (
<span className={`px-3 py-1 rounded-full text-xs font-semibold ${badgeClass}`}>
{status}
</span>
);
})()} })()}
</p> </p>
</div> </div>

View File

@ -201,10 +201,22 @@ const TransactionProvider = ({ children }: { children: React.ReactNode }) => {
label = 'ON PROCESS'; label = 'ON PROCESS';
badgeClass = 'bg-blue-100 text-blue-800'; badgeClass = 'bg-blue-100 text-blue-800';
break; break;
default: case 'P':
label = 'PENDING'; label = 'PENDING';
badgeClass = 'bg-gray-100 text-gray-800'; badgeClass = 'bg-gray-100 text-gray-800';
break; break;
case 'R':
label = 'ROLLBACK';
badgeClass = 'bg-yellow-100 text-yellow-800';
break;
case 'S':
label = 'REVERSAL';
badgeClass = 'bg-purple-100 text-purple-800';
break;
default:
label = '';
badgeClass = 'bg-gray-100 text-gray-800';
break;
} }
return ( return (