diff --git a/src/component/ProductComponent.js b/src/component/ProductComponent.js index 19649c0..21eb4b2 100644 --- a/src/component/ProductComponent.js +++ b/src/component/ProductComponent.js @@ -26,14 +26,14 @@ export const ProductComponent = observer((props) => { }, { title: "Harga Beli", - dataIndex: "price", - key: "price", + dataIndex: "basePrice", + key: "basePrice", }, , { title: "Harga Jual", - dataIndex: "base_price", - key: "base_price", + dataIndex: "price", + key: "price", }, { title: "Gangguan", diff --git a/src/pages/Membership/Membership.js b/src/pages/Membership/Membership.js index 9e43b81..0f599a5 100644 --- a/src/pages/Membership/Membership.js +++ b/src/pages/Membership/Membership.js @@ -1,35 +1,49 @@ -import React, {useEffect, useState} from "react"; -import {Button, Card, Col, Divider, Input, List, message, Modal, Row, Space, Table, Tag} from "antd"; -import {useStore} from "../../utils/useStore"; -import {observer} from "mobx-react-lite"; -import {ExclamationCircleOutlined, FilterOutlined, PlusSquareOutlined,} from "@ant-design/icons"; -import {MembershipModal} from "./MembershipModal"; -import {BreadcumbComponent} from "../../component/BreadcumbComponent"; -import {format} from "date-fns"; +import React, { useEffect, useState } from "react"; +import { + Button, + Card, + Col, + Divider, + Input, + List, + message, + Modal, + Row, + Space, + Table, + Tag, +} from "antd"; +import { useStore } from "../../utils/useStore"; +import { observer } from "mobx-react-lite"; +import { + ExclamationCircleOutlined, + FilterOutlined, + PlusSquareOutlined, +} from "@ant-design/icons"; +import { MembershipModal } from "./MembershipModal"; +import { BreadcumbComponent } from "../../component/BreadcumbComponent"; +import { format } from "date-fns"; -const {Search} = Input; +const { Search } = Input; export const Membership = observer(() => { const store = useStore(); - const [visibleModal, setVisibleModal] = useState(false) - const [initialData, setInitialData] = useState({}) + const [visibleModal, setVisibleModal] = useState(false); + const [initialData, setInitialData] = useState({}); const [confirmLoading, setConfirmLoading] = useState(false); const [isLoading, setIsLoading] = useState(false); const init = async () => { try { - setIsLoading(true) + setIsLoading(true); await store.membership.getData(); - setIsLoading(false) + setIsLoading(false); } catch (e) { - setIsLoading(false) + setIsLoading(false); } - } + }; useEffect(() => { - - - init() - + init(); }, []); const columns = [ @@ -49,28 +63,34 @@ export const Membership = observer(() => { key: "status", render: (text, record) => ( - {record?.status} + {record?.isActive === true ? " ACTIVE" : "INACTIVE"} - ) + ), }, { title: "Action", key: "action", render: (text, record) => ( - - - - + > + Edit + + + ), }, ]; @@ -82,177 +102,180 @@ export const Membership = observer(() => { }, { route: "/app/membership", - name: Membership, + name: Membership, }, ]; const onSubmit = async (data) => { if (initialData.id) { - setInitialData({}) + setInitialData({}); setConfirmLoading(true); try { - await store.membership.update(initialData.id, data) - message.success("Success Update Data Member") + await store.membership.update(initialData.id, data); + message.success("Success Update Data Member"); + await store.membership.getData(); } catch (e) { - message.error("Failed Update Data Member") + message.error("Failed Update Data Member"); } setConfirmLoading(false); setVisibleModal(false); } else { - setInitialData({}) + setInitialData({}); setConfirmLoading(true); try { - await store.membership.create(data) - message.success("Success Add New Member") + await store.membership.create(data); + message.success("Success Add New Member"); + await store.membership.getData(); } catch (e) { - console.log(e, "apa errornya") - message.error("Failed Add Member") + console.log(e, "apa errornya"); + message.error("Failed Add Member"); } setConfirmLoading(false); setVisibleModal(false); } - } + }; const handleDelete = (record) => { Modal.confirm({ - title: 'Are you sure reject this record?', - icon: , - okText: 'Yes', - okType: 'primary', - cancelText: 'Cancel', + title: "Are you sure reject this record?", + icon: , + okText: "Yes", + okType: "primary", + cancelText: "Cancel", onOk() { try { //TODO: minta apinya ke ka ilham ya, jangan di uncomment kalo pake api reconcile, nanti beneran ke apus datanya // await store.membership.delete(record.id) - message.success('Success Delete Data') + message.success("Success Delete Data"); } catch (e) { - message.error("Failed Delete Data") + message.error("Failed Delete Data"); } }, onCancel() { - console.log('Cancel'); + console.log("Cancel"); }, }); - } - + }; return ( -
- - -
- - - - - - - - - +
+ + +
+ + + + + + + + + + {store.ui.mediaQuery.isDesktop && ( + { + // store.membership.pageSize = page.pageSize; + // store.membership.page = page.current; + // store.membership.getData(); + // }} + // current={store.membership.page} + // loading={store.membership.pageSize} + /> + )} - {store.ui.mediaQuery.isDesktop && ( -
{ - // store.membership.pageSize = page.pageSize; - // store.membership.page = page.current; - // store.membership.getData(); - // }} - // current={store.membership.page} - // loading={store.membership.pageSize} - />)} - - {store.ui.mediaQuery.isMobile && ( - { - store.membership.pageSize = page.pageSize; - store.membership.page = page.current; - store.membership.getData(); - }, - pageSize: store.membership.pageSize, - total: store.membership.total_data, - current: store.membership.page, - style: {marginBottom: '1rem', marginRight: '1rem'} - }} - dataSource={store.membership.data} - style={{padding: 0}} - renderItem={(item) => { - return ( -
- - -

- Email : {item.email}
-

-
- } - /> -
-

- {format(new Date(item.created_at), "dd-MM-yyyy")} -

-
- - + {store.ui.mediaQuery.isMobile && ( + { + store.membership.pageSize = page.pageSize; + store.membership.page = page.current; + store.membership.getData(); + }, + pageSize: store.membership.pageSize, + total: store.membership.total_data, + current: store.membership.page, + style: { marginBottom: "1rem", marginRight: "1rem" }, + }} + dataSource={store.membership.data} + style={{ padding: 0 }} + renderItem={(item) => { + return ( +
+ + +

+ Username : {item.username}
+

- ); - }} - /> - )} - - - { - onSubmit(data) - }} - onCancel={() => { - setInitialData({}) - setVisibleModal(false); - }}/> - + } + /> +
+

+ {item.username} +

+
+ + + + ); + }} + /> + )} + + + { + onSubmit(data); + }} + onCancel={() => { + setInitialData({}); + setVisibleModal(false); + }} + /> + ); }); diff --git a/src/pages/Membership/MembershipModal.js b/src/pages/Membership/MembershipModal.js index bcbece4..b404639 100644 --- a/src/pages/Membership/MembershipModal.js +++ b/src/pages/Membership/MembershipModal.js @@ -9,13 +9,13 @@ export const MembershipModal = ({ }) => { const [form] = Form.useForm(); const {Option} = Select; - const dataStatus = ['Active', 'Inactive'] + const dataStatus = ["true", "false"] return ( { @@ -40,13 +40,7 @@ export const MembershipModal = ({ name="form_in_modal" initialValues={initialData} > - - - + + + + + + +