mycode/myApp/Expiranner/IOS/Models.swift
songyc macbook 9902d44848 feat(expiranner): rebuild as store-based expiry photo checker
- 매장 선택 → 연/월 → 월 캘린더(날짜별 제품 사진 썸네일) → 날짜 상세 플로우로 전면 재작성
- 스캔 플로우: 촬영 → 재촬영/사용 → 그 달 날짜만 선택 → 저장 후 카메라 자동 복귀 (손전등 지원)
- 날짜 상세 다중 선택 삭제 (전체 선택/해제 + 일괄 삭제 확인)
- 다크 전용 민트 테마, SwiftData 모델(Store ↔ ProductRecord, 원본+썸네일 분리 저장)
- 밝은 민트 앱 아이콘(SVG 원본 포함) + 런치 스크린/인앱 스플래시
- CLAUDE.md 새 구조 기준으로 재작성

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 15:53:14 +09:00

38 lines
817 B
Swift

import Foundation
import SwiftData
@Model
final class Store {
var name: String
var createdAt: Date
@Relationship(deleteRule: .cascade, inverse: \ProductRecord.store)
var records: [ProductRecord] = []
init(name: String) {
self.name = name
self.createdAt = .now
}
}
@Model
final class ProductRecord {
/// ( )
var expiryDate: Date
var createdAt: Date
@Attribute(.externalStorage)
var imageData: Data
var thumbnailData: Data
var store: Store?
init(expiryDate: Date, imageData: Data, thumbnailData: Data, store: Store?) {
self.expiryDate = expiryDate
self.createdAt = .now
self.imageData = imageData
self.thumbnailData = thumbnailData
self.store = store
}
}