silver / menu_data.py
Song
hi
238cf71
"""
Taiwanese elderly-friendly meal data for Silver Table Assistant.
Provides 15-20 nutritious, easy-to-chew meals suitable for seniors.
"""
from typing import List, Dict, Any
# Taiwanese elderly-friendly menu items
MENU_ITEMS: List[Dict[str, Any]] = [
{
"id": 1,
"name": "清蒸鱸魚",
"description": "新鮮鱸魚配薑絲蒸煮,魚肉嫩滑易咀嚼,富含優質蛋白質",
"suitable_for": ["高血壓", "糖尿病", "牙口不好", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=清蒸鱸魚",
"nutrition": {
"calories": 180,
"protein": 25.0,
"fat": 8.0,
"carbs": 2.0,
"sodium": 120,
"fiber": 0.5,
"sugar": 1.0
},
"price": 28000, # 280元 in cents
"category": "蛋白質類",
"available": True
},
{
"id": 2,
"name": "南瓜燉肉",
"description": "南瓜與瘦肉慢燉,口感軟糯,富含維生素A和膳食纖維",
"suitable_for": ["高血壓", "便秘", "營養不良"],
"image_url": "https://placehold.co/400x300?text=南瓜燉肉",
"nutrition": {
"calories": 220,
"protein": 18.0,
"fat": 12.0,
"carbs": 15.0,
"sodium": 200,
"fiber": 3.0,
"sugar": 8.0
},
"price": 22000, # 220元 in cents
"category": "葷食類",
"available": True
},
{
"id": 3,
"name": "白蘿蔔湯",
"description": "清淡蘿蔔湯,口感軟嫩,幫助消化,利尿消腫",
"suitable_for": ["高血壓", "糖尿病", "便秘", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=白蘿蔔湯",
"nutrition": {
"calories": 45,
"protein": 2.0,
"fat": 0.5,
"carbs": 9.0,
"sodium": 150,
"fiber": 2.0,
"sugar": 4.0
},
"price": 8000, # 80元 in cents
"category": "湯品",
"available": True
},
{
"id": 4,
"name": "蒸蛋羹",
"description": "嫩滑蒸蛋,口感柔軟易吞嚥,富含優質蛋白質",
"suitable_for": ["牙口不好", "營養不良", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=蒸蛋羹",
"nutrition": {
"calories": 120,
"protein": 10.0,
"fat": 8.0,
"carbs": 2.0,
"sodium": 80,
"fiber": 0.0,
"sugar": 1.5
},
"price": 6000, # 60元 in cents
"category": "蛋白質類",
"available": True
},
{
"id": 5,
"name": "紅棗銀耳湯",
"description": "溫潤甜湯,銀耳富含膠質,紅棗補血養顏",
"suitable_for": ["糖尿病", "便秘", "美容養顏"],
"image_url": "https://placehold.co/400x300?text=紅棗銀耳湯",
"nutrition": {
"calories": 95,
"protein": 1.5,
"fat": 0.3,
"carbs": 22.0,
"sodium": 20,
"fiber": 4.0,
"sugar": 15.0
},
"price": 12000, # 120元 in cents
"category": "甜品類",
"available": True
},
{
"id": 6,
"name": "菠菜豆腐湯",
"description": "嫩菠菜配軟豆腐,富含鐵質和蛋白質",
"suitable_for": ["高血壓", "糖尿病", "牙口不好"],
"image_url": "https://placehold.co/400x300?text=菠菜豆腐湯",
"nutrition": {
"calories": 85,
"protein": 8.0,
"fat": 4.0,
"carbs": 6.0,
"sodium": 180,
"fiber": 2.5,
"sugar": 2.0
},
"price": 10000, # 100元 in cents
"category": "蔬菜類",
"available": True
},
{
"id": 7,
"name": "山藥排骨湯",
"description": "滋補湯品,山藥健脾益胃,排骨補充鈣質",
"suitable_for": ["高血壓", "糖尿病", "營養不良"],
"image_url": "https://placehold.co/400x300?text=山藥排骨湯",
"nutrition": {
"calories": 165,
"protein": 12.0,
"fat": 10.0,
"carbs": 6.0,
"sodium": 220,
"fiber": 1.5,
"sugar": 2.5
},
"price": 18000, # 180元 in cents
"category": "湯品",
"available": True
},
{
"id": 8,
"name": "小米粥",
"description": "溫和養胃小米粥,易消化,適合早晚食用",
"suitable_for": ["糖尿病", "牙口不好", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=小米粥",
"nutrition": {
"calories": 120,
"protein": 4.0,
"fat": 2.0,
"carbs": 22.0,
"sodium": 50,
"fiber": 2.0,
"sugar": 1.0
},
"price": 5000, # 50元 in cents
"category": "主食類",
"available": True
},
{
"id": 9,
"name": "香菇雞湯",
"description": "香菇雞肉湯,鮮美營養,增強免疫力",
"suitable_for": ["高血壓", "營養不良", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=香菇雞湯",
"nutrition": {
"calories": 150,
"protein": 20.0,
"fat": 6.0,
"carbs": 3.0,
"sodium": 280,
"fiber": 1.0,
"sugar": 1.5
},
"price": 16000, # 160元 in cents
"category": "湯品",
"available": True
},
{
"id": 10,
"name": "冬瓜排骨湯",
"description": "清淡冬瓜湯,利尿消腫,適合夏季食用",
"suitable_for": ["高血壓", "糖尿病", "水腫"],
"image_url": "https://placehold.co/400x300?text=冬瓜排骨湯",
"nutrition": {
"calories": 110,
"protein": 10.0,
"fat": 6.0,
"carbs": 5.0,
"sodium": 200,
"fiber": 1.5,
"sugar": 3.0
},
"price": 14000, # 140元 in cents
"category": "湯品",
"available": True
},
{
"id": 11,
"name": "紫薯泥",
"description": "軟糯紫薯泥,富含花青素和膳食纖維",
"suitable_for": ["糖尿病", "便秘", "抗氧化"],
"image_url": "https://placehold.co/400x300?text=紫薯泥",
"nutrition": {
"calories": 130,
"protein": 2.5,
"fat": 0.3,
"carbs": 30.0,
"sodium": 30,
"fiber": 4.0,
"sugar": 8.0
},
"price": 7000, # 70元 in cents
"category": "副食類",
"available": True
},
{
"id": 12,
"name": "蓮子銀耳湯",
"description": "養生甜湯,蓮子寧心安神,銀耳潤肺",
"suitable_for": ["失眠", "便秘", "美容養顏"],
"image_url": "https://placehold.co/400x300?text=蓮子銀耳湯",
"nutrition": {
"calories": 85,
"protein": 2.0,
"fat": 0.2,
"carbs": 20.0,
"sodium": 15,
"fiber": 3.5,
"sugar": 12.0
},
"price": 11000, # 110元 in cents
"category": "甜品類",
"available": True
},
{
"id": 13,
"name": "蒸蛋",
"description": "嫩滑蒸蛋,簡單易消化,營養豐富",
"suitable_for": ["牙口不好", "營養不良", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=蒸蛋",
"nutrition": {
"calories": 100,
"protein": 8.0,
"fat": 7.0,
"carbs": 1.0,
"sodium": 70,
"fiber": 0.0,
"sugar": 1.0
},
"price": 4000, # 40元 in cents
"category": "蛋白質類",
"available": True
},
{
"id": 14,
"name": "木瓜牛奶",
"description": "溫潤木瓜牛奶,有助消化,補充維生素",
"suitable_for": ["便秘", "美容養顏", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=木瓜牛奶",
"nutrition": {
"calories": 150,
"protein": 8.0,
"fat": 6.0,
"carbs": 18.0,
"sodium": 120,
"fiber": 2.0,
"sugar": 16.0
},
"price": 9000, # 90元 in cents
"category": "飲品類",
"available": True
},
{
"id": 15,
"name": "豆腐腦",
"description": "嫩滑豆腐腦,易吞嚥,富含植物蛋白",
"suitable_for": ["牙口不好", "高血壓", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=豆腐腦",
"nutrition": {
"calories": 80,
"protein": 6.0,
"fat": 4.0,
"carbs": 4.0,
"sodium": 160,
"fiber": 1.0,
"sugar": 2.0
},
"price": 3500, # 35元 in cents
"category": "蛋白質類",
"available": True
},
{
"id": 16,
"name": "燕窩粥",
"description": "滋補燕窩粥,美容養顏,滋陰潤燥",
"suitable_for": ["糖尿病", "美容養顏", "營養不良"],
"image_url": "https://placehold.co/400x300?text=燕窩粥",
"nutrition": {
"calories": 140,
"protein": 6.0,
"fat": 1.5,
"carbs": 26.0,
"sodium": 40,
"fiber": 1.0,
"sugar": 3.0
},
"price": 35000, # 350元 in cents
"category": "主食類",
"available": True
},
{
"id": 17,
"name": "胡蘿蔔泥",
"description": "軟嫩胡蘿蔔泥,富含維生素A,保護視力",
"suitable_for": ["高血壓", "便秘", "護眼"],
"image_url": "https://placehold.co/400x300?text=胡蘿蔔泥",
"nutrition": {
"calories": 60,
"protein": 1.5,
"fat": 0.3,
"carbs": 14.0,
"sodium": 80,
"fiber": 3.5,
"sugar": 7.0
},
"price": 4500, # 45元 in cents
"category": "副食類",
"available": True
},
{
"id": 18,
"name": "綠豆湯",
"description": "清熱解毒綠豆湯,消暑降火,利尿",
"suitable_for": ["高血壓", "水腫", "清熱解毒"],
"image_url": "https://placehold.co/400x300?text=綠豆湯",
"nutrition": {
"calories": 110,
"protein": 7.0,
"fat": 0.5,
"carbs": 22.0,
"sodium": 25,
"fiber": 6.0,
"sugar": 2.0
},
"price": 6500, # 65元 in cents
"category": "甜品類",
"available": True
},
{
"id": 19,
"name": "雞肉粥",
"description": "營養雞肉粥,溫和養胃,適合病後調養",
"suitable_for": ["牙口不好", "營養不良", "腸胃虚弱"],
"image_url": "https://placehold.co/400x300?text=雞肉粥",
"nutrition": {
"calories": 160,
"protein": 12.0,
"fat": 4.0,
"carbs": 18.0,
"sodium": 180,
"fiber": 1.0,
"sugar": 1.5
},
"price": 15000, # 150元 in cents
"category": "主食類",
"available": True
},
{
"id": 20,
"name": "紫菜蛋花湯",
"description": "清淡紫菜湯,富含碘質,有助甲狀腺健康",
"suitable_for": ["高血壓", "糖尿病", "清淡飲食"],
"image_url": "https://placehold.co/400x300?text=紫菜蛋花湯",
"nutrition": {
"calories": 40,
"protein": 3.0,
"fat": 2.0,
"carbs": 2.0,
"sodium": 200,
"fiber": 1.0,
"sugar": 1.0
},
"price": 5500, # 55元 in cents
"category": "湯品",
"available": True
}
]
def get_menu_items() -> List[Dict[str, Any]]:
"""Return the complete list of menu items."""
return MENU_ITEMS
def get_menu_item_by_id(item_id: int) -> Dict[str, Any]:
"""Get a specific menu item by ID."""
for item in MENU_ITEMS:
if item["id"] == item_id:
return item
raise ValueError(f"Menu item with ID {item_id} not found")
def filter_menu_by_dietary_tag(tag: str) -> List[Dict[str, Any]]:
"""Filter menu items by dietary tag."""
return [item for item in MENU_ITEMS if tag in item["suitable_for"]]
def get_menu_items_by_category(category: str) -> List[Dict[str, Any]]:
"""Filter menu items by category."""
return [item for item in MENU_ITEMS if item["category"] == category]