- 모델 6개: Equipment, EquipmentInspection, EquipmentInspectionDetail, EquipmentInspectionTemplate, EquipmentRepair, EquipmentProcess - InspectionCycle Enum: 6주기(일/주/월/격월/분기/반기) 날짜 해석 - 서비스 4개: EquipmentService, EquipmentInspectionService, EquipmentRepairService, EquipmentPhotoService - 컨트롤러 4개: CRUD + 점검 토글/결과 설정/메모/초기화 + 템플릿 관리 + 수리이력 + 사진 - FormRequest 6개: 설비등록/수정, 수리이력, 점검템플릿, 토글, 메모 - 라우트 26개: equipment prefix 하위 RESTful 엔드포인트 - i18n 메시지: message.equipment.*, error.equipment.* - 마이그레이션: equipments/equipment_repairs options JSON 컬럼 추가
43 lines
928 B
PHP
43 lines
928 B
PHP
<?php
|
|
|
|
namespace App\Models\Equipment;
|
|
|
|
use App\Traits\Auditable;
|
|
use App\Traits\BelongsToTenant;
|
|
use App\Traits\ModelTrait;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|
|
|
class EquipmentInspectionTemplate extends Model
|
|
{
|
|
use Auditable, BelongsToTenant, ModelTrait;
|
|
|
|
protected $fillable = [
|
|
'tenant_id',
|
|
'equipment_id',
|
|
'inspection_cycle',
|
|
'item_no',
|
|
'check_point',
|
|
'check_item',
|
|
'check_timing',
|
|
'check_frequency',
|
|
'check_method',
|
|
'sort_order',
|
|
'is_active',
|
|
];
|
|
|
|
protected $casts = [
|
|
'is_active' => 'boolean',
|
|
];
|
|
|
|
public function equipment(): BelongsTo
|
|
{
|
|
return $this->belongsTo(Equipment::class, 'equipment_id');
|
|
}
|
|
|
|
public function scopeByCycle($query, string $cycle)
|
|
{
|
|
return $query->where('inspection_cycle', $cycle);
|
|
}
|
|
}
|