addDailyOutfit static method

Future<void> addDailyOutfit(
  1. DailyOutfit outfit
)

添加每日搭配

Implementation

static Future<void> addDailyOutfit(DailyOutfit outfit) async {
  final prefs = await SharedPreferences.getInstance();
  final outfits = await getAllOutfits();

  // 删除同一天的旧搭配
  outfits.removeWhere((o) =>
    o.date.year == outfit.date.year &&
    o.date.month == outfit.date.month &&
    o.date.day == outfit.date.day
  );

  outfits.add(outfit);
  final jsonList = outfits.map((o) => o.toJson()).toList();
  await prefs.setString(_keyOutfitCalendar, jsonEncode(jsonList));

  // 更新衣物穿着记录
  for (var itemId in outfit.itemIds) {
    await recordWearing(itemId);
  }
}