Fakultas Ilmu Komputer UI

quizResult.ts 8.76 KB
Newer Older
1
2
3
4
export enum Status {
  HEALTHY = 'healthy',
  WARNING = 'warning',
  DANGER = 'danger',
5
  CATASTROPHE = 'catastrophe',
6
7
}

8
9
10
11
12
13
14
15
16
17
18
19
export enum DietelaProgram {
  TRIAL = 'TRIAL',
  BABY_1 = 'BABY_1',
  BABY_3 = 'BABY_3',
  GOALS_1 = 'GOALS_1',
  GOALS_3 = 'GOALS_3',
  GOALS_6 = 'GOALS_6',
  BALANCED_1 = 'BALANCED_1',
  BALANCED_3 = 'BALANCED_3',
  BALANCED_6 = 'BALANCED_6',
}

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
export enum BreakfastReponse {
  NO_BREAKFAST = 'Perut kosong di pagi hari bisa mengarahkan kepada 2 keadaan, antara membuat makan berlebihan di siang hari atau kurang asupan zat gizi per hari. Makan pagi bisa disesuaikan dengan pola bangun tidur kamu lho, cari deh solusi terbaik agar kamu bisa beraktifitas tanpa perut kosong.',
  MED_BREAKFAST = 'Sudah bagus nih, bisa mengisi perut di pagi hari, eittts, tapi artinya kamu perlu melengkapi asupan energi di siang sampai malam hari karena makan paginya cuma sedikit, kamu perlu pengaturan lebih spesifik lagi agak asupan energi kamu seimbang.',
  HI_BREAKFAST = 'Juara! Permulaan yang bagus untuk memenuhi kebutuhan energi seharian kamu. Jangan lupa jenis makanan yang kamu pilih saat sarapan harus seimbang juga komposisinya. Sudah ada buah dan sayur belum di sarapanmu? Masih banyak gorengan gak di sarapanmu?',
}

export enum PhysicalActivityResponse {
  LEVEL1_ACTIVITY = 'Hayooo kok duduk-duduk aja? Yuk ah mulai lakukan aktivitas fisik, dimulai dari aktivitas yang ringan seperti jalan kaki, jogging, senam, atau naik turun tangga 15 menit per hari. Tingkatkan perlahan hingga mencapai 30 menit per hari. Konsultasikan kebutuhan gizi harianmu kepada Dietela agar asupan makan kamu seimbang dengan energi yang kamu keluarkan setiap harinya',
  LEVEL2_ACTIVITY = 'Lumayan sudah banyak jalan, tapi boleh dong diselingi olahraga ringan seperti jogging, senam, atau naik turun tangga 15 menit per hari. Tingkatkan perlahan hingga mencapai 30 menit per hari. Konsultasikan kebutuhan gizi harianmu kepada dietela agar asupan makan kamu seimbang dengan energi yang kamu keluarkan setiap harinya',
  LEVEL3_ACTIVITY = 'Keren! Pertahankan olahraga rutin selama 150 menit per minggu atau minimal 30 menit per hari, tambahkan aktivitas penguatan otot sebanyak 2 kali per minggu selama 10-15 menit per hari. Konsultasikan kebutuhan gizi harianmu kepada dietela untuk pengaturan pola makan yang sesuai dengan aktivitas fisikmu.',
  LEVEL4_ACTIVITY = 'Keren! Pertahankan durasi aktivitas fisik, tingkatkan intensitas gerakan secara bertahap, jangan lupa tambahkan aktivitas penguatan otot sebanyak 2 kali per minggu selama 10-15 menit per hari. Konsultasikan kebutuhan gizi harianmu kepada dietela untuk pengaturan pola makan yang sesuai dengan aktivitas fisikmu.',
  LEVEL5_ACTIVITY = 'Wow! Sudah bagus banget nih, jangan lupa lakukan monitoring rutin terhadap komposisi tubuhmu. Jangan lupa juga untuk mencukupi kebutuhan cairan sebelum, saat, dan setelah olahraga. Konsultasikan kebutuhan gizi harianmu kepada dietela untuk pengaturan pola makan yang sesuai dengan aktivitas fisikmu.',
}

