diff --git a/app/Http/Controllers/Finance/JournalEntryController.php b/app/Http/Controllers/Finance/JournalEntryController.php index 4c0ac257..b30a5451 100644 --- a/app/Http/Controllers/Finance/JournalEntryController.php +++ b/app/Http/Controllers/Finance/JournalEntryController.php @@ -374,6 +374,10 @@ public function tradingPartners(Request $request): JsonResponse 'name' => $p->name, 'biz_no' => $p->biz_no, 'type' => $p->type, + 'category' => $p->category, + 'ceo' => $p->ceo, + 'address' => $p->address, + 'email' => $p->email, ]; }), ]); diff --git a/resources/views/barobill/hometax/index.blade.php b/resources/views/barobill/hometax/index.blade.php index 8194df0c..12a0ddf7 100644 --- a/resources/views/barobill/hometax/index.blade.php +++ b/resources/views/barobill/hometax/index.blade.php @@ -1409,7 +1409,7 @@ className="px-4 py-2 bg-stone-100 text-stone-700 rounded-lg text-sm font-medium }, []); const handleSelect = (partner) => { - onChange(partner.id, partner.name, partner.biz_no || ''); + onChange(partner.id, partner.name, partner.biz_no || '', partner); setIsOpen(false); setSearch(''); setHighlightIndex(-1); }; const handleClear = (e) => { e.stopPropagation(); onChange(null, '', ''); setSearch(''); }; @@ -1655,23 +1655,20 @@ className="px-4 py-2 text-sm font-medium text-white bg-violet-600 rounded-lg hov } }; - const handlePartnerSelect = (partnerId, partnerName, bizNo) => { + const handlePartnerSelect = (partnerId, partnerName, bizNo, partner) => { setSelectedPartnerId(partnerId); setSelectedPartnerName(partnerName); - const isSalesNow = form.invoice_type === 'sales'; - if (isSalesNow) { - setForm(prev => ({ - ...prev, - invoicee_corp_name: partnerName || '', - invoicee_corp_num: bizNo || prev.invoicee_corp_num, - })); - } else { - setForm(prev => ({ - ...prev, - invoicer_corp_name: partnerName || '', - invoicer_corp_num: bizNo || prev.invoicer_corp_num, - })); - } + const prefix = form.invoice_type === 'sales' ? 'invoicee' : 'invoicer'; + setForm(prev => ({ + ...prev, + [`${prefix}_corp_name`]: partnerName || '', + [`${prefix}_corp_num`]: bizNo || prev[`${prefix}_corp_num`], + [`${prefix}_ceo_name`]: partner?.ceo || '', + [`${prefix}_address`]: partner?.address || '', + [`${prefix}_biz_type`]: partner?.type || '', + [`${prefix}_biz_class`]: partner?.category || '', + [`${prefix}_email`]: partner?.email || '', + })); }; const totalAmount = (parseFloat(form.supply_amount) || 0) + (parseFloat(form.tax_amount) || 0);