diff --git a/src/pages/Home/Home.js b/src/pages/Home/Home.js
index b3b80d6..696969b 100644
--- a/src/pages/Home/Home.js
+++ b/src/pages/Home/Home.js
@@ -1,14 +1,96 @@
-import React from "react";
-import { Button, PageHeader, Card, Row, Col } from "antd";
-import { store } from "../../utils/useStore";
+import React, { useContext, useEffect } from "react";
+import { Button, PageHeader, Card, Row, Col, message, Table } from "antd";
+import { useStore } from "../../utils/useStore";
import { observer } from "mobx-react-lite";
import {
DropboxOutlined,
DollarCircleOutlined,
BarChartOutlined,
} from "@ant-design/icons";
+import { ModalLoaderContext } from "../../utils/modal";
export const Home = observer(() => {
+ const modalLoader = useContext(ModalLoaderContext);
+ const store = useStore();
+ useEffect(() => {
+ const init = async () => {
+ try {
+ modalLoader.setLoading(true);
+ const isAdmin = store.authentication.userData.role === "Admin";
+ await getData();
+ await store.membership.getDataBySuperior();
+ await store.partner.getData();
+ await store.transaction.getDataTransaction();
+ await store.role.getData(isAdmin);
+ modalLoader.setLoading(false);
+ } catch (e) {
+ console.error(e);
+ modalLoader.setLoading(false);
+ if (e.response?.body?.message) {
+ message.error(e.response.body.message);
+ return;
+ }
+ message.error(e.message);
+ }
+ };
+
+ init();
+ }, []);
+ const getData = async () => {
+ store.authentication.userData.role === "Admin"
+ ? await store.membership.getData()
+ : await store.membership.getDataBySuperior();
+ };
+ const columns = [
+ {
+ title: "Name",
+ dataIndex: "name",
+ key: "name",
+ render: (text, record) => record?.name ?? record?.username,
+ },
+ {
+ title: "Role",
+ dataIndex: "roleName",
+ key: "role",
+ },
+ {
+ title: "Saldo",
+ dataIndex: ["coa", "amount"],
+ key: ["coa", "amount"],
+ width: "20%",
+ render: (text) =>
+ new Intl.NumberFormat("id-ID", {
+ style: "currency",
+ currency: "IDR",
+ }).format(text),
+ },
+ // {
+ // title: "Action",
+ // key: "action",
+ // render: (text, record) => (
+ //
+ //
+ //
+ //
+ // ),
+ // },
+ ];
return (
{store.ui.mediaQuery.isDesktop && (
@@ -32,7 +114,9 @@ export const Home = observer(() => {
Total Transaksi}>
- Total Transaksi : 25 Transaksi
+
+
{store.transaction.dataTransaction} Transaksi
+
@@ -84,6 +168,78 @@ export const Home = observer(() => {
)}
+ {store.authentication.userData.role === "Admin" &&
+ store.ui.mediaQuery.isDesktop && (
+
+
+ {
+ let pageNumber = page.current;
+ store.membership.pageSize = page.pageSize;
+ store.membership.page = pageNumber - 1;
+ modalLoader.setLoading(true);
+ await getData();
+ modalLoader.setLoading(false);
+ }}
+ />
+
+
+ {
+ let pageNumber = page.current;
+ store.membership.pageSize = page.pageSize;
+ store.membership.page = pageNumber - 1;
+ modalLoader.setLoading(true);
+ await getData();
+ modalLoader.setLoading(false);
+ }}
+ />
+
+
+ )}
{store.ui.mediaQuery.isMobile && (
{
Total Transaksi}>
- Total Transaksi : 25 Transaksi
+
+
{store.transaction.dataTransaction} Transaksi
+
@@ -152,6 +310,75 @@ export const Home = observer(() => {
)}
+ {store.authentication.userData.role === "Admin" &&
+ store.ui.mediaQuery.isMobile && (
+
+
+ {
+ let pageNumber = page.current;
+ store.membership.pageSize = page.pageSize;
+ store.membership.page = pageNumber - 1;
+ modalLoader.setLoading(true);
+ await getData();
+ modalLoader.setLoading(false);
+ }}
+ />
+
+
+ {
+ let pageNumber = page.current;
+ store.membership.pageSize = page.pageSize;
+ store.membership.page = pageNumber - 1;
+ modalLoader.setLoading(true);
+ await getData();
+ modalLoader.setLoading(false);
+ }}
+ />
+
+
+ )}
);
});
diff --git a/src/pages/Profile/Profile.js b/src/pages/Profile/Profile.js
index 58017d7..f079a0b 100644
--- a/src/pages/Profile/Profile.js
+++ b/src/pages/Profile/Profile.js
@@ -120,9 +120,9 @@ export const Profile = observer(() => {
];
const columns = [
{
- title: "Markup Price",
- dataIndex: "mark_up_price",
- key: "mark_up_price",
+ title: "Price",
+ dataIndex: "price",
+ key: "price",
width: "20%",
render: (text) =>
new Intl.NumberFormat("id-ID", {
@@ -131,9 +131,9 @@ export const Profile = observer(() => {
}).format(text),
},
{
- title: "Name",
- dataIndex: "name",
- key: "name",
+ title: "Buyer",
+ dataIndex: "buyer",
+ key: "buyer",
width: "50%",
},
{
@@ -141,9 +141,7 @@ export const Profile = observer(() => {
dataIndex: "created_at",
key: "created_at",
render: (text, record) => {
- return (
- {format(parseISO(record.created_at), "mm:HH dd-MM-yyyy")}
- );
+ return {format(parseISO(record.created_at), "dd-MM-yyyy")};
},
},
];
@@ -208,7 +206,7 @@ export const Profile = observer(() => {
-
+
@@ -226,7 +224,7 @@ export const Profile = observer(() => {
-
+
@@ -292,17 +290,13 @@ export const Profile = observer(() => {
>
-
-
+