Files
sam-manage/app/Models/Finance/DailyWorkLogItem.php
김보곤 91d51a39a9 feat: [finance] 일일업무일지 기능 추가
- 마이그레이션: daily_work_logs, daily_work_log_items 테이블 생성
- 모델: DailyWorkLog, DailyWorkLogItem (멀티테넌트, SoftDeletes)
- 컨트롤러: CRUD + 완료토글 + 이전일지 복사
- 뷰: React(Babel) 기반, 날짜 화살표 네비게이션, 달성률 표시
- 라우트: finance/daily-work-log 하위 API 라우트
2026-03-13 18:10:37 +09:00

54 lines
1.2 KiB
PHP

<?php
namespace App\Models\Finance;
use App\Traits\BelongsToTenant;
use App\Traits\ModelTrait;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes;
class DailyWorkLogItem extends Model
{
use BelongsToTenant, ModelTrait, SoftDeletes;
protected $table = 'daily_work_log_items';
protected $fillable = [
'tenant_id',
'daily_work_log_id',
'sort_order',
'category',
'task',
'priority',
'is_completed',
'note',
'options',
];
protected $casts = [
'is_completed' => 'boolean',
'sort_order' => 'integer',
'options' => 'array',
];
public function dailyWorkLog(): BelongsTo
{
return $this->belongsTo(DailyWorkLog::class);
}
public function getOption(string $key, mixed $default = null): mixed
{
return data_get($this->options, $key, $default);
}
public function setOption(string $key, mixed $value): static
{
$options = $this->options ?? [];
data_set($options, $key, $value);
$this->options = $options;
return $this;
}
}