"use client"; import { MODEL_DATA_BANK } from "@/app_modules/investasi/_lib/interface"; import { ActionIcon, Button, Center, Grid, Group, Modal, Paper, ScrollArea, Stack, Switch, Table, Text, TextInput, Title, Tooltip } from "@mantine/core"; import { IconCirclePlus, IconEdit } from "@tabler/icons-react"; import _ from "lodash"; import { useState } from "react"; import { ComponentAdminGlobal_NotifikasiBerhasil } from "../../_admin_global/admin_notifikasi/notifikasi_berhasil"; import { ComponentAdminGlobal_NotifikasiGagal } from "../../_admin_global/admin_notifikasi/notifikasi_gagal"; import adminAppInformation_createBank from "../fun/create/fun_create_new_bank"; import adminAppInformation_getMasterBank from "../fun/master/get_list_bank"; import adminAppInformation_updateStatusBankById from "../fun/update/fun_udpate_status_bank"; import adminAppInformation_updateDataBankById from "../fun/update/fun_update_data_bank"; export default function InformasiBank({ listBank, }: { listBank: MODEL_DATA_BANK[]; }) { const [data, setData] = useState(listBank); const [isCreate, setIsCreate] = useState(false); const [newData, setNewData] = useState({ name: "", norek: "", }); const [isUpdate, setIsUpdate] = useState(false); const [updateData, setUpdateData] = useState({ id: "", name: "", norek: "", }); const [isActivation, setIsActivation] = useState(false); const [updateStatus, setUpdateStatus] = useState({ id: "", active: "", }); const [checked, setChecked] = useState(false); async function onCreate() { const create = await adminAppInformation_createBank({ data: newData }); if (create.status === 200) { const loadData = await adminAppInformation_getMasterBank(); setData(loadData); ComponentAdminGlobal_NotifikasiBerhasil(create.message); } else { ComponentAdminGlobal_NotifikasiGagal(create.message); } setIsCreate(false); } async function onUpdate() { const updt = await adminAppInformation_updateDataBankById({ data: updateData as any, }); if (updt.status === 200) { const loadData = await adminAppInformation_getMasterBank(); setData(loadData); ComponentAdminGlobal_NotifikasiBerhasil(updt.message); setIsUpdate(false); } else { ComponentAdminGlobal_NotifikasiGagal(updt.message); } } async function onUpdateActivation({ id, value, }: { id: string; value: boolean; }) { const data = { id: id, active: value, }; const updt = await adminAppInformation_updateStatusBankById({ data: data as any, }); if (updt.status === 200) { const loadData = await adminAppInformation_getMasterBank(); setData(loadData); ComponentAdminGlobal_NotifikasiBerhasil(updt.message); setIsActivation(false); } else { ComponentAdminGlobal_NotifikasiGagal(updt.message); } } const rowTable = _.isEmpty(data) ? (
|
|
|
|
|
|---|