From bc8e76f00eaa74eb0cc51b79662a53ef34a3ed67 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Fri, 24 Mar 2023 17:05:47 +0700 Subject: - --- .../components/TransactionStatusBadge.jsx | 2 +- src/lib/transaction/components/Transactions.jsx | 340 ++++++++++++--------- 2 files changed, 192 insertions(+), 150 deletions(-) (limited to 'src/lib/transaction/components') diff --git a/src/lib/transaction/components/TransactionStatusBadge.jsx b/src/lib/transaction/components/TransactionStatusBadge.jsx index 7372e4da..88467c2b 100644 --- a/src/lib/transaction/components/TransactionStatusBadge.jsx +++ b/src/lib/transaction/components/TransactionStatusBadge.jsx @@ -1,6 +1,6 @@ const TransactionStatusBadge = ({ status }) => { let badgeProps = { - className: ['h-fit'], + className: ['h-fit md:text-caption-2'], text: '' } switch (status) { diff --git a/src/lib/transaction/components/Transactions.jsx b/src/lib/transaction/components/Transactions.jsx index ccbdede2..3d3dd533 100644 --- a/src/lib/transaction/components/Transactions.jsx +++ b/src/lib/transaction/components/Transactions.jsx @@ -15,6 +15,8 @@ import Pagination from '@/core/components/elements/Pagination/Pagination' import { toQuery } from 'lodash-contrib' import _ from 'lodash' import Alert from '@/core/components/elements/Alert/Alert' +import MobileView from '@/core/components/views/MobileView' +import DesktopView from '@/core/components/views/DesktopView' const Transactions = () => { const router = useRouter() @@ -55,161 +57,201 @@ const Transactions = () => { } return ( -
-
- setInputQuery(e.target.value)} - /> - -
- - {transactions.isLoading && ( -
- -
- )} - - {!transactions.isLoading && transactions.data?.saleOrders?.length === 0 && ( - - Tidak ada data transaksi - - )} - - {transactions.data?.saleOrders?.map((saleOrder, index) => ( -
-
- - No. Transaksi -

{saleOrder.name}

- -
- - setToOthers(saleOrder)} - /> + <> + +
+
+ setInputQuery(e.target.value)} + /> + +
+ + {transactions.isLoading && ( +
+
-
- -
-
- No. Purchase Order -

- {saleOrder.purchaseOrderName || '-'} -

-
-
- Total Invoice -

{saleOrder.invoiceCount} Invoice

+ )} + + {!transactions.isLoading && transactions.data?.saleOrders?.length === 0 && ( + + Tidak ada data transaksi + + )} + + {transactions.data?.saleOrders?.map((saleOrder, index) => ( +
+
+ + No. Transaksi +

{saleOrder.name}

+ +
+ + setToOthers(saleOrder)} + /> +
+ +
+
+ No. Purchase Order +

+ {saleOrder.purchaseOrderName || '-'} +

+
+
+ Total Invoice +

+ {saleOrder.invoiceCount} Invoice +

+
+
+
+
+ Sales +

{saleOrder.sales}

+
+
+ Total Harga +

+ {currencyFormat(saleOrder.amountTotal)} +

+
+
+
-
-
- Sales -

{saleOrder.sales}

-
-
- Total Harga -

- {currencyFormat(saleOrder.amountTotal)} -

-
+ ))} + + + + setToOthers(null)}> +
+ + +
- -
- ))} - - - - setToOthers(null)} - > -
- - - -
-
- - setToCancel(null)} - title='Batalkan Transaksi' - > -
- Apakah anda yakin membatalkan transaksi{' '} - {toCancel?.name}? + + + setToCancel(null)} title='Batalkan Transaksi'> +
+ Apakah anda yakin membatalkan transaksi{' '} + {toCancel?.name}? +
+
+ + +
+
-
- - + + + +
+
+
+
+

Daftar Transaksi

