From fd867a90e22fb2fc2fb16237165796ebe0cabab0 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Tue, 27 May 2025 08:29:22 +0700 Subject: off site merchant --- src/lib/merchant/components/Dokumen.jsx | 2434 +++++++++++++++---------------- 1 file changed, 1217 insertions(+), 1217 deletions(-) (limited to 'src/lib/merchant/components/Dokumen.jsx') diff --git a/src/lib/merchant/components/Dokumen.jsx b/src/lib/merchant/components/Dokumen.jsx index c13353e5..42a9426b 100644 --- a/src/lib/merchant/components/Dokumen.jsx +++ b/src/lib/merchant/components/Dokumen.jsx @@ -1,1252 +1,1252 @@ -import HookFormSelect from '@/core/components/elements/Select/HookFormSelect'; -import cityApi from '@/lib/address/api/cityApi'; -import stateApi from '@/lib/address/api/stateApi.js'; -import districtApi from '@/lib/address/api/districtApi'; -import subDistrictApi from '@/lib/address/api/subDistrictApi'; -import { yupResolver } from '@hookform/resolvers/yup'; -import React, { - useEffect, - useRef, - useState, - forwardRef, - useImperativeHandle, -} from 'react'; -import ReCAPTCHA from 'react-google-recaptcha'; -import { Controller, useForm } from 'react-hook-form'; -import { toast } from 'react-hot-toast'; -import * as Yup from 'yup'; -import createMerchantApi from '../api/createMerchantApi'; -import getMerchantApi from '../api/getMerchantApi'; -import addressApi from '@/lib/address/api/addressApi'; -import PageContent from '@/lib/content/components/PageContent'; -import { useRouter } from 'next/router'; -import useAuth from '@/core/hooks/useAuth'; -import { Radio, RadioGroup, Stack, Divider, Button } from '@chakra-ui/react'; -import { EyeIcon } from '@heroicons/react/24/outline'; -import BottomPopup from '@/core/components/elements/Popup/BottomPopup'; -import Image from 'next/image'; -import ImageBanner from '~/components/ui/image'; -import { ChevronRightIcon } from '@heroicons/react/24/outline'; -import MobileView from '@/core/components/views/MobileView'; -import DesktopView from '@/core/components/views/DesktopView'; -import getFileBase64 from '@/core/utils/getFileBase64'; -import odooApi from '~/libs/odooApi'; -const Dokumen = forwardRef( - ({ handleIsError, isKonfirmasi, buttonSubmitClick }, ref) => { - const isError = (value) => { - // Logika menentukan error - const result = value ? true : false; - handleIsError(result); // Panggil handleIsError dari Merchant - return result; - }; - const { - register, - handleSubmit, - formState: { errors }, - control, - reset, - watch, - setValue, - getValues, - } = useForm({ - resolver: yupResolver(validationSchema), - defaultValues, - }); +// import HookFormSelect from '@/core/components/elements/Select/HookFormSelect'; +// import cityApi from '@/lib/address/api/cityApi'; +// import stateApi from '@/lib/address/api/stateApi.js'; +// import districtApi from '@/lib/address/api/districtApi'; +// import subDistrictApi from '@/lib/address/api/subDistrictApi'; +// import { yupResolver } from '@hookform/resolvers/yup'; +// import React, { +// useEffect, +// useRef, +// useState, +// forwardRef, +// useImperativeHandle, +// } from 'react'; +// import ReCAPTCHA from 'react-google-recaptcha'; +// import { Controller, useForm } from 'react-hook-form'; +// import { toast } from 'react-hot-toast'; +// import * as Yup from 'yup'; +// import createMerchantApi from '../api/createMerchantApi'; +// import getMerchantApi from '../api/getMerchantApi'; +// import addressApi from '@/lib/address/api/addressApi'; +// import PageContent from '@/lib/content/components/PageContent'; +// import { useRouter } from 'next/router'; +// import useAuth from '@/core/hooks/useAuth'; +// import { Radio, RadioGroup, Stack, Divider, Button } from '@chakra-ui/react'; +// import { EyeIcon } from '@heroicons/react/24/outline'; +// import BottomPopup from '@/core/components/elements/Popup/BottomPopup'; +// import Image from 'next/image'; +// import ImageBanner from '~/components/ui/image'; +// import { ChevronRightIcon } from '@heroicons/react/24/outline'; +// import MobileView from '@/core/components/views/MobileView'; +// import DesktopView from '@/core/components/views/DesktopView'; +// import getFileBase64 from '@/core/utils/getFileBase64'; +// import odooApi from '~/libs/odooApi'; +// const Dokumen = forwardRef( +// ({ handleIsError, isKonfirmasi, buttonSubmitClick }, ref) => { +// const isError = (value) => { +// // Logika menentukan error +// const result = value ? true : false; +// handleIsError(result); // Panggil handleIsError dari Merchant +// return result; +// }; +// const { +// register, +// handleSubmit, +// formState: { errors }, +// control, +// reset, +// watch, +// setValue, +// getValues, +// } = useForm({ +// resolver: yupResolver(validationSchema), +// defaultValues, +// }); - const list_unit = [ - { - value: 'Manufacturing', - label: 'Manufacturing', - }, - { - value: 'Hospitality', - label: 'Hospitality', - }, - { - value: 'Automotive', - label: 'Automotive', - }, - { - value: 'Retail', - label: 'Retail', - }, - { - value: 'Maining', - label: 'Maining', - }, - { - value: 'Lain - Lain', - label: 'Lain - Lain', - }, - ]; - const [fileNames, setFileNames] = useState({}); - const [DeatailFile, setDetailFile] = useState({}); - const [isExample, setIsExample] = useState(false); - const [isPkp, setIsPkp] = useState(false); +// const list_unit = [ +// { +// value: 'Manufacturing', +// label: 'Manufacturing', +// }, +// { +// value: 'Hospitality', +// label: 'Hospitality', +// }, +// { +// value: 'Automotive', +// label: 'Automotive', +// }, +// { +// value: 'Retail', +// label: 'Retail', +// }, +// { +// value: 'Maining', +// label: 'Maining', +// }, +// { +// value: 'Lain - Lain', +// label: 'Lain - Lain', +// }, +// ]; +// const [fileNames, setFileNames] = useState({}); +// const [DeatailFile, setDetailFile] = useState({}); +// const [isExample, setIsExample] = useState(false); +// const [isPkp, setIsPkp] = useState(false); - const npwpRef = useRef(null); - const sppkpRef = useRef(null); - const ktpDirutRef = useRef(null); - const kartuNamaRef = useRef(null); - const suratPernyataanRef = useRef(null); - const fotoKantorRef = useRef(null); - const dataProdukRef = useRef(null); - const pricelistRef = useRef(null); - const router = useRouter(); +// const npwpRef = useRef(null); +// const sppkpRef = useRef(null); +// const ktpDirutRef = useRef(null); +// const kartuNamaRef = useRef(null); +// const suratPernyataanRef = useRef(null); +// const fotoKantorRef = useRef(null); +// const dataProdukRef = useRef(null); +// const pricelistRef = useRef(null); +// const router = useRouter(); - const auth = useAuth(); - if (auth == false) { - router.push(`/login?next=${encodeURIComponent('/daftar-merchant')}`); - } - useEffect(() => { - const loadData = async () => { - try { - const data = await getMerchantApi(); - if (data) { - setFileNames((prev) => ({ - ...prev, - ['npwp']: data.fileNpwp ? data.fileNpwp.name : '', - ['sppkp']: data.fileSppkp ? data.fileSppkp.name : '', - ['dokumenKtpDirut']: data.fileDokumenKtpDirut - ? data.fileDokumenKtpDirut.name - : '', - ['kartuNama']: data.fileKartuNama ? data.fileKartuNama.name : '', - ['suratPernyataan']: data.fileSuratPernyataan - ? data.fileSuratPernyataan.name - : '', - ['fotoKantor']: data.fileFotoKantor - ? data.fileFotoKantor.name - : '', - ['dataProduk']: data.fileDataProduk - ? data.fileDataProduk.name - : '', - ['pricelist']: data.filePricelist ? data.filePricelist.name : '', - })); - } - } catch (error) { - console.error('Error loading profile:', error); - handleIsError(true); // Jika ada error, panggil fungsi error handler - } - }; +// const auth = useAuth(); +// if (auth == false) { +// router.push(`/login?next=${encodeURIComponent('/daftar-merchant')}`); +// } +// useEffect(() => { +// const loadData = async () => { +// try { +// const data = await getMerchantApi(); +// if (data) { +// setFileNames((prev) => ({ +// ...prev, +// ['npwp']: data.fileNpwp ? data.fileNpwp.name : '', +// ['sppkp']: data.fileSppkp ? data.fileSppkp.name : '', +// ['dokumenKtpDirut']: data.fileDokumenKtpDirut +// ? data.fileDokumenKtpDirut.name +// : '', +// ['kartuNama']: data.fileKartuNama ? data.fileKartuNama.name : '', +// ['suratPernyataan']: data.fileSuratPernyataan +// ? data.fileSuratPernyataan.name +// : '', +// ['fotoKantor']: data.fileFotoKantor +// ? data.fileFotoKantor.name +// : '', +// ['dataProduk']: data.fileDataProduk +// ? data.fileDataProduk.name +// : '', +// ['pricelist']: data.filePricelist ? data.filePricelist.name : '', +// })); +// } +// } catch (error) { +// console.error('Error loading profile:', error); +// handleIsError(true); // Jika ada error, panggil fungsi error handler +// } +// }; - loadData(); - }, [reset, handleIsError]); +// loadData(); +// }, [reset, handleIsError]); - useEffect(() => { - if (!isKonfirmasi) { - window.scrollTo({ - top: 0, - behavior: 'smooth', - }); - } - }, []); - useImperativeHandle(ref, () => () => { - handleSubmit(onSubmitHandler)(); - }); - useEffect(() => { - const loadProfile = async () => { - try { - const dataProfile = await addressApi({ - id: auth.parentId ? auth.parentId : auth.partnerId, - }); - if (dataProfile.companyType == 'pkp') { - setIsPkp(true); - } - setValue('company', dataProfile?.name); - setValue('address', dataProfile?.alamatBisnis); - setValue('state', parseInt(dataProfile.stateId.id)); - setValue('city', parseInt(dataProfile.city.id)); - setValue('district', parseInt(dataProfile.district.id)); - setValue('subDistrict', parseInt(dataProfile.subDistrict.id)); - setValue('zip', parseInt(dataProfile.zip)); - } catch (error) { - console.error('Error loading profile:', error); - } - }; +// useEffect(() => { +// if (!isKonfirmasi) { +// window.scrollTo({ +// top: 0, +// behavior: 'smooth', +// }); +// } +// }, []); +// useImperativeHandle(ref, () => () => { +// handleSubmit(onSubmitHandler)(); +// }); +// useEffect(() => { +// const loadProfile = async () => { +// try { +// const dataProfile = await addressApi({ +// id: auth.parentId ? auth.parentId : auth.partnerId, +// }); +// if (dataProfile.companyType == 'pkp') { +// setIsPkp(true); +// } +// setValue('company', dataProfile?.name); +// setValue('address', dataProfile?.alamatBisnis); +// setValue('state', parseInt(dataProfile.stateId.id)); +// setValue('city', parseInt(dataProfile.city.id)); +// setValue('district', parseInt(dataProfile.district.id)); +// setValue('subDistrict', parseInt(dataProfile.subDistrict.id)); +// setValue('zip', parseInt(dataProfile.zip)); +// } catch (error) { +// console.error('Error loading profile:', error); +// } +// }; - loadProfile(); - }, [auth?.parentId]); +// loadProfile(); +// }, [auth?.parentId]); - const onSubmitHandler = async (values) => { - const options = { - behavior: 'smooth', - block: 'center', - }; - const npwp = { name: fileNames.npwp, format: DeatailFile.npwp }; - const sppkp = { name: fileNames.sppkp, format: DeatailFile.sppkp }; - const dokumenKtpDirut = { - name: fileNames.dokumenKtpDirut, - format: DeatailFile.dokumenKtpDirut, - }; - const kartuNama = { - name: fileNames.kartuNama, - format: DeatailFile.kartuNama, - }; - const suratPernyataan = { - name: fileNames.suratPernyataan, - format: DeatailFile.suratPernyataan, - }; - const fotoKantor = { - name: fileNames.fotoKantor, - format: DeatailFile.fotoKantor, - }; - const dataProduk = { - name: fileNames.dataProduk, - format: DeatailFile.dataProduk, - }; - const pricelist = { - name: fileNames.pricelist, - format: DeatailFile.pricelist, - }; +// const onSubmitHandler = async (values) => { +// const options = { +// behavior: 'smooth', +// block: 'center', +// }; +// const npwp = { name: fileNames.npwp, format: DeatailFile.npwp }; +// const sppkp = { name: fileNames.sppkp, format: DeatailFile.sppkp }; +// const dokumenKtpDirut = { +// name: fileNames.dokumenKtpDirut, +// format: DeatailFile.dokumenKtpDirut, +// }; +// const kartuNama = { +// name: fileNames.kartuNama, +// format: DeatailFile.kartuNama, +// }; +// const suratPernyataan = { +// name: fileNames.suratPernyataan, +// format: DeatailFile.suratPernyataan, +// }; +// const fotoKantor = { +// name: fileNames.fotoKantor, +// format: DeatailFile.fotoKantor, +// }; +// const dataProduk = { +// name: fileNames.dataProduk, +// format: DeatailFile.dataProduk, +// }; +// const pricelist = { +// name: fileNames.pricelist, +// format: DeatailFile.pricelist, +// }; - if (!npwp.name && isPkp) { - if (npwpRef?.current) { - npwpRef.current.scrollIntoView(options); - } - toast.error('NPWP wajib di tambahkan'); - return; - } - if (!sppkp.name && isPkp) { - toast.error('SPPKP wajib di tambahkan'); - if (sppkpRef?.current) { - sppkpRef.current.scrollIntoView(options); - } - return; - } - if (!dokumenKtpDirut.name && !isPkp) { - toast.error('KTP Dirut/Direktur wajib di tambahkan'); - if (ktpDirutRef?.current) { - ktpDirutRef.current.scrollIntoView(options); - } - return; - } - if (!fotoKantor.name) { - toast.error('Foto Gudang / Kantor Bagian Depan wajib di tambahkan'); - if (fotoKantorRef?.current) { - fotoKantorRef.current.scrollIntoView(options); - } - return; - } - if (!pricelist.name) { - toast.error('Pricelist wajib di tambahkan'); - if (pricelistRef?.current) { - pricelistRef.current.scrollIntoView(options); - } - return; - } - const toastId = toast.loading('Mengirimkan formulir merchant...'); - const dokumen = { - file_npwp: { details: npwp.format ? npwp : '' }, - file_sppkp: { details: sppkp.format ? sppkp : '' }, - file_dokumenKtpDirut: { - details: dokumenKtpDirut.format ? dokumenKtpDirut : '', - }, - file_kartuNama: { details: kartuNama.format ? kartuNama : '' }, - file_suratPernyataan: { - details: suratPernyataan.format ? suratPernyataan : '', - }, - file_fotoKantor: { details: fotoKantor.format ? fotoKantor : '' }, - file_dataProduk: { details: dataProduk.format ? dataProduk : '' }, - file_pricelist: { details: pricelist.format ? pricelist : '' }, - }; - let data = { - file_dokumen: JSON.stringify(dokumen), - }; - const create_leads = await createMerchantApi({ data }); - if (create_leads) { - toast.dismiss(toastId); - toast.success('Berhasil menambahkan data'); - isError(false); - reset(); - } else { - toast.dismiss(toastId); - toast.error('Gagal menambahkan data'); - } - }; +// if (!npwp.name && isPkp) { +// if (npwpRef?.current) { +// npwpRef.current.scrollIntoView(options); +// } +// toast.error('NPWP wajib di tambahkan'); +// return; +// } +// if (!sppkp.name && isPkp) { +// toast.error('SPPKP wajib di tambahkan'); +// if (sppkpRef?.current) { +// sppkpRef.current.scrollIntoView(options); +// } +// return; +// } +// if (!dokumenKtpDirut.name && !isPkp) { +// toast.error('KTP Dirut/Direktur wajib di tambahkan'); +// if (ktpDirutRef?.current) { +// ktpDirutRef.current.scrollIntoView(options); +// } +// return; +// } +// if (!fotoKantor.name) { +// toast.error('Foto Gudang / Kantor Bagian Depan wajib di tambahkan'); +// if (fotoKantorRef?.current) { +// fotoKantorRef.current.scrollIntoView(options); +// } +// return; +// } +// if (!pricelist.name) { +// toast.error('Pricelist wajib di tambahkan'); +// if (pricelistRef?.current) { +// pricelistRef.current.scrollIntoView(options); +// } +// return; +// } +// const toastId = toast.loading('Mengirimkan formulir merchant...'); +// const dokumen = { +// file_npwp: { details: npwp.format ? npwp : '' }, +// file_sppkp: { details: sppkp.format ? sppkp : '' }, +// file_dokumenKtpDirut: { +// details: dokumenKtpDirut.format ? dokumenKtpDirut : '', +// }, +// file_kartuNama: { details: kartuNama.format ? kartuNama : '' }, +// file_suratPernyataan: { +// details: suratPernyataan.format ? suratPernyataan : '', +// }, +// file_fotoKantor: { details: fotoKantor.format ? fotoKantor : '' }, +// file_dataProduk: { details: dataProduk.format ? dataProduk : '' }, +// file_pricelist: { details: pricelist.format ? pricelist : '' }, +// }; +// let data = { +// file_dokumen: JSON.stringify(dokumen), +// }; +// const create_leads = await createMerchantApi({ data }); +// if (create_leads) { +// toast.dismiss(toastId); +// toast.success('Berhasil menambahkan data'); +// isError(false); +// reset(); +// } else { +// toast.dismiss(toastId); +// toast.error('Gagal menambahkan data'); +// } +// }; - if (!auth) { - return; - } +// if (!auth) { +// return; +// } - const handleFileChange = async (event) => { - let fileBase64 = ''; - const file = event.target.files[0]; +// const handleFileChange = async (event) => { +// let fileBase64 = ''; +// const file = event.target.files[0]; - if (file.size > 2000000) { - // try { - // const toastId = toast.loading('mencoba mengompresi file...'); - // // Compress image file - // const options = { - // maxSizeMB: 0.5, // Target size in MB - // maxWidthOrHeight: 1920, // Adjust as needed - // useWebWorker: true, - // }; - // const compressedFile = await imageCompression(file, options); - // toast.success('berhasil mengompresi file', { duration: 4000 }); - // // Convert compressed file to Base64 - // fileBase64 = await getFileBase64(compressedFile); - // } catch (error) { - // toast.error('Gagal mengompresi file', { duration: 4000 }); - // } - toast.error('Maks file size 2MB', { duration: 4000 }); - } else { - // Convert file to Base64 - fileBase64 = await getFileBase64(file); - } - const fieldName = event.target.name; // Nama input file - setDetailFile((prev) => ({ - ...prev, - [fieldName]: file ? fileBase64 : '', // Tambahkan atau perbarui file di state - })); - setFileNames((prev) => ({ - ...prev, - [fieldName]: file ? file.name : '', // Tambahkan atau perbarui file di state - })); - }; - return ( - <> - setIsExample(false)} - > -
- Contoh SPPKP -
-
- -
-

- Dokumen -

+// if (file.size > 2000000) { +// // try { +// // const toastId = toast.loading('mencoba mengompresi file...'); +// // // Compress image file +// // const options = { +// // maxSizeMB: 0.5, // Target size in MB +// // maxWidthOrHeight: 1920, // Adjust as needed +// // useWebWorker: true, +// // }; +// // const compressedFile = await imageCompression(file, options); +// // toast.success('berhasil mengompresi file', { duration: 4000 }); +// // // Convert compressed file to Base64 +// // fileBase64 = await getFileBase64(compressedFile); +// // } catch (error) { +// // toast.error('Gagal mengompresi file', { duration: 4000 }); +// // } +// toast.error('Maks file size 2MB', { duration: 4000 }); +// } else { +// // Convert file to Base64 +// fileBase64 = await getFileBase64(file); +// } +// const fieldName = event.target.name; // Nama input file +// setDetailFile((prev) => ({ +// ...prev, +// [fieldName]: file ? fileBase64 : '', // Tambahkan atau perbarui file di state +// })); +// setFileNames((prev) => ({ +// ...prev, +// [fieldName]: file ? file.name : '', // Tambahkan atau perbarui file di state +// })); +// }; +// return ( +// <> +// setIsExample(false)} +// > +//
+// Contoh SPPKP +//
+//
+// +//
+//

+// Dokumen +//

-
-
-
-
- - {!isKonfirmasi && ( - - Pastikan dokumen yang anda upload sudah benar - - )} -
-
-
- {isKonfirmasi && ( - - {fileNames.npwp} - - )} - - { - handleFileChange(e); // Untuk update UI (opsional) - }} - aria-invalid={errors.npwp?.message} - /> - {!isKonfirmasi && ( - - {fileNames.npwp} - - )} -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} +//
+// +//
+//
+// +// {!isKonfirmasi && ( +// +// Pastikan dokumen yang anda upload sudah benar +// +// )} +//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.npwp} +// +// )} +// +// { +// handleFileChange(e); // Untuk update UI (opsional) +// }} +// aria-invalid={errors.npwp?.message} +// /> +// {!isKonfirmasi && ( +// +// {fileNames.npwp} +// +// )} +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} -
- {errors.npwp?.message} -
-
-
-
-
-
- - {!isKonfirmasi && ( - - Pastikan dokumen yang anda upload sudah benar - - )} -
-
setIsExample(!isExample)} - className={`h-fit ${ - !isKonfirmasi && 'mr-8' - } rounded text-white p-2 flex flex-row items-center bg-red-500 hover:cursor-pointer hover:bg-red-400`} - > - - {!isKonfirmasi && ( -

Lihat Contoh

- )} -
-
-
-
- {isKonfirmasi && ( - - {fileNames.sppkp} - - )} - - -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} +//
+// {errors.npwp?.message} +//
+//
+//
+//
+//
+//
+// +// {!isKonfirmasi && ( +// +// Pastikan dokumen yang anda upload sudah benar +// +// )} +//
+//
setIsExample(!isExample)} +// className={`h-fit ${ +// !isKonfirmasi && 'mr-8' +// } rounded text-white p-2 flex flex-row items-center bg-red-500 hover:cursor-pointer hover:bg-red-400`} +// > +// +// {!isKonfirmasi && ( +//

Lihat Contoh

+// )} +//
+//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.sppkp} +// +// )} +// +// +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} -
- {errors.sppkp?.message} -
-
-
+//
+// {errors.sppkp?.message} +//
+//
+//
-
-
- - {!isKonfirmasi && ( - - Pastikan dokumen yang anda upload sudah benar - - )} -
-
-
- {isKonfirmasi && ( - - {fileNames.dokumenKtpDirut} - - )} - - - {!isKonfirmasi && ( - - {fileNames.dokumenKtpDirut} - - )} -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} +//
+//
+// +// {!isKonfirmasi && ( +// +// Pastikan dokumen yang anda upload sudah benar +// +// )} +//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.dokumenKtpDirut} +// +// )} +// +// +// {!isKonfirmasi && ( +// +// {fileNames.dokumenKtpDirut} +// +// )} +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} -
- {errors.dokumenKtpDirut?.message} -
-
-
+//
+// {errors.dokumenKtpDirut?.message} +//
+//
+//
-
-
- - {!isKonfirmasi && ( - - Pastikan dokumen yang anda upload sudah benar - - )} -
-
-
- {isKonfirmasi && ( - - {fileNames.kartuNama} - - )} - - - {!isKonfirmasi && ( - - {fileNames.kartuNama} - - )} -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} +//
+//
+// +// {!isKonfirmasi && ( +// +// Pastikan dokumen yang anda upload sudah benar +// +// )} +//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.kartuNama} +// +// )} +// +// +// {!isKonfirmasi && ( +// +// {fileNames.kartuNama} +// +// )} +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} -
- {errors.kartuNama?.message} -
-
-
+//
+// {errors.kartuNama?.message} +//
+//
+//
-
-
-
- - {!isKonfirmasi && ( - - Wajib diisi jika nomor rekening berbeda dengan nama - perusahaan - - )} -
- -

