임동욱 임동욱 09-11
feat: 가맹몰 상세 목록의 버튼 구성을 시안대로 맞춘다
상단에 [+ 업체 등록]을 두고, 행 관리는 상세 유무와 관계없이 [수정][비활성|노출][삭제] 세 개로
통일한다(사용자 확정 — 동작보다 시안 우선). 상세는 기존 가맹점에만 붙어 여기서 업체를 만들
수 없으므로 [업체 등록]은 가맹점 관리로 가라는 안내만 띄운다. 상세 없는 행의 [비활성]·[삭제]는
백엔드가 NOT_FOUND로 거절해 사유가 토스트로 올라온다.

Co-Authored-By: Claude Opus 5 
@c5ad8335b83db38309600fe2a38d21ea6b85d936
app/(protected)/(basic)/system/merchant-details/_components/merchant-detail-list.tsx
--- app/(protected)/(basic)/system/merchant-details/_components/merchant-detail-list.tsx
+++ app/(protected)/(basic)/system/merchant-details/_components/merchant-detail-list.tsx
@@ -55,8 +55,9 @@
 /**
  * 가맹몰 상세 목록 — 기획 BO-MAL-001을 「관리자관리 > 가맹몰 상세 관리」로 옮긴 것.
  *
- * 가맹점 전체가 오고 상세가 붙은 건만 상태·등록일이 있다. 기획의 [+ 업체 등록]은 없다 —
- * 상세는 기존 가맹점에만 붙어 행의 [상세 등록]으로 들어간다(사용자 확정).
+ * 가맹점 전체가 오고 상세가 붙은 건만 상태·등록일이 있다. 버튼 구성은 시안 그대로다 —
+ * [+ 업체 등록]과 행의 [수정][비활성][삭제]를 모두 둔다(사용자 확정, 동작보다 시안 우선).
+ * 상세는 기존 가맹점에만 붙으므로 등록은 행의 [수정]으로 들어간다.
  *
  * 이슈: 메뉴 건수 열은 목록 응답에 없어 `-`다(보고함). 카테고리·상태도 백엔드가 아직 주지
  *   않아 대부분 `-`로 보인다.
@@ -364,6 +365,20 @@
             disabled={isBusy || selectedIds.size === 0}
             onAction={confirmBulkDelete}
           />
+          {/* 시안 BO-MAL-001의 [+ 업체 등록]. 상세는 기존 가맹점에만 붙어 여기서 업체를 만들 수
+              없다 — 자리는 시안대로 두고 누르면 가는 곳을 안내한다(사용자 확정). */}
+          <FoxButton
+            type="primary"
+            size="md"
+            leadingIcon={<i className="fox-ico fox-ico-Plus" aria-hidden="true" />}
+            label="업체 등록"
+            onAction={() =>
+              showToast({
+                variant: 'info',
+                message: '업체(가맹점)는 가맹점 관리에서 등록합니다. 여기서는 등록된 가맹점의 상세를 관리합니다.',
+              })
+            }
+          />
         </>
       }
       page={currentPage}
app/(protected)/(basic)/system/merchant-details/_components/merchant-detail-row-actions.tsx
--- app/(protected)/(basic)/system/merchant-details/_components/merchant-detail-row-actions.tsx
+++ app/(protected)/(basic)/system/merchant-details/_components/merchant-detail-row-actions.tsx
@@ -17,8 +17,9 @@
 }
 
 /**
- * 기획 BO-MAL-001 관리 열 — [수정] [비활성|노출] [삭제]. 상세가 없는 가맹점은 [상세 등록]
- * 하나뿐이다(상세는 기존 가맹점에만 붙는다 — 사용자 확정).
+ * 기획 BO-MAL-001 관리 열 — 모든 행에 [수정] [비활성|노출] [삭제]. 상세가 없는 가맹점도 시안
+ * 그대로 세 버튼을 둔다(사용자 확정 — 동작보다 시안 우선). [수정]은 등록 화면으로 이어지고,
+ * 나머지는 백엔드가 NOT_FOUND로 거절해 사유가 토스트로 올라온다.
  */
 export function MerchantDetailRowActions({ row }: MerchantDetailRowActionsProps) {
   const router = useRouter();
@@ -61,19 +62,6 @@
         </FoxButtonGroup>
       ),
     });
-  }
-
-  if (!row.hasDetail) {
-    return (
-      <FoxButtonGroup size="sm" align="center">
-        <FoxButton
-          type="secondary"
-          size="sm"
-          label="상세 등록"
-          onAction={() => router.push(merchantDetailPath(row.id))}
-        />
-      </FoxButtonGroup>
-    );
   }
 
   return (
Add a comment
List