PowerPointAI / planet_model.py
sarim's picture
change model type
ff7c379
from pydantic import BaseModel
from dataclasses import dataclass, field
from typing import List, Dict
@dataclass
class Planet:
name: str
description: str
accommodation: str
activities: List[str]
photography: str
@dataclass
class Category:
budget_range: str
planets: List[Planet] = field(default_factory=list)
@dataclass
class TravelAgency(BaseModel):
name: str
categories: Dict[str, Category] = field(default_factory=dict)
def add_planet(self, category_name: str, budget_range: str, planet: Planet):
# Ensure category exists, create if not
if category_name not in self.categories:
self.categories[category_name] = Category(budget_range=budget_range)
self.categories[category_name].planets.append(planet)
# class Planet(BaseModel):
# def __init__(self, name, atmosphere, species, signature_dish, activities):
# self.name = name
# self.atmosphere = atmosphere
# self.species = species
# self.signature_dish = signature_dish
# self.activities = activities
# def describe(self):
# return f"Planet: {self.name}\n" \
# f"Atmosphere: {self.atmosphere}\n" \
# f"Species: {self.species}\n" \
# f"Signature Dish: {self.signature_dish}\n" \
# f"Activities: {', '.join(self.activities)}"