2025-07-17 10:05:47 +09:00
|
|
|
<?php
|
|
|
|
|
|
2025-07-18 11:37:07 +09:00
|
|
|
namespace App\Http\Controllers\Api\V1;
|
2025-07-17 10:05:47 +09:00
|
|
|
|
|
|
|
|
use App\Helpers\ApiResponse;
|
2025-09-24 21:00:31 +09:00
|
|
|
use Illuminate\Http\Request;
|
2025-07-17 10:05:47 +09:00
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
|
|
|
|
|
|
class CommonController
|
|
|
|
|
{
|
|
|
|
|
public static function getComeCode()
|
|
|
|
|
{
|
2025-08-20 17:01:32 +09:00
|
|
|
return ApiResponse::handle(function () {
|
2025-09-24 21:00:31 +09:00
|
|
|
return DB::table('common_codes')
|
2025-08-20 17:01:32 +09:00
|
|
|
->select(['code_group', 'code', 'name', 'description', 'is_active'])
|
|
|
|
|
->where('tenant_id', app('tenant_id'))
|
|
|
|
|
->get();
|
|
|
|
|
}, '공통코드');
|
2025-07-17 10:05:47 +09:00
|
|
|
}
|
2025-09-24 21:00:31 +09:00
|
|
|
|
|
|
|
|
public function list(Request $request)
|
|
|
|
|
{
|
2025-11-06 17:45:49 +09:00
|
|
|
return ApiResponse::handle(function () {
|
2025-09-24 21:00:31 +09:00
|
|
|
// Service implementation needed
|
|
|
|
|
return [];
|
|
|
|
|
}, __('message.fetched'));
|
|
|
|
|
}
|
|
|
|
|
|
2026-01-09 17:25:14 +09:00
|
|
|
/**
|
|
|
|
|
* 특정 그룹의 공통 코드 목록 조회
|
|
|
|
|
*
|
|
|
|
|
* GET /api/v1/settings/common/{group}
|
|
|
|
|
*/
|
2025-09-24 21:00:31 +09:00
|
|
|
public function index(Request $request, string $group)
|
|
|
|
|
{
|
2026-01-09 17:25:14 +09:00
|
|
|
return ApiResponse::handle(function () use ($group) {
|
|
|
|
|
$tenantId = app('tenant_id');
|
|
|
|
|
|
2026-01-30 20:13:39 +09:00
|
|
|
// 테넌트 전용 데이터가 있으면 테넌트만, 없으면 글로벌 폴백
|
|
|
|
|
$tenantCount = DB::table('common_codes')
|
|
|
|
|
->where('code_group', $group)
|
|
|
|
|
->where('is_active', true)
|
|
|
|
|
->where('tenant_id', $tenantId)
|
|
|
|
|
->count();
|
|
|
|
|
|
2026-01-09 17:25:14 +09:00
|
|
|
return DB::table('common_codes')
|
|
|
|
|
->select(['id', 'code', 'name', 'description', 'sort_order', 'attributes'])
|
|
|
|
|
->where('code_group', $group)
|
|
|
|
|
->where('is_active', true)
|
2026-01-30 20:13:39 +09:00
|
|
|
->where(function ($query) use ($tenantId, $tenantCount) {
|
|
|
|
|
if ($tenantCount > 0) {
|
|
|
|
|
$query->where('tenant_id', $tenantId);
|
|
|
|
|
} else {
|
|
|
|
|
$query->whereNull('tenant_id');
|
|
|
|
|
}
|
2026-01-09 17:25:14 +09:00
|
|
|
})
|
|
|
|
|
->orderBy('sort_order')
|
|
|
|
|
->get();
|
2025-09-24 21:00:31 +09:00
|
|
|
}, __('message.fetched'));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function store(Request $request)
|
|
|
|
|
{
|
2025-11-06 17:45:49 +09:00
|
|
|
return ApiResponse::handle(function () {
|
2025-09-24 21:00:31 +09:00
|
|
|
// Service implementation needed
|
|
|
|
|
return [];
|
|
|
|
|
}, __('message.settings.common_code_saved'));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function update(Request $request, int $id)
|
|
|
|
|
{
|
2025-11-06 17:45:49 +09:00
|
|
|
return ApiResponse::handle(function () {
|
2025-09-24 21:00:31 +09:00
|
|
|
// Service implementation needed
|
|
|
|
|
return [];
|
|
|
|
|
}, __('message.updated'));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function destroy(Request $request, int $id)
|
|
|
|
|
{
|
2025-11-06 17:45:49 +09:00
|
|
|
return ApiResponse::handle(function () {
|
2025-09-24 21:00:31 +09:00
|
|
|
// Service implementation needed
|
|
|
|
|
return [];
|
|
|
|
|
}, __('message.deleted'));
|
|
|
|
|
}
|
2025-12-22 17:42:59 +09:00
|
|
|
}
|