+
+ setInputQuery(e.target.value)} + /> + +
+
+ + + + + + + + + + + + {transactions.data?.saleOrders?.map((saleOrder) => ( + + + + + + + + ))} + +
No. TransaksiTanggalSales PersonTotalStatus
+ {saleOrder.name} + -{saleOrder.sales}{currencyFormat(saleOrder.amountTotal)} +
+ +
+
+ + +
- -
+ + ) } -- cgit v1.2.3 From de5ef26bb1017540969f8847016193f7e1933ee1 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Sun, 26 Mar 2023 15:10:59 +0700 Subject: transaction detail --- src/lib/transaction/components/Transaction.jsx | 471 ++++++++++++++++-------- src/lib/transaction/components/Transactions.jsx | 12 +- 2 files changed, 327 insertions(+), 156 deletions(-) (limited to 'src/lib/transaction/components') diff --git a/src/lib/transaction/components/Transaction.jsx b/src/lib/transaction/components/Transaction.jsx index dc9338fa..dbfdbae9 100644 --- a/src/lib/transaction/components/Transaction.jsx +++ b/src/lib/transaction/components/Transaction.jsx @@ -15,6 +15,11 @@ import Link from '@/core/components/elements/Link/Link' import Alert from '@/core/components/elements/Alert/Alert' import checkoutPoApi from '../api/checkoutPoApi' import cancelTransactionApi from '../api/cancelTransactionApi' +import MobileView from '@/core/components/views/MobileView' +import DesktopView from '@/core/components/views/DesktopView' +import Menu from '@/lib/auth/components/Menu' +import Image from '@/core/components/elements/Image/Image' +import { createSlug } from '@/core/utils/slug' const Transaction = ({ id }) => { const { transaction } = useTransaction({ id }) @@ -88,10 +93,7 @@ const Transaction = ({ id }) => { const memoizeVariantGroupCard = useMemo( () => (
- +

Subtotal

{currencyFormat(totalAmount)}

@@ -124,120 +126,6 @@ const Transaction = ({ id }) => { return ( transaction.data?.name && ( <> -
- -
- -
-
- {transaction.data?.name} - - {transaction.data?.paymentTerm} - - {transaction.data?.sales} - {transaction.data?.dateOrder} -
- - - -
- - {transaction.data?.purchaseOrderName || '-'} - -
-

Dokumen PO

- -
-
- - - -
Detail Produk
- - {memoizeVariantGroupCard} - - - - - - - -
-

Invoice

-
- {transaction.data?.invoices?.map((invoice, index) => ( - -
-
-

{invoice?.name}

-
- {invoice.amountResidual > 0 ? ( -
Belum Lunas
- ) : ( -
Lunas
- )} -

- {currencyFormat(invoice.amountTotal)} -

-
-
- -
- - ))} - {transaction.data?.invoices?.length === 0 && ( - - Belum ada Invoice - - )} -
-
- - - -
- {transaction.data?.status == 'draft' && ( - - )} - - {transaction.data?.status != 'draft' && ( - - )} -
- { > Ya, Batalkan -
- +
- +
- +
- -
+ + +
+ +
+ +
+
+ {transaction.data?.name} + + {transaction.data?.paymentTerm} + + {transaction.data?.sales} + {transaction.data?.dateOrder} +
+ + + +
+ + {transaction.data?.purchaseOrderName || '-'} + +
+

Dokumen PO

+ +
+
+ + + +
Detail Produk
+ + {memoizeVariantGroupCard} + + + + + + + +
+

Invoice

+
+ {transaction.data?.invoices?.map((invoice, index) => ( + +
+
+

{invoice?.name}

+
+ {invoice.amountResidual > 0 ? ( +
Belum Lunas
+ ) : ( +
Lunas
+ )} +

+ {currencyFormat(invoice.amountTotal)} +

+
+
+ +
+ + ))} + {transaction.data?.invoices?.length === 0 && ( + + Belum ada Invoice + + )} +
+
+ + + +
+ {transaction.data?.status == 'draft' && ( + + )} + + {transaction.data?.status != 'draft' && ( + + )} +
+
+ + +
+
+ +
+
+

Detail Transaksi

+ +
+ {transaction?.data?.name} + +
+ + +
+
+
Nama Sales
+
: {transaction?.data?.sales}
+ +
Tanggal Transaksi
+
: {transaction?.data?.dateOrder}
+
+
+
Ketentuan Pembayaran
+
: {transaction?.data?.paymentTerm}
+ +
Purchase Order
+
+ : {transaction?.data?.purchaseOrderName}{' '} + +
+
+
+ +
Info Pengiriman
+
+
+
Detail Pelanggan
+ +
+
+
Detail Pengiriman
+ +
+
+
Detail Penagihan
+ +
+
+ +
Rincian Pembelian
+ + + + + + + + + + + + {transaction?.data?.products?.map((product) => ( + + + + + + + + ))} + +
Nama ProdukJumlahHargaDiskonSubtotal
+ + {product?.name} + +
+ + {product?.parent?.name} + +
+ {product?.code}{' '} + {product?.attributes.length > 0 + ? `| ${product?.attributes.join(', ')}` + : ''} +
+
+
{product.quantity}{currencyFormat(product.price.price)} + {product.price.discountPercentage > 0 + ? `${product.price.discountPercentage}%` + : ''} + {currencyFormat(product.price.priceDiscount)}
+ +
+
+
Subtotal
+
{currencyFormat(totalAmount)}
+ +
Total Diskon
+
+ {currencyFormat(-totalDiscountAmount)} +
+ +
PPN 11% (Incl.)
+
{currencyFormat(totalAmount * 0.11)}
+ +
Grand Total
+
+ {currencyFormat(transaction.data?.amountTotal)} +
+
+
+ +
Invoice
+
+ {transaction.data?.invoices?.map((invoice, index) => ( + +
+
+

{invoice?.name}

+
+ {invoice.amountResidual > 0 ? ( +
Belum Lunas
+ ) : ( +
Lunas
+ )} +

+ {currencyFormat(invoice.amountTotal)} +

+
+
+ +
+ + ))} +
+ {transaction.data?.invoices?.length === 0 && ( + + Belum ada Invoice + + )} + +
+ {transaction.data?.status == 'draft' && ( + + )} + {transaction.data?.status != 'draft' && ( + + )} +
+
+
+
) ) @@ -351,10 +519,7 @@ const SectionAddress = ({ address }) => { } const SectionButton = ({ label, active, toggle }) => ( - @@ -369,7 +534,7 @@ const SectionContent = ({ address }) => { fullAddress = fullAddress.join(', ') return ( -
+
{address.name} {address.email || '-'} {address.mobile || '-'} diff --git a/src/lib/transaction/components/Transactions.jsx b/src/lib/transaction/components/Transactions.jsx index 3d3dd533..0a772967 100644 --- a/src/lib/transaction/components/Transactions.jsx +++ b/src/lib/transaction/components/Transactions.jsx @@ -17,6 +17,7 @@ import _ from 'lodash' import Alert from '@/core/components/elements/Alert/Alert' import MobileView from '@/core/components/views/MobileView' import DesktopView from '@/core/components/views/DesktopView' +import Menu from '@/lib/auth/components/Menu' const Transactions = () => { const router = useRouter() @@ -196,10 +197,15 @@ const Transactions = () => {
-
+
+ +
-

Daftar Transaksi

+

+ Daftar Transaksi{' '} + {transactions?.data?.saleOrders ? `(${transactions?.data?.saleOrders.length})` : ''} +

{
- +
-- cgit v1.2.3 From 3f8a37b15c3fd1168b01390241cda7fa2ba980c7 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Sun, 26 Mar 2023 15:15:08 +0700 Subject: fix --- src/lib/transaction/components/Transaction.jsx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/lib/transaction/components') diff --git a/src/lib/transaction/components/Transaction.jsx b/src/lib/transaction/components/Transaction.jsx index dbfdbae9..cba7646f 100644 --- a/src/lib/transaction/components/Transaction.jsx +++ b/src/lib/transaction/components/Transaction.jsx @@ -20,6 +20,7 @@ import DesktopView from '@/core/components/views/DesktopView' import Menu from '@/lib/auth/components/Menu' import Image from '@/core/components/elements/Image/Image' import { createSlug } from '@/core/utils/slug' +import toTitleCase from '@/core/utils/toTitleCase' const Transaction = ({ id }) => { const { transaction } = useTransaction({ id }) @@ -528,9 +529,9 @@ const SectionButton = ({ label, active, toggle }) => ( const SectionContent = ({ address }) => { let fullAddress = [] if (address?.street) fullAddress.push(address.street) - if (address?.subDistrict?.name) fullAddress.push(address.subDistrict.name) - if (address?.district?.name) fullAddress.push(address.district.name) - if (address?.city?.name) fullAddress.push(address.city.name) + if (address?.subDistrict?.name) fullAddress.push(toTitleCase(address.subDistrict.name)) + if (address?.district?.name) fullAddress.push(toTitleCase(address.district.name)) + if (address?.city?.name) fullAddress.push(toTitleCase(address.city.name)) fullAddress = fullAddress.join(', ') return ( -- cgit v1.2.3 From bc04e721d51e149709ab3cfaf5e77ef034511860 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Mon, 27 Mar 2023 10:17:49 +0700 Subject: invoice, invoice detail, address, create address, edit address, wishlist --- src/lib/transaction/components/Transaction.jsx | 6 +++--- src/lib/transaction/components/Transactions.jsx | 18 +++++++++++++++++- 2 files changed, 20 insertions(+), 4 deletions(-) (limited to 'src/lib/transaction/components') diff --git a/src/lib/transaction/components/Transaction.jsx b/src/lib/transaction/components/Transaction.jsx index cba7646f..104a7f2d 100644 --- a/src/lib/transaction/components/Transaction.jsx +++ b/src/lib/transaction/components/Transaction.jsx @@ -298,14 +298,14 @@ const Transaction = ({ id }) => {
-
+
Nama Sales
: {transaction?.data?.sales}
Tanggal Transaksi
: {transaction?.data?.dateOrder}
-
+
Ketentuan Pembayaran
: {transaction?.data?.paymentTerm}
@@ -398,7 +398,7 @@ const Transaction = ({ id }) => { ? `${product.price.discountPercentage}%` : ''} -
+ ))} diff --git a/src/lib/transaction/components/Transactions.jsx b/src/lib/transaction/components/Transactions.jsx index 0a772967..30c670ae 100644 --- a/src/lib/transaction/components/Transactions.jsx +++ b/src/lib/transaction/components/Transactions.jsx @@ -224,12 +224,28 @@ const Transactions = () => { - + + {transactions.isLoading && ( + + + + )} + {!transactions.isLoading && + (!transactions?.data?.saleOrders || + transactions?.data?.saleOrders?.length == 0) && ( + + + + )} {transactions.data?.saleOrders?.map((saleOrder) => (
No. Transaksi{currencyFormat(product.price.priceDiscount)}{currencyFormat(product.price.priceDiscount * product.quantity)}
No. Transaksi TanggalSales PersonSalesperson Total Status
+
+ +
+
Tidak ada data transaksi
-- cgit v1.2.3