import React, { useContext, useEffect, useState } from "react"; import { useStore } from "../../utils/useStore"; import { Card, Col, Form, Input, message, Modal, Row, Select, Button, } from "antd"; import { observer } from "mobx-react-lite"; import { ModalLoaderContext } from "../../utils/modal"; const { Search } = Input; const { Option } = Select; export const Product = observer(() => { const store = useStore(); const modalLoader = useContext(ModalLoaderContext); const [form] = Form.useForm(); const [visibleModalBuy, setVisibleModalBuy] = useState(false); const [barang, setBarang] = useState({}); useEffect(() => { const init = async () => { try { modalLoader.setLoading(true); await Promise.allSettled([ store.transaction.getDataSubCategories(), store.transaction.getDataCategories(), ]); modalLoader.setLoading(false); } catch (e) { modalLoader.setLoading(false); if (e.response?.body?.message) { message.error(e.response.body.message); return; } message.error(e.message); } }; init(); }, []); const handleChangeSubcategory = async (item) => { store.transaction.filterSubCategory = item; modalLoader.setLoading(true); await store.transaction.getData(); modalLoader.setLoading(false); }; const handleBuyProduct = async (data, productCode) => { modalLoader.setLoading(true); try { const response = await store.transaction.buyProd({ ...data, productCode: productCode, }); if (response.status === 201) { message.success(response?.body?.message || "Berhasil Beli Produk"); } else { message.error(response?.body?.error || "Gagal Beli Produk", 3); } } catch (e) { console.log("testingan"); console.log(e.response, "testingan"); console.log(e.result, "testingan1"); if (e.response?.body?.error) { message.error(e.response.body.error); setVisibleModalBuy(false); modalLoader.setLoading(false); return; } console.log(e, "apa errornya"); message.error("Gagal Beli Product"); } setVisibleModalBuy(false); modalLoader.setLoading(false); }; const handleBuyStag = async (data, productCode) => { modalLoader.setLoading(true); try { const response = await store.transaction.buyProduct({ ...data, productCode: productCode, }); if (response.status === 201) { message.success(response?.body?.message || "Berhasil Beli Produk"); } else { message.error(response?.body?.error || "Gagal Beli Produk", 3); } } catch (e) { console.log("testingan"); console.log(e.response, "testingan"); console.log(e.result, "testingan1"); if (e.response?.body?.error) { message.error(e.response.body.error); setVisibleModalBuy(false); modalLoader.setLoading(false); return; } console.log(e, "apa errornya"); message.error("Gagal Beli Product"); } // setDataProd(false); // setDataStag(false); setVisibleModalBuy(false); modalLoader.setLoading(false); }; const handleCancel = () => { form.resetFields(); setVisibleModalBuy(false); }; return (
Sub Category Produk & Nominal {/* */} {store.transaction.data.length != 0 && ( {store.transaction.data.map((item, index) => ( { setVisibleModalBuy(true); setBarang(item); }} hoverable style={{ cursor: "pointer", marginLeft: 10, borderColor: "salmon", height: 100, marginBottom: 10, }} > {item?.product_name}
{new Intl.NumberFormat("id-ID", { style: "currency", currency: "IDR", }).format(item?.price)}
))}
)} { form.resetFields(); setVisibleModalBuy(false); }} // footer={footerLayoutFilter} footer={[ , , , ]} >
); });