04b1fc3024
Test Suite / test (24.15.0) (push) Has been cancelled
- Added a new API path for rematching recipe ingredients in `api_paths.dart`. - Implemented a manual product creation dialog in `inventory_screen.dart` to allow users to create new products directly. - Integrated the rematch functionality in `recipe_repository.dart` to handle rematching of recipe ingredients. - Updated the recipe detail screen to include a button for triggering the rematch process. - Introduced a new `RecipeMatchingService` in the backend to handle ingredient matching logic. - Added database migration to include `aiEngineEnabled` column in the User table. Co-authored-by: Copilot <copilot@github.com>
93 lines
2.6 KiB
TypeScript
93 lines
2.6 KiB
TypeScript
import { MealPlanService } from './meal-plan.service';
|
|
import { CreateMealPlanEntryDto } from './dto/create-meal-plan-entry.dto';
|
|
export declare class MealPlanController {
|
|
private readonly mealPlanService;
|
|
constructor(mealPlanService: MealPlanService);
|
|
findByRange(user: {
|
|
userId: number;
|
|
}, from: string, to: string): Promise<({
|
|
recipe: {
|
|
name: string;
|
|
id: number;
|
|
imageUrl: string | null;
|
|
servings: number | null;
|
|
ingredients: {
|
|
product: {
|
|
name: string;
|
|
id: number;
|
|
canonicalName: string | null;
|
|
} | null;
|
|
quantity: import("@prisma/client/runtime/library").Decimal | null;
|
|
unit: string | null;
|
|
note: string | null;
|
|
}[];
|
|
};
|
|
} & {
|
|
id: number;
|
|
createdAt: Date;
|
|
updatedAt: Date;
|
|
servings: number | null;
|
|
userId: number;
|
|
recipeId: number;
|
|
date: Date;
|
|
})[]>;
|
|
shoppingList(user: {
|
|
userId: number;
|
|
}, from: string, to: string): Promise<{
|
|
productId: number;
|
|
name: string;
|
|
quantity: number;
|
|
unit: string;
|
|
}[]>;
|
|
inventoryCompare(user: {
|
|
userId: number;
|
|
}, from: string, to: string): Promise<{
|
|
productId: number;
|
|
name: string;
|
|
required: number;
|
|
unit: string;
|
|
available: number;
|
|
missing: number;
|
|
status: "enough" | "missing" | "pantry";
|
|
}[]>;
|
|
upsert(user: {
|
|
userId: number;
|
|
}, dto: CreateMealPlanEntryDto): Promise<{
|
|
recipe: {
|
|
name: string;
|
|
id: number;
|
|
imageUrl: string | null;
|
|
servings: number | null;
|
|
ingredients: {
|
|
product: {
|
|
name: string;
|
|
id: number;
|
|
canonicalName: string | null;
|
|
} | null;
|
|
quantity: import("@prisma/client/runtime/library").Decimal | null;
|
|
unit: string | null;
|
|
note: string | null;
|
|
}[];
|
|
};
|
|
} & {
|
|
id: number;
|
|
createdAt: Date;
|
|
updatedAt: Date;
|
|
servings: number | null;
|
|
userId: number;
|
|
recipeId: number;
|
|
date: Date;
|
|
}>;
|
|
removeByDate(user: {
|
|
userId: number;
|
|
}, date: string): Promise<{
|
|
id: number;
|
|
createdAt: Date;
|
|
updatedAt: Date;
|
|
servings: number | null;
|
|
userId: number;
|
|
recipeId: number;
|
|
date: Date;
|
|
}>;
|
|
}
|