feat: [expense,loan] 대시보드 상세 필터 및 가지급금 카테고리 분류
- ExpectedExpenseController/Service: dashboardDetail에 start_date/end_date/search 파라미터 추가 - Loan 모델: category 상수 및 라벨 정의 (카드/경조사/상품권/접대비) - LoanService: dashboard에 category_breakdown 집계 추가 - 마이그레이션: loans 테이블 category 컬럼 추가 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -36,6 +36,37 @@ class Loan extends Model
|
||||
self::STATUS_PARTIAL,
|
||||
];
|
||||
|
||||
/**
|
||||
* 카테고리 상수 (D1.7 기획서)
|
||||
*/
|
||||
public const CATEGORY_CARD = 'card'; // 카드
|
||||
|
||||
public const CATEGORY_CONGRATULATORY = 'congratulatory'; // 경조사
|
||||
|
||||
public const CATEGORY_GIFT_CERTIFICATE = 'gift_certificate'; // 상품권
|
||||
|
||||
public const CATEGORY_ENTERTAINMENT = 'entertainment'; // 접대비
|
||||
|
||||
/**
|
||||
* 카테고리 목록
|
||||
*/
|
||||
public const CATEGORIES = [
|
||||
self::CATEGORY_CARD,
|
||||
self::CATEGORY_CONGRATULATORY,
|
||||
self::CATEGORY_GIFT_CERTIFICATE,
|
||||
self::CATEGORY_ENTERTAINMENT,
|
||||
];
|
||||
|
||||
/**
|
||||
* 카테고리 라벨 매핑
|
||||
*/
|
||||
public const CATEGORY_LABELS = [
|
||||
self::CATEGORY_CARD => '카드',
|
||||
self::CATEGORY_CONGRATULATORY => '경조사',
|
||||
self::CATEGORY_GIFT_CERTIFICATE => '상품권',
|
||||
self::CATEGORY_ENTERTAINMENT => '접대비',
|
||||
];
|
||||
|
||||
/**
|
||||
* 인정이자율 (연도별)
|
||||
*/
|
||||
@@ -71,6 +102,7 @@ class Loan extends Model
|
||||
'settlement_date',
|
||||
'settlement_amount',
|
||||
'status',
|
||||
'category',
|
||||
'withdrawal_id',
|
||||
'created_by',
|
||||
'updated_by',
|
||||
@@ -137,6 +169,14 @@ public function getStatusLabelAttribute(): string
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* 카테고리 라벨
|
||||
*/
|
||||
public function getCategoryLabelAttribute(): string
|
||||
{
|
||||
return self::CATEGORY_LABELS[$this->category] ?? $this->category ?? '카드';
|
||||
}
|
||||
|
||||
/**
|
||||
* 미정산 잔액
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user