feat: H-3 출하 관리 API 구현

- ShipmentController: 출하 CRUD 및 상태 관리 API
- ShipmentService: 출하 비즈니스 로직
- Shipment, ShipmentItem 모델
- FormRequest 검증 클래스
- Swagger 문서화
- shipments, shipment_items 테이블 마이그레이션

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-26 15:46:07 +09:00
parent 5ec201b985
commit aca0902c26
10 changed files with 1808 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
<?php
namespace App\Http\Requests\Shipment;
use Illuminate\Foundation\Http\FormRequest;
class ShipmentUpdateStatusRequest extends FormRequest
{
public function authorize(): bool
{
return true;
}
public function rules(): array
{
return [
'status' => 'required|in:scheduled,ready,shipping,completed',
// 상태별 추가 데이터
'loading_time' => 'nullable|date',
'loading_completed_at' => 'nullable|date',
'vehicle_no' => 'nullable|string|max:20',
'driver_name' => 'nullable|string|max:50',
'driver_contact' => 'nullable|string|max:50',
'confirmed_arrival' => 'nullable|date',
];
}
public function messages(): array
{
return [
'status.required' => __('validation.required', ['attribute' => '상태']),
'status.in' => __('validation.in', ['attribute' => '상태']),
];
}
}