걸음 수 Health Connect·HealthKit · 위치 퀘스트 사진·QR 인증 · 행성 형태 확정
This commit is contained in:
@@ -304,6 +304,26 @@ class _QuestCreateScreenState extends State<QuestCreateScreen> {
|
||||
trailing: const Icon(Icons.chevron_right),
|
||||
onTap: _pickPlace,
|
||||
),
|
||||
// 추가 인증 수단(원장 C-03 「Location 의 추가 인증 수단」 · PRD-05 「GPS · 사진 · QR 인증」).
|
||||
// GPS 는 항상 들어간다. 🟡 Figma 생성 화면에 이 줄이 없어 배치는 임시다(해석 확인 요청 영역B Q-B-10).
|
||||
Text(context.l10n.questExtraVerify, style: Theme.of(context).textTheme.bodySmall),
|
||||
const SizedBox(height: AppSpace.s2),
|
||||
Wrap(
|
||||
spacing: AppSpace.s2,
|
||||
children: [
|
||||
for (final (key, label) in [
|
||||
('photo', context.l10n.questVerifyPhoto),
|
||||
('qr', context.l10n.questVerifyQr),
|
||||
])
|
||||
FilterChip(
|
||||
label: Text(label),
|
||||
selected: _extraVerify.contains(key),
|
||||
onSelected: (on) => setState(
|
||||
() => on ? _extraVerify.add(key) : _extraVerify.remove(key),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
const SizedBox(height: AppSpace.s3),
|
||||
],
|
||||
|
||||
@@ -383,6 +403,9 @@ class _QuestCreateScreenState extends State<QuestCreateScreen> {
|
||||
});
|
||||
}
|
||||
|
||||
/// 위치 Quest 에 덧붙일 인증 수단(`photo` · `qr`).
|
||||
final _extraVerify = <String>{};
|
||||
|
||||
Future<void> _pickPlace() async {
|
||||
if (_places.isEmpty) {
|
||||
final places = await widget.repository.places();
|
||||
@@ -446,6 +469,7 @@ class _QuestCreateScreenState extends State<QuestCreateScreen> {
|
||||
placeId: _needs('place') && !(_place?.isPin ?? true) ? _place?.id : null,
|
||||
pin: _needs('place') && (_place?.isPin ?? false) ? _place : null,
|
||||
goal: _needs('goal') ? _intOf(_goal) : null,
|
||||
extraVerify: _needs('place') ? _extraVerify.toList() : const [],
|
||||
),
|
||||
);
|
||||
} on BackendException catch (error) {
|
||||
|
||||
Reference in New Issue
Block a user