refactor(WEB): 공통코드 클라이언트 훅 전환 및 품목 탭 동적 생성
- common-codes.ts에서 'use server' 제거, 타입/유틸리티만 유지 - useCommonCodes 훅 생성 (클라이언트 /api/proxy/ 패턴, 5분 캐시) - ItemListClient 탭/통계카드를 common_codes 기반 동적 생성으로 전환 - OrderSalesDetailEdit 서버액션 → useCommonCodes 훅 전환 - order-management actions.ts 서버액션 내 공통코드 직접 조회로 변경
This commit is contained in:
@@ -45,7 +45,7 @@ import {
|
||||
updateOrder,
|
||||
type OrderStatus,
|
||||
} from "@/components/orders";
|
||||
import { getDeliveryMethodOptions, getCommonCodeOptions } from "@/lib/api/common-codes";
|
||||
import { useCommonCodes } from "@/hooks/useCommonCodes";
|
||||
|
||||
// 수정 폼 데이터
|
||||
interface EditFormData {
|
||||
@@ -131,9 +131,9 @@ export function OrderSalesDetailEdit({ orderId }: OrderSalesDetailEditProps) {
|
||||
const [isSaving, setIsSaving] = useState(false);
|
||||
const [expandedProducts, setExpandedProducts] = useState<Set<string>>(new Set());
|
||||
|
||||
// 공통코드 옵션
|
||||
const [deliveryMethods, setDeliveryMethods] = useState<SelectOption[]>([]);
|
||||
const [shippingCosts, setShippingCosts] = useState<SelectOption[]>([]);
|
||||
// 공통코드 옵션 (useCommonCodes 훅)
|
||||
const { options: deliveryMethods } = useCommonCodes('delivery_method');
|
||||
const { options: shippingCosts } = useCommonCodes('shipping_cost');
|
||||
|
||||
// 제품-부품 트리 토글
|
||||
const toggleProduct = (key: string) => {
|
||||
@@ -259,23 +259,6 @@ export function OrderSalesDetailEdit({ orderId }: OrderSalesDetailEditProps) {
|
||||
loadOrder();
|
||||
}, [orderId, router]);
|
||||
|
||||
// 공통코드 옵션 로드
|
||||
useEffect(() => {
|
||||
async function loadCommonCodes() {
|
||||
const [deliveryResult, shippingResult] = await Promise.all([
|
||||
getDeliveryMethodOptions(),
|
||||
getCommonCodeOptions('shipping_cost'),
|
||||
]);
|
||||
|
||||
if (deliveryResult.success && deliveryResult.data) {
|
||||
setDeliveryMethods(deliveryResult.data);
|
||||
}
|
||||
if (shippingResult.success && shippingResult.data) {
|
||||
setShippingCosts(shippingResult.data);
|
||||
}
|
||||
}
|
||||
loadCommonCodes();
|
||||
}, []);
|
||||
|
||||
const handleCancel = () => {
|
||||
// V2 패턴: ?mode=view로 이동
|
||||
|
||||
Reference in New Issue
Block a user