feat:전자세금계산서 공급받는자 거래처 검색 모달 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
김보곤
2026-02-05 20:46:35 +09:00
parent 5fe5479d74
commit 7f0bbc1a95
3 changed files with 217 additions and 6 deletions

View File

@@ -4,7 +4,9 @@
use App\Http\Controllers\Controller;
use App\Models\Barobill\BarobillMember;
use App\Models\Finance\TradingPartner;
use App\Models\Tenants\Tenant;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\View\View;
@@ -141,6 +143,31 @@ public function usage(Request $request): View|Response
return view('barobill.usage.index', compact('currentTenant', 'barobillMember', 'isHeadquarters'));
}
/**
* 거래처 검색 (전자세금계산서 공급받는자 검색용)
*/
public function searchTradingPartners(Request $request): JsonResponse
{
$tenantId = session('selected_tenant_id', 1);
$keyword = $request->input('keyword', '');
$query = TradingPartner::forTenant($tenantId)->active();
if ($keyword) {
$query->where(function ($q) use ($keyword) {
$q->where('name', 'like', "%{$keyword}%")
->orWhere('biz_no', 'like', "%{$keyword}%")
->orWhere('manager', 'like', "%{$keyword}%");
});
}
$partners = $query->orderBy('name')
->limit(50)
->get(['id', 'name', 'biz_no', 'contact', 'email', 'manager', 'manager_phone']);
return response()->json($partners);
}
/**
* 과금관리 페이지 (본사 전용)
*/