|
|
@@ -6,6 +6,7 @@ import {
|
|
|
type CreateFeedingPlanRequest,
|
|
|
type CreatePetRequest,
|
|
|
FeedingGoal,
|
|
|
+ type FeedingPlan,
|
|
|
Gender,
|
|
|
type Pet,
|
|
|
PetBodyType,
|
|
|
@@ -256,11 +257,51 @@ export const useFeedingPlanStore = defineStore('feeding-plan', () => {
|
|
|
return {
|
|
|
id: item.product.id,
|
|
|
dailyUsageWeight: item.dailyUsageWeight,
|
|
|
+ percentage: item.percentage,
|
|
|
}
|
|
|
})
|
|
|
await createFeedingPlan(feedingPlan.value)
|
|
|
}
|
|
|
|
|
|
+ const initPet = (payload: Pet) => {
|
|
|
+ // @ts-expect-error @ts-ignore
|
|
|
+ pet.value = {
|
|
|
+ birthday: payload.birthday,
|
|
|
+ bodyType: payload.bodyType,
|
|
|
+ gender: payload.gender,
|
|
|
+ isActive: payload.isActive,
|
|
|
+ isLactation: payload.isLactation,
|
|
|
+ isPregnant: payload.isPregnant,
|
|
|
+ isSterilization: payload.isSterilization,
|
|
|
+ name: payload.name,
|
|
|
+ photo: payload.photo,
|
|
|
+ type: payload.type,
|
|
|
+ weight: payload.weight,
|
|
|
+ }
|
|
|
+ savedPet.value = payload
|
|
|
+ feedingPlan.value.targetWeight = calculateIdealWeight()
|
|
|
+ rer.value = calculateRER(pet.value.weight)
|
|
|
+ }
|
|
|
+ const savedFeedingPlan = ref<FeedingPlan | null>(null)
|
|
|
+
|
|
|
+ const initFeedingPlan = (payload: FeedingPlan) => {
|
|
|
+ // @ts-expect-error @ts-ignore
|
|
|
+ feedingPlan.value = {
|
|
|
+ feedingGoal: payload.feedingGoal,
|
|
|
+ targetWeight: payload.targetWeight,
|
|
|
+ petId: savedPet.value?.id || '',
|
|
|
+ products: payload.feedingPlanProducts.map((item) => {
|
|
|
+ return {
|
|
|
+ id: item.product.id,
|
|
|
+ dailyUsageWeight: item.dailyUsageWeight,
|
|
|
+ }
|
|
|
+ }),
|
|
|
+ }
|
|
|
+ savedFeedingPlan.value = payload
|
|
|
+ selectedProducts.value = payload.feedingPlanProducts
|
|
|
+ dailyCalories.value = Math.floor(rer.value * derRate.value)
|
|
|
+ }
|
|
|
+
|
|
|
return {
|
|
|
pet,
|
|
|
petTypeOptions,
|
|
|
@@ -275,5 +316,7 @@ export const useFeedingPlanStore = defineStore('feeding-plan', () => {
|
|
|
changePercentage,
|
|
|
dailyCalories,
|
|
|
confirm,
|
|
|
+ initPet,
|
|
|
+ initFeedingPlan,
|
|
|
}
|
|
|
})
|