diff --git a/src/pages/Membership/DetailUser.js b/src/pages/Membership/DetailUser.js index 86aaca8..3097534 100644 --- a/src/pages/Membership/DetailUser.js +++ b/src/pages/Membership/DetailUser.js @@ -12,6 +12,7 @@ import { List, Tag, Divider, + Image, } from "antd"; import { BreadcumbComponent } from "../../component/BreadcumbComponent"; import { LINKS } from "../../routes/app"; @@ -20,6 +21,7 @@ import { observer } from "mobx-react-lite"; import { format, parseISO } from "date-fns"; import { ModalLoaderContext } from "../../utils/modal"; import { useParams } from "react-router-dom"; +import { appConfig } from "../../config/app"; import { MembershipModal } from "./MembershipModal"; const { Title, Text } = Typography; @@ -83,8 +85,8 @@ export const DetailUser = observer(() => { modalLoader.setLoading(false); response?.body?.statusCode === 201 || response?.body?.statusCode === 200 - ? message.success(`Success Withdraw Profit`) - : message.error(`Failed Withdraw Profit`); + ? message.success(`Success Withdraw Profit`) + : message.error(`Failed Withdraw Profit`); await getData(); } catch (err) { modalLoader.setLoading(false); @@ -219,13 +221,18 @@ export const DetailUser = observer(() => { key: "partner_transaction_code", }, { - title: "Transaction Date", + title: "Tanggal Transaksi", dataIndex: "created_at", key: "created_at", render: (text, record) => { return {format(parseISO(record.created_at), "dd-MM-yyyy")}; }, }, + { + title: "Alasan Gagal", + dataIndex: "failed_reason", + key: "failed_reason", + }, ]; const routeData = [ @@ -327,11 +334,7 @@ export const DetailUser = observer(() => { ? "danger" : "primary" } - onClick={() => - withdrawProfit( - store.membership.dataDetail.id, - ) - } + onClick={() => withdrawProfit(store.membership.dataDetail.id)} > Withdraw Profit @@ -343,42 +346,70 @@ export const DetailUser = observer(() => { - + Name - + {store.authentication.dataProfit.userDetail?.name} - + Username - + {store.authentication.dataProfit.username} - + Role - + {store.authentication.dataProfit.roles?.name} - + Phone Number - + {store.authentication.dataProfit.userDetail?.phone_number} - + + Id Number + + + + {store.authentication.dataProfit.userDetail?.identity_number} + + + Status - + {store.authentication.dataProfit.isActive === true ? "Aktif" : "Inaktif"} + + Image identity + + + Image Store + + + {store.authentication.dataProfit.userDetail?.name} + + + {store.authentication.dataProfit.userDetail?.name} + @@ -418,7 +449,7 @@ export const DetailUser = observer(() => { style: "currency", currency: "IDR", }).format( - store.authentication.dataProfit?.profit || 0 + store.authentication.dataProfit?.profit || 0 )} diff --git a/src/pages/Membership/Membership.js b/src/pages/Membership/Membership.js index f0c3ce4..4892e97 100644 --- a/src/pages/Membership/Membership.js +++ b/src/pages/Membership/Membership.js @@ -252,8 +252,7 @@ export const Membership = observer(() => { name: Keanggotaan, }, ]; - - const onSubmit = async (data) => { + const onSubmit = async (data, image, imageStore) => { data.superior = true; if (initialData.id) { @@ -283,14 +282,17 @@ export const Membership = observer(() => { modalLoader.setLoading(true); try { console.log(data, "data member"); - const response = await store.membership.create(data); + const request = { + ...data, + image_identity: image, + image_store: imageStore, + }; + const response = await store.membership.create(request); response?.body?.statusCode === 201 || response?.body?.statusCode === 200 ? message.success( response?.body?.message || "Berhasil Tambah Member Baru" ) - : message.error( - response?.body?.error || "Gagal Tambah Member Baru" - ); + : message.error(response?.body?.error || "Gagal Tambah Member Baru"); await getData(); } catch (e) { console.log(e, "apa errornya"); @@ -302,7 +304,6 @@ export const Membership = observer(() => { setInitialData({}); } }; - return (
@@ -519,8 +520,8 @@ export const Membership = observer(() => { visible={visibleModal} confirmLoading={confirmLoading} initialData={initialData} - onCreate={async (data) => { - onSubmit(data); + onCreate={async (data,image,imageStore) => { + onSubmit(data,image,imageStore); }} onCancel={async () => { setInitialData({}); diff --git a/src/pages/Membership/MembershipModal.js b/src/pages/Membership/MembershipModal.js index b475231..b1c3176 100644 --- a/src/pages/Membership/MembershipModal.js +++ b/src/pages/Membership/MembershipModal.js @@ -157,7 +157,7 @@ export const MembershipModal = ({ form .validateFields() .then((values) => { - onCreate(values); + onCreate(values,responseFilename,responseFilenameStore); form.resetFields(); }) .catch((info) => { @@ -231,19 +231,71 @@ export const MembershipModal = ({ {((initialData.id && !initialData.isChangePassword) || !initialData.id) && store.authentication.userData.role === "Admin" && ( - - - +
+ + { + setValue(value); + }} + /> + + +
+ { + setPreviewImage(file.url || file.filename); + }} + showUploadList={true} + onChange={handleChange} + beforeUpload={(file) => beforeUpload(file)} + customRequest={(args) => uploadHandler(args)} + onRemove={(file) => { + setImage(""); + setLoading(false); + setFileList([]); + }} + > + {image === "" ? uploadButton : null} + +
+ Max size of file 2 MB +
+
+
+ + + +
)} {((initialData.id && !initialData.isChangePassword) || !initialData.id) && @@ -269,10 +321,7 @@ export const MembershipModal = ({ }} /> - +
{/* */} - +
{ key: "partner_transaction_code", }, { - title: "Transaction Date", + title: "Tanggal Transaksi", dataIndex: "created_at", key: "created_at", render: (text, record) => { return {format(parseISO(record.created_at), "dd-MM-yyyy")}; }, }, + { + title: "Alasan Gagal", + dataIndex: "failed_reason", + key: "failed_reason", + }, ]; const styleSaldoTitle = store.ui.mediaQuery.isDesktop