Merge branch 'develop' into bug-fixing-140223

This commit is contained in:
Tiago Ribeiro
2023-12-15 10:37:38 +00:00
11 changed files with 483 additions and 17 deletions

View File

@@ -24,6 +24,8 @@ import Select from "react-select";
import Input from "@/components/Low/Input";
import ReactDatePicker from "react-datepicker";
import moment from "moment";
import PaymentAssetManager from "@/components/PaymentAssetManager";
import { toFixedNumber } from "@/utils/number";
export const getServerSideProps = withIronSessionSsr(({req, res}) => {
const user = req.session.user;
@@ -88,7 +90,7 @@ const PaymentCreator = ({onClose, reload, showComission = false}: {onClose: () =
corporate: corporate?.id,
agent: referralAgent?.id,
agentCommission: commission,
agentValue: (commission / 100) * price,
agentValue: toFixedNumber((commission / 100) * price, 2),
currency,
value: price,
isPaid: false,
@@ -306,6 +308,107 @@ export default function PaymentRecord() {
.finally(reload);
};
const getFileAssetsColumns = () => {
if (user) {
const containerClassName = "flex gap-2 text-mti-purple-light hover:text-mti-purple-dark ease-in-out duration-300 cursor-pointer";
switch (user.type) {
case "corporate":
return [
columnHelper.accessor("corporateTransfer", {
header: "Corporate transfer",
cell: (info) => (
<div className={containerClassName}>
<PaymentAssetManager
permissions={info.row.original.isPaid ? "read" : "write"}
asset={info.row.original.corporateTransfer}
paymentId={info.row.original.id}
type="corporate"
/>
</div>
),
}),
];
case "agent":
return [
columnHelper.accessor("commissionTransfer", {
header: "Commission transfer",
cell: (info) => (
<div className={containerClassName}>
<PaymentAssetManager
permissions="read"
asset={info.row.original.commissionTransfer}
paymentId={info.row.original.id}
type="commission"
/>
</div>
),
}),
];
case "admin":
return [
columnHelper.accessor("corporateTransfer", {
header: "Corporate transfer",
cell: (info) => (
<div className={containerClassName}>
<PaymentAssetManager
permissions="read"
asset={info.row.original.corporateTransfer}
paymentId={info.row.original.id}
type="corporate"
/>
</div>
),
}),
columnHelper.accessor("commissionTransfer", {
header: "Commission transfer",
cell: (info) => (
<div className={containerClassName}>
<PaymentAssetManager
permissions={info.row.original.isPaid ? "read" : "write"}
asset={info.row.original.commissionTransfer}
paymentId={info.row.original.id}
type="commission"
/>
</div>
),
}),
];
case "developer":
return [
columnHelper.accessor("corporateTransfer", {
header: "Corporate transfer",
cell: (info) => (
<div className={containerClassName}>
<PaymentAssetManager
permissions="write"
asset={info.row.original.corporateTransfer}
paymentId={info.row.original.id}
type="corporate"
/>
</div>
),
}),
columnHelper.accessor("commissionTransfer", {
header: "Commission transfer",
cell: (info) => (
<div className={containerClassName}>
<PaymentAssetManager
permissions="write"
asset={info.row.original.commissionTransfer}
paymentId={info.row.original.id}
type="commission"
/>
</div>
),
}),
];
default:
return [];
}
}
return [];
};
const defaultColumns = [
columnHelper.accessor("id", {
header: "ID",
@@ -332,7 +435,7 @@ export default function PaymentRecord() {
header: "Amount",
cell: (info) => (
<span>
{info.getValue()} {CURRENCIES.find((x) => x.currency === info.row.original.currency)?.label}
{toFixedNumber(info.getValue(), 2)} {CURRENCIES.find((x) => x.currency === info.row.original.currency)?.label}
</span>
),
}),
@@ -354,7 +457,7 @@ export default function PaymentRecord() {
header: "Commission Value",
cell: (info) => (
<span>
{info.getValue()} {CURRENCIES.find((x) => x.currency === info.row.original.currency)?.label}
{toFixedNumber(info.getValue(), 2)} {CURRENCIES.find((x) => x.currency === info.row.original.currency)?.label}
</span>
),
}),
@@ -368,6 +471,7 @@ export default function PaymentRecord() {
</Checkbox>
),
}),
...getFileAssetsColumns(),
{
header: "",
id: "actions",