42 lines
962 B
C#
42 lines
962 B
C#
namespace MealPlan.Api.Models;
|
|
|
|
/// <summary>Meal slot when logging consumption. Extends recipe categories with snack.</summary>
|
|
public enum ConsumptionMealCategory
|
|
{
|
|
Breakfast = 0,
|
|
SecondBreakfast = 1,
|
|
Lunch = 2,
|
|
Dinner = 3,
|
|
Snack = 4,
|
|
}
|
|
|
|
public enum DietReminderType
|
|
{
|
|
Water = 0,
|
|
Meal = 1,
|
|
Snack = 2,
|
|
Custom = 3,
|
|
}
|
|
|
|
/// <summary>Bitmask for reminder days: Sun=1, Mon=2, Tue=4, Wed=8, Thu=16, Fri=32, Sat=64.</summary>
|
|
public static class ReminderDaysMask
|
|
{
|
|
public const int All = 127;
|
|
|
|
public static bool IncludesDay(int mask, DayOfWeek day)
|
|
{
|
|
var bit = day switch
|
|
{
|
|
DayOfWeek.Sunday => 1,
|
|
DayOfWeek.Monday => 2,
|
|
DayOfWeek.Tuesday => 4,
|
|
DayOfWeek.Wednesday => 8,
|
|
DayOfWeek.Thursday => 16,
|
|
DayOfWeek.Friday => 32,
|
|
DayOfWeek.Saturday => 64,
|
|
_ => 0,
|
|
};
|
|
return (mask & bit) != 0;
|
|
}
|
|
}
|