export enum BodyMassConstants {
  UNDERWEIGHT = 'Underweight',
  NORMAL = 'Normal',
  PREOBESITY = 'Preobesitas',
  OBESITY1 = 'Obesitas 1',
  OBESITY2 = 'Obesitas 2',
}

export enum VegetableAndFruitSufficiencyResponse {
  LACKING = 'Kurang makan sayur dan buah',
  ENOUGH = 'Asupan sayur dan buah sudah cukup',
}

export enum SugarSaltFatProblemResponse {
  CONTROLLED = 'Asupan gula, garam, dan lemak terkontrol',
  EXCESSIVE = 'Kelebihan makan gula, garam, dan lemak',
}

export enum LargeMealDietRecommendation {
  ONCE_A_DAY = 'Hmmm.... Kenapa cuma makan besar 1 kali sehari? Makan besar cuma 1 kali dalam sehari berisiko membuat kamu makan berlebihan dan kekurangan zat gizi tertentu Lho! Yuk coba mulai diatur pola makannya, dengan merutinkan waktu makan agar metabolisme kamu lebih baik.',
  TWICE_A_DAY = 'Makan besar kamu sudah 2 kali, tapi masih kurang nih. Sebaiknya makan besar itu 3 kali yaah, karena ketika skip 1 jam makan, bisa menyebabkan berbagai risiko, seperti makan berlebihan di jam makan berikutnya, kekurangan zat gizi dan sampai ke masalah kesehatan.',
  THRICE_A_DAY = 'Keren! Apresiasi buat kamu yang sudah rutin makan besar 3 kali sehari. Tapi pastikan agar sesuai dengan kebutuhan kamu yah, jangan berlebih atau kekurangan.',
  MORE_THAN_THRICE_A_DAY = 'Eiiits, porsi makan besar kamu sulit untuk bisa seimbang kalau kamu makan besar lebih dari 3 kali dalam sehari. Cek porsi yang tepat untukmu yah kalau kamu memang sering makan besar.',
}

export enum SnacksDietRecommendation {
  NO_SNACK = 'Yah kok gak ngemil? Makan cemilan itu penting untuk menjaga kadar gula darah kamu seharian, dengan ngemil gula darah seharian kamu bisa terkontrol sehingga mencegah lemas dan berkurangnya konsentrasi.',
  ONCE_A_DAY = 'Tambah waktu nyemil ga dosa loh asal porsinya tetap sesuai dengan kebutuhan kamu. Sebaiknya sehari bisa 2 kali makan cemilan agar kamu tidak kekurangan energi di sela-sela aktivitas dan tidak berlebihan makan pada 1 jam makan tertentu. Atur waktu makan kamu dengan lebih baik yah.',
  TWICE_A_DAY = 'Baguuuus! Pertahankan ya makan cemilan 2x sehari. Perhatikan porsi dan kandungan zat gizi cemilanmu ya. Utamakan yang padat gizi sehingga kualitasnya baik untuk tubuh kamu.',
  THRICE_A_DAY = 'Boleh sih makan cemilan 3 kali sehari, artinya porsi dan jenis cemilan yang kamu konsumsi harus diatur sedemikian rupa agar tidak melebihi kebutuhan energi dan zat gizi dalam sehari.',
  MORE_THAN_THRICE_A_DAY = 'Hmmmm.... kalau makan cemilan lebih dari 3 kali dalam sehari, bisa-bisa asupan kalori kamu berlebih nih dalam sehari atau malah kurang karena seharian cuma makan cemilan. Yuk atur jam makan kamu agar lebih baik. Porsi dan jenis makanan yang kamu konsumsi juga menjadi kunci agar asupan energi dan zat gizi kamu sehat dan seimbang.',
}

export const bodyMassStatus = {
  [BodyMassConstants.UNDERWEIGHT]: {
    status: Status.WARNING,
  },
  [BodyMassConstants.NORMAL]: {
    status: Status.HEALTHY,
  },
  [BodyMassConstants.PREOBESITY]: {
    status: Status.WARNING,
  },
  [BodyMassConstants.OBESITY1]: {
78
    status: Status.DANGER,
79
80
  },
  [BodyMassConstants.OBESITY2]: {
81
    status: Status.CATASTROPHE,
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
  },
};