Download Template

-
-
-
-
- {isKonfirmasi && ( - - {fileNames.suratPernyataan} - - )} - - - {!isKonfirmasi && ( - - {fileNames.suratPernyataan} - - )} -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} +//
+//
+//
+// +// {!isKonfirmasi && ( +// +// Wajib diisi jika nomor rekening berbeda dengan nama +// perusahaan +// +// )} +//
+// +//

Download Template

+//
+//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.suratPernyataan} +// +// )} +// +// +// {!isKonfirmasi && ( +// +// {fileNames.suratPernyataan} +// +// )} +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} -
- {errors.suratPernyataan?.message} -
-
-
-
-
- - {!isKonfirmasi && ( - - Pastikan dokumen yang anda upload sudah benar - - )} -
-
-
- {isKonfirmasi && ( - - {fileNames.fotoKantor} - - )} - - - {!isKonfirmasi && ( - - {fileNames.fotoKantor} - - )} -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} -
- {errors.fotoKantor?.message} -
-
-
-
-
- - {!isKonfirmasi && ( - - Pastikan dokumen yang anda upload sudah benar - - )} -
-
-
- {isKonfirmasi && ( - - {fileNames.dataProduk} - - )} - - - {!isKonfirmasi && ( - - {fileNames.dataProduk} - - )} -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} +//
+// {errors.suratPernyataan?.message} +//
+//
+//
+//
+//
+// +// {!isKonfirmasi && ( +// +// Pastikan dokumen yang anda upload sudah benar +// +// )} +//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.fotoKantor} +// +// )} +// +// +// {!isKonfirmasi && ( +// +// {fileNames.fotoKantor} +// +// )} +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} +//
+// {errors.fotoKantor?.message} +//
+//
+//
+//
+//
+// +// {!isKonfirmasi && ( +// +// Pastikan dokumen yang anda upload sudah benar +// +// )} +//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.dataProduk} +// +// )} +// +// +// {!isKonfirmasi && ( +// +// {fileNames.dataProduk} +// +// )} +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} -
- {errors.dataProduk?.message} -
-
-
-
-
- - {!isKonfirmasi && ( - - Pastikan dokumen yang anda upload sudah benar - - )} -
-
-
- {isKonfirmasi && ( - - {fileNames.pricelist} - - )} - - - {!isKonfirmasi && ( - - {fileNames.pricelist} - - )} -
- {!isKonfirmasi && ( - - Format: pdf, jpeg, jpg, png. max file size 2MB - - )} -
- {errors.pricelist?.message} -
-
-
-
- {/*
- -
*/} -
-
- {/* */} - {!isKonfirmasi && ( -
- - *Pastikan data yang anda masukan sudah benar dan sesuai - - -
- )} -
- - -
-
- - -
- {!isKonfirmasi && ( -

Dokumen

- )} +//
+// {errors.dataProduk?.message} +//
+//
+//
+//
+//
+// +// {!isKonfirmasi && ( +// +// Pastikan dokumen yang anda upload sudah benar +// +// )} +//
+//
+//
+// {isKonfirmasi && ( +// +// {fileNames.pricelist} +// +// )} +// +// +// {!isKonfirmasi && ( +// +// {fileNames.pricelist} +// +// )} +//
+// {!isKonfirmasi && ( +// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// +// )} +//
+// {errors.pricelist?.message} +//
+//
+//
+//
+// {/*
+// +//
*/} +//
+//
+// {/* */} +// {!isKonfirmasi && ( +//
+// +// *Pastikan data yang anda masukan sudah benar dan sesuai +// +// +//
+// )} +//
+// +// +//
+//
+//
+// +//
+// {!isKonfirmasi && ( +//

