feat: 시스템 게시판 API 추가 (/api/v1/system-boards)

- SystemBoardController: 시스템 게시판 목록/상세/필드 조회
- SystemPostController: 시스템 게시글 CRUD + 댓글 CRUD
- BoardService: getSystemBoardByCode(), getTenantBoardByCode() 추가
- PostService: 시스템/테넌트 게시판 전용 메서드 추가
- routes/api.php: /system-boards/* 엔드포인트 12개 추가
- SystemBoardApi.php: Swagger 문서

시스템 게시판 (is_system=true, tenant_id=null)과
테넌트 게시판 (is_system=false, tenant_id={current})의
board_code 중복 가능성으로 인해 별도 엔드포인트로 분리

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-12-28 00:53:26 +09:00
parent 472cf53289
commit ab77bab510
6 changed files with 846 additions and 18 deletions

View File

@@ -74,6 +74,28 @@ public function getBoardByCode(string $code): ?Board
->first();
}
/**
* 시스템 게시판 코드로 조회
*/
public function getSystemBoardByCode(string $code): ?Board
{
return Board::systemOnly()
->where('board_code', $code)
->where('is_active', true)
->first();
}
/**
* 테넌트 게시판 코드로 조회
*/
public function getTenantBoardByCode(string $code): ?Board
{
return Board::tenantOnly($this->tenantId())
->where('board_code', $code)
->where('is_active', true)
->first();
}
/**
* 시스템 게시판 ID로 조회 (mng용)
*/