diff options
| author | it-fixcomart <it@fixcomart.co.id> | 2024-12-17 17:07:44 +0700 |
|---|---|---|
| committer | it-fixcomart <it@fixcomart.co.id> | 2024-12-17 17:07:44 +0700 |
| commit | dd8a56ad12d054e121965c41bcb077158690b208 (patch) | |
| tree | f49346100766651ca861f9793f68cfcb869c36f4 /src/lib/pengajuan-tempo/component/Pengiriman.jsx | |
| parent | 92c6c99e3b65b1770b02c2fd63c9c943f99cfda2 (diff) | |
<iman> update code
Diffstat (limited to 'src/lib/pengajuan-tempo/component/Pengiriman.jsx')
| -rw-r--r-- | src/lib/pengajuan-tempo/component/Pengiriman.jsx | 214 |
1 files changed, 122 insertions, 92 deletions
diff --git a/src/lib/pengajuan-tempo/component/Pengiriman.jsx b/src/lib/pengajuan-tempo/component/Pengiriman.jsx index 068cf73c..11586267 100644 --- a/src/lib/pengajuan-tempo/component/Pengiriman.jsx +++ b/src/lib/pengajuan-tempo/component/Pengiriman.jsx @@ -34,14 +34,6 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { const [zipsInvoice, setZipsInvoice] = useState([]); const [sameAddress, setSameAddress] = useState(false); const [sameAddressStreet, setSameAddressStreet] = useState(false); - const [everyWeekday, setEveryWeekday] = useState(false); - const [everyWeek, setEveryWeek] = useState(false); - const [tukarInvoice, setTukarInvoice] = useState(false); - const [everyWeekdayPembayaran, setEveryWeekdayPembayaran] = useState(false); - const [everyWeekPembayaran, setEveryWeekPembayaran] = useState(false); - const [tukarInvoicePembayaran, setTukarInvoicePembayaran] = useState(false); - const [selectedRadio, setSelectedRadio] = useState(''); - const [selectedRadioInvoice, setSelectedRadioInvoice] = useState(''); const [selectedIds, setSelectedIds] = useState( formPengiriman.dokumenPengiriman @@ -306,46 +298,6 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { updateFormPengiriman(name, value); validatePengiriman(); }; - const handleRadioChange = (value) => { - setSelectedRadio(value); - if (value == 'everyWeekday') { - setEveryWeekday(!everyWeekday); - } else if (value == 'everyWeek') { - setEveryWeek(!everyWeek); - } else { - setTukarInvoice(!tukarInvoice); - } - validatePengiriman(); - }; - const handleRadioChangeInvoice = (value) => { - setSelectedRadioInvoice(value); - if (value == 'everyWeekdayPembayaran') { - setEveryWeekdayPembayaran(!everyWeekdayPembayaran); - } else if (value == 'everyWeekPembayaran') { - setEveryWeekPembayaran(!everyWeekPembayaran); - } else { - setTukarInvoicePembayaran(!tukarInvoicePembayaran); - } - validatePengiriman(); - }; - const handleEveryWeekday = () => { - setEveryWeekday(!everyWeekday); - }; - const handleEveryWeek = () => { - setEveryWeek(!everyWeek); - }; - const handleTukarInvoice = () => { - setTukarInvoice(!tukarInvoice); - }; - const handleEveryWeekdayPembayaran = () => { - setEveryWeekdayPembayaran(!everyWeekdayPembayaran); - }; - const handleEveryWeekPembayaran = () => { - setEveryWeekPembayaran(!everyWeekPembayaran); - }; - const handleTukarInvoicePembayaran = () => { - setTukarInvoicePembayaran(!tukarInvoicePembayaran); - }; const isFormValid = useMemo( () => Object.keys(errorsPengiriman).length === 0, @@ -842,7 +794,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { </div> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errorsPengiriman.PICName} + {errorsPengiriman.PICName} {errorsPengiriman.PICTittle} </div> )} </div> @@ -968,7 +920,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.subDistrictPengiriman} + {errorsPengiriman.subDistrictPengiriman} </div> )} </div> @@ -987,7 +939,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.subDistrictPengiriman} + {errorsPengiriman.subDistrictPengiriman} </div> )} </div> @@ -996,19 +948,39 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { name='zipPengiriman' control={control} render={(props) => ( - <HookFormSelect - {...props} - options={zips} - disabled={ - !watchsubDistrict || sameAddressStreet - } - placeholder='Zip' - /> + <> + {/* Jika zips tidak kosong, tampilkan dropdown */} + {zips.length > 0 ? ( + <HookFormSelect + {...props} + options={zips} + disabled={ + !watchsubDistrict || sameAddressStreet + } + placeholder='Zip' + /> + ) : ( + // Jika zips kosong, tampilkan input manual + <input + id='zipPengiriman' + name='zipPengiriman' + ref={zipRef} + placeholder='Kode Pos' + type='number' + disabled={ + !watchsubDistrict || sameAddressStreet + } + value={formPengiriman.zipPengiriman} + className='form-input' + onChange={handleInputChange} + /> + )} + </> )} /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.zipPengiriman} + {errorsPengiriman.zipPengiriman} </div> )} </div> @@ -1054,7 +1026,8 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { </div> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errorsPengiriman.invoicePic} + {errorsPengiriman.invoicePic}{' '} + {errorsPengiriman.invoicePicTittle} </div> )} </div> @@ -1186,7 +1159,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.districtInvoice} + {errorsPengiriman.districtInvoice} </div> )} </div> @@ -1205,7 +1178,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.subDistrictsInvoice} + {errorsPengiriman.subDistrictsInvoice} </div> )} </div> @@ -1214,19 +1187,37 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { name='zipInvoice' control={control} render={(props) => ( - <HookFormSelect - {...props} - options={zipsInvoice} - disabled={ - !watchsubDistrictInvoice || sameAddress - } - placeholder='Zip' - /> + <> + {zipsInvoice.length > 0 ? ( + <HookFormSelect + {...props} + options={zipsInvoice} + disabled={ + !watchsubDistrictInvoice || sameAddress + } + placeholder='Zip' + /> + ) : ( + <input + id='zipInvoice' + name='zipInvoice' + ref={zipInvoiceRef} + placeholder='Kode Pos' + type='number' + disabled={ + !watchsubDistrictInvoice || sameAddress + } + value={formPengiriman.zipInvoice} + className='form-input' + onChange={handleInputChange} + /> + )} + </> )} /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.zipInvoice} + {errorsPengiriman.zipInvoice} </div> )} </div> @@ -1486,7 +1477,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { </div> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errorsPengiriman.PICName} + {errorsPengiriman.PICName} {errorsPengiriman.PICTittle} </div> )} </div> @@ -1607,7 +1598,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.subDistrictPengiriman} + {errorsPengiriman.subDistrictPengiriman} </div> )} </div> @@ -1626,7 +1617,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.subDistrictPengiriman} + {errorsPengiriman.subDistrictPengiriman} </div> )} </div> @@ -1635,17 +1626,35 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { name='zipPengiriman' control={control} render={(props) => ( - <HookFormSelect - {...props} - options={zips} - disabled={!watchsubDistrict || sameAddressStreet} - placeholder='Zip' - /> + <> + {/* Jika zips tidak kosong, tampilkan dropdown */} + {zips.length > 0 ? ( + <HookFormSelect + {...props} + options={zips} + disabled={!watchsubDistrict || sameAddressStreet} + placeholder='Zip' + /> + ) : ( + // Jika zips kosong, tampilkan input manual + <input + id='zipPengiriman' + name='zipPengiriman' + ref={zipRef} + placeholder='Kode Pos' + type='number' + disabled={!watchsubDistrict || sameAddressStreet} + value={formPengiriman.zipPengiriman} + className='form-input' + onChange={handleInputChange} + /> + )} + </> )} /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.zipPengiriman} + {errorsPengiriman.zipPengiriman} </div> )} </div> @@ -1685,7 +1694,8 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { </div> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errorsPengiriman.invoicePic} + {errorsPengiriman.invoicePic}{' '} + {errorsPengiriman.invoicePicTittle} </div> )} </div> @@ -1793,7 +1803,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.districtInvoice} + {errorsPengiriman.districtInvoice} </div> )} </div> @@ -1812,7 +1822,7 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.subDistrictsInvoice} + {errorsPengiriman.subDistrictsInvoice} </div> )} </div> @@ -1821,17 +1831,37 @@ const Pengiriman = ({ chekValid, buttonSubmitClick, isKonfirmasi }) => { name='zipInvoice' control={control} render={(props) => ( - <HookFormSelect - {...props} - options={zipsInvoice} - disabled={!watchsubDistrictInvoice || sameAddress} - placeholder='Zip' - /> + <> + {zipsInvoice.length > 0 ? ( + <HookFormSelect + {...props} + options={zipsInvoice} + disabled={ + !watchsubDistrictInvoice || sameAddress + } + placeholder='Zip' + /> + ) : ( + <input + id='zipInvoice' + name='zipInvoice' + ref={zipInvoiceRef} + placeholder='Kode Pos' + type='number' + disabled={ + !watchsubDistrictInvoice || sameAddress + } + value={formPengiriman.zipInvoice} + className='form-input' + onChange={handleInputChange} + /> + )} + </> )} /> {chekValid && ( <div className='text-caption-2 text-danger-500 mt-1'> - {errors.zipInvoice} + {errorsPengiriman.zipInvoice} </div> )} </div> |