Dokumen

+// )} -
-
-
- -
- - { - handleFileChange(e); // Untuk update UI (opsional) - }} - aria-invalid={errors.npwp?.message} - /> - - {fileNames.npwp} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//
+// +//
+// +//
+// +// { +// handleFileChange(e); // Untuk update UI (opsional) +// }} +// aria-invalid={errors.npwp?.message} +// /> +// +// {fileNames.npwp} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.npwp?.message} -
-
-
-
- -
setIsExample(!isExample)} - className='h-fit rounded text-white p-2 flex flex-row items-center bg-red-500 hover:cursor-pointer hover:bg-red-400' - > - +//
+// {errors.npwp?.message} +//
+//
+//
+//
+// +//
setIsExample(!isExample)} +// className='h-fit rounded text-white p-2 flex flex-row items-center bg-red-500 hover:cursor-pointer hover:bg-red-400' +// > +// -

Lihat Contoh

-
-
-
- - - - {fileNames.sppkp} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//

Lihat Contoh

+//
+//
+//
+// +// +// +// {fileNames.sppkp} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.sppkp?.message} -
-
+//
+// {errors.sppkp?.message} +//
+//
-
- -
- - - - {fileNames.dokumenKtpDirut} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//
+// +//
+// +// +// +// {fileNames.dokumenKtpDirut} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.dokumenKtpDirut?.message} -
-
+//
+// {errors.dokumenKtpDirut?.message} +//
+//
-
- -
- - - - {fileNames.kartuNama} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//
+// +//
+// +// +// +// {fileNames.kartuNama} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.kartuNama?.message} -
-
+//
+// {errors.kartuNama?.message} +//
+//
-
-
- - -