export const sayurBuahStatus = {
  [VegetableAndFruitSufficiencyResponse.ENOUGH]: {
    status: Status.HEALTHY,
  },
  [VegetableAndFruitSufficiencyResponse.LACKING]: {
    status: Status.WARNING,
  },
};

export const gglStatus = {
  [SugarSaltFatProblemResponse.CONTROLLED]: {
    status: Status.HEALTHY,
  },
  [SugarSaltFatProblemResponse.EXCESSIVE]: {
    status: Status.WARNING,
  },
};

export const makanBesarStatus = {
104
105
106
107
  [LargeMealDietRecommendation.ONCE_A_DAY]: {
    status: Status.DANGER,
    headline: 'Risiko tinggi kekurangan zat gizi yang penting',
  },
108
  [LargeMealDietRecommendation.TWICE_A_DAY]: {
109
110
    status: Status.WARNING,
    headline: 'Risiko sedang kekurangan zat gizi yang penting',
111
112
113
  },
  [LargeMealDietRecommendation.THRICE_A_DAY]: {
    status: Status.HEALTHY,
114
    headline: 'Zat gizi penting akan terpenuhi dengan baik',
115
116
  },
  [LargeMealDietRecommendation.MORE_THAN_THRICE_A_DAY]: {
117
118
    status: Status.DANGER,
    headline: 'Risiko tinggi kelebihan konsumsi makan',
119
120
121
122
  },
};

export const sarapanStatus = {
123
124
125
  [BreakfastReponse.NO_BREAKFAST]: {
    status: Status.DANGER,
    headline: 'Porsi sarapan kurang',
126
127
128
129
130
  },
  [BreakfastReponse.MED_BREAKFAST]: {
    status: Status.HEALTHY,
    headline: 'Porsi sarapan cukup',
  },
131
132
133
  [BreakfastReponse.HI_BREAKFAST]: {
    status: Status.HEALTHY,
    headline: 'Porsi sarapan cukup',
134
135
136
137
  },
};

export const cemilanStatus = {
138
139
140
  [SnacksDietRecommendation.NO_SNACK]: {
    status: Status.DANGER,
    headline: 'Risiko tinggi metabolisme energi berantakan',
141
142
143
  },
  [SnacksDietRecommendation.ONCE_A_DAY]: {
    status: Status.WARNING,
144
    headline: 'Risiko sedang metabolisme energi berantakan',
145
  },
146
147
148
149
150
  [SnacksDietRecommendation.TWICE_A_DAY]: {
    status: Status.HEALTHY,
    headline: 'Metabolisme energi akan terjaga',
  },
  [SnacksDietRecommendation.THRICE_A_DAY]: {
151
    status: Status.WARNING,
152
    headline: 'Risiko sedang metabolisme energi berantakan',
153
154
  },
  [SnacksDietRecommendation.MORE_THAN_THRICE_A_DAY]: {
155
156
    status: Status.DANGER,
    headline: 'Risiko tinggi metabolisme energi berantakan',
157
158
159
160
  },
};

export const aktivitasFisikStatus = {
161
162
163
164
165
166
167
168
  [PhysicalActivityResponse.LEVEL1_ACTIVITY]: {
    status: Status.DANGER,
    headline: 'Sangat kurang aktif (sedenter)',
  },
  [PhysicalActivityResponse.LEVEL2_ACTIVITY]: {
    status: Status.WARNING,
    headline: 'Kurang aktif',
  },
169
170
  [PhysicalActivityResponse.LEVEL3_ACTIVITY]: {
    status: Status.HEALTHY,
171
    headline: 'Cukup aktif',
172
173
174
  },
  [PhysicalActivityResponse.LEVEL4_ACTIVITY]: {
    status: Status.HEALTHY,
175
    headline: 'Aktif',
176
177
178
  },
  [PhysicalActivityResponse.LEVEL5_ACTIVITY]: {
    status: Status.HEALTHY,
179
    headline: 'Sangat aktif',
180
181
182
  },
};

183
184
185
186
export interface ProgramRecommendations {
  priority_1: DietelaProgram;
  priority_2: DietelaProgram | null;
}