S. 전략 메뉴 컨트롤러 * 5130 프로젝트에서 마이그레이션된 정적 전략 보고서 페이지들 */ class StrategyController extends Controller { /** * Presentation 레이아웃 페이지를 위한 HX-Redirect 처리 * (presentation 레이아웃은 #main-content가 없어서 HTMX swap 불가) */ private function handlePresentationPage(Request $request, string $routeName): ?Response { if ($request->header('HX-Request')) { return response('', 200)->header('HX-Redirect', route($routeName)); } return null; } /** * 세무 전략 (장기적 세무전략 프레젠테이션) */ public function tax() { return view('lab.strategy.tax'); } /** * 노무 전략 */ public function labor() { return view('lab.strategy.labor'); } /** * 채권추심 전략 */ public function debt() { return view('lab.strategy.debt'); } /** * 스테이블코인 보고서 (presentation layout) */ public function stablecoin(Request $request): View|Response { if ($redirect = $this->handlePresentationPage($request, 'lab.strategy.stablecoin')) { return $redirect; } return view('lab.strategy.stablecoin'); } /** * MRP 해외사례 (presentation layout) */ public function mrpOverseas(Request $request): View|Response { if ($redirect = $this->handlePresentationPage($request, 'lab.strategy.mrp-overseas')) { return $redirect; } return view('lab.strategy.mrp-overseas'); } /** * 상담용 챗봇 전략 */ public function chatbot() { return view('lab.strategy.chatbot'); } /** * KoDATA vs NICE API 비교 */ public function kodataVsNice() { return view('lab.strategy.kodata-vs-nice'); } /** * 바로빌 vs 팝빌 API 비교 */ public function barobillVsPopbill() { return view('lab.strategy.barobill-vs-popbill'); } /** * 사내 지식 검색 시스템 */ public function knowledgeSearch() { return view('lab.strategy.knowledge-search'); } /** * 챗봇 솔루션 비교 분석 */ public function chatbotCompare() { return view('lab.strategy.chatbot-compare'); } /** * RAG 스타트업 현황 */ public function ragStartups() { return view('lab.strategy.rag-startups'); } /** * 더존비즈온 분석 */ public function douzone() { return view('lab.strategy.douzone'); } /** * Confluence vs Notion 비교 */ public function confluenceVsNotion() { return view('lab.strategy.confluence-vs-notion'); } /** * 차세대 QA 솔루션 (presentation layout) */ public function qaSolution(Request $request): View|Response { if ($redirect = $this->handlePresentationPage($request, 'lab.strategy.qa-solution')) { return $redirect; } return view('lab.strategy.qa-solution'); } /** * SAM 영업전략 (슬라이드 프레젠테이션) */ public function salesStrategy(Request $request): View|Response { if ($request->header('HX-Request')) { return response('', 200)->header('HX-Redirect', route('lab.strategy.sales-strategy')); } return view('lab.strategy.sales-strategy'); } }