select(['code_group', 'code', 'name', 'description', 'is_active']) ->where('tenant_id', app('tenant_id')) ->get(); }, '공통코드'); } /** * @OA\Get( * path="/api/v1/settings/common", * summary="공통 코드 목록 조회", * description="전체 공통 코드 목록을 조회합니다.", * tags={"Settings - Common Codes"}, * security={{"ApiKeyAuth": {}, "BearerAuth": {}}}, * * @OA\Response( * response=200, * description="공통 코드 목록 조회 성공" * ) * ) */ public function list(Request $request) { return ApiResponse::handle(function () { // Service implementation needed return []; }, __('message.fetched')); } /** * @OA\Get( * path="/api/v1/settings/common/{group}", * summary="특정 그룹 공통 코드 조회", * description="특정 그룹의 공통 코드 목록을 조회합니다.", * tags={"Settings - Common Codes"}, * security={{"ApiKeyAuth": {}, "BearerAuth": {}}}, * * @OA\Parameter( * name="group", * in="path", * required=true, * description="코드 그룹", * * @OA\Schema(type="string", example="product_type") * ), * * @OA\Response( * response=200, * description="그룹 코드 조회 성공" * ) * ) */ public function index(Request $request, string $group) { return ApiResponse::handle(function () { // Service implementation needed return []; }, __('message.fetched')); } /** * @OA\Post( * path="/api/v1/settings/common", * summary="공통 코드 생성", * description="새로운 공통 코드를 생성합니다.", * tags={"Settings - Common Codes"}, * security={{"ApiKeyAuth": {}, "BearerAuth": {}}}, * * @OA\RequestBody( * required=true, * * @OA\JsonContent( * type="object", * * @OA\Property(property="code_group", type="string", example="product_type"), * @OA\Property(property="code", type="string", example="SERVICE"), * @OA\Property(property="name", type="string", example="서비스"), * @OA\Property(property="description", type="string", example="서비스 상품") * ) * ), * * @OA\Response( * response=201, * description="공통 코드 생성 성공" * ), * @OA\Response( * response=409, * description="중복된 공통 코드", * * @OA\JsonContent( * type="object", * * @OA\Property(property="success", type="boolean", example=false), * @OA\Property(property="message", type="string", example="중복된 공통 코드가 존재합니다.") * ) * ), * * @OA\Response( * response=422, * description="유효성 검사 실패", * * @OA\JsonContent(ref="#/components/schemas/ErrorResponse") * ) * ) */ public function store(Request $request) { return ApiResponse::handle(function () { // Service implementation needed return []; }, __('message.settings.common_code_saved')); } /** * @OA\Patch( * path="/api/v1/settings/common/{id}", * summary="공통 코드 수정", * description="기존 공통 코드를 수정합니다.", * tags={"Settings - Common Codes"}, * security={{"ApiKeyAuth": {}, "BearerAuth": {}}}, * * @OA\Parameter( * name="id", * in="path", * required=true, * description="공통 코드 ID", * * @OA\Schema(type="integer", example=1) * ), * * @OA\RequestBody( * required=true, * * @OA\JsonContent( * type="object", * * @OA\Property(property="name", type="string", example="수정된 이름"), * @OA\Property(property="description", type="string", example="수정된 설명") * ) * ), * * @OA\Response( * response=200, * description="공통 코드 수정 성공" * ), * @OA\Response( * response=404, * description="공통 코드를 찾을 수 없음", * * @OA\JsonContent( * type="object", * * @OA\Property(property="success", type="boolean", example=false), * @OA\Property(property="message", type="string", example="해당 공통 코드를 찾을 수 없습니다.") * ) * ), * * @OA\Response( * response=422, * description="유효성 검사 실패", * * @OA\JsonContent(ref="#/components/schemas/ErrorResponse") * ) * ) */ public function update(Request $request, int $id) { return ApiResponse::handle(function () { // Service implementation needed return []; }, __('message.updated')); } /** * @OA\Delete( * path="/api/v1/settings/common/{id}", * summary="공통 코드 삭제", * description="공통 코드를 삭제합니다.", * tags={"Settings - Common Codes"}, * security={{"ApiKeyAuth": {}, "BearerAuth": {}}}, * * @OA\Parameter( * name="id", * in="path", * required=true, * description="공통 코드 ID", * * @OA\Schema(type="integer", example=1) * ), * * @OA\Response( * response=200, * description="공통 코드 삭제 성공" * ), * @OA\Response( * response=404, * description="공통 코드를 찾을 수 없음", * * @OA\JsonContent( * type="object", * * @OA\Property(property="success", type="boolean", example=false), * @OA\Property(property="message", type="string", example="해당 공통 코드를 찾을 수 없습니다.") * ) * ) * ) */ public function destroy(Request $request, int $id) { return ApiResponse::handle(function () { // Service implementation needed return []; }, __('message.deleted')); } }