- Download Template -

-
-
-
- - - - {fileNames.suratPernyataan} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//
+//
+// +// +//

+// Download Template +//

+//
+//
+//
+// +// +// +// {fileNames.suratPernyataan} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.suratPernyataan?.message} -
-
-
- -
- - - - {fileNames.fotoKantor} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//
+// {errors.suratPernyataan?.message} +//
+//
+//
+// +//
+// +// +// +// {fileNames.fotoKantor} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.fotoKantor?.message} -
-
-
- -
- - - - {fileNames.dataProduk} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//
+// {errors.fotoKantor?.message} +//
+//
+//
+// +//
+// +// +// +// {fileNames.dataProduk} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.fotoKantor?.message} -
-
-
- -
- - - - {fileNames.pricelist} - -
- - Format: pdf, jpeg, jpg, png. max file size 2MB - +//
+// {errors.fotoKantor?.message} +//
+//
+//
+// +//
+// +// +// +// {fileNames.pricelist} +// +//
+// +// Format: pdf, jpeg, jpg, png. max file size 2MB +// -
- {errors.pricelist?.message} -
-
-
- {/*
- -
*/} -
-
- {/* */} - {!isKonfirmasi && ( -
- - *Pastikan data yang anda masukan sudah benar dan sesuai - - -
- )} -
- - -
-
- - - ); - } -); -const validationSchema = Yup.object().shape({ - npwp: Yup.mixed().required('File is required'), - pricelist: Yup.mixed().required('File is required'), -}); -const defaultValues = { - company: '', - pejabatName: '', - PICName: '', - PICPosition: '', - email: '', - emailSales: '', - emailFinance: '', - phone: '', - state: '', - city: '', - district: '', - subDistrict: '', - zip: '', - bank: '', - rekening: '', - accountNumber: '', - address: '', - mobile: '', -}; +//
+// {errors.pricelist?.message} +//
+//
+//
+// {/*
+// +//
*/} +//
+//
+// {/* */} +// {!isKonfirmasi && ( +//
+// +// *Pastikan data yang anda masukan sudah benar dan sesuai +// +// +//
+// )} +//
+// +// +//
+//
+// +// +// ); +// } +// ); +// const validationSchema = Yup.object().shape({ +// npwp: Yup.mixed().required('File is required'), +// pricelist: Yup.mixed().required('File is required'), +// }); +// const defaultValues = { +// company: '', +// pejabatName: '', +// PICName: '', +// PICPosition: '', +// email: '', +// emailSales: '', +// emailFinance: '', +// phone: '', +// state: '', +// city: '', +// district: '', +// subDistrict: '', +// zip: '', +// bank: '', +// rekening: '', +// accountNumber: '', +// address: '', +// mobile: '', +// }; -export default Dokumen; +// export default Dokumen; -- cgit v1.2.3