summaryrefslogtreecommitdiff
path: root/lib/basic-contract/service-vendor-info.ts
blob: 2fe2d512a29d161b975f95050eb63ac7880479d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
"use server";

import db from "@/db/db";
import { vendors } from "@/db/schema";
import { eq } from "drizzle-orm";

/**
 * 벤더 ID로 벤더 정보 조회 (사업자번호 등)
 */
export async function getVendorInfo(vendorId: number) {
  try {
    const result = await db
      .select({
        id: vendors.id,
        vendorName: vendors.vendorName,
        vendorCode: vendors.vendorCode,
        taxId: vendors.taxId, // 사업자등록번호
        corporateRegistrationNumber: vendors.corporateRegistrationNumber, // 법인등록번호
        country: vendors.country, // 국가 코드 (KR: 내자, 그외: 외자)
      })
      .from(vendors)
      .where(eq(vendors.id, vendorId))
      .limit(1);

    if (!result || result.length === 0) {
      return { success: false, error: "Vendor not found" };
    }

    return { success: true, data: result[0] };
  } catch (error) {
    console.error("Error fetching vendor info:", error);
    return { success: false, error: "Failed to fetch vendor info" };
  }
}