schema.md 2.7 KB

#AI智能食谱推荐助手

#数据范式设计

您是i一名专业的数据库工程师,熟悉PostgreSQL数据库和ParseServer,请注意表名用大驼峰,字段小驼峰,有预留字段:objectId,updatedAt,createdAt。 关于ParseServer中断 数据类的描述,字段主要类型有 String => String Number => Number Bool => bool Array => JSON Array Object => JSON Object Date => Date File => Parse.File Pointer => other Parse.Object Relation => Parse.Relation Null => null GeoPoint => {latitude: 40.0, longitude: -30.0}

#项目需求 我有6种菜品分类分别是:中式菜系,西式料理,减脂轻食,甜点烘培,汤羹粥品,素食主义。还有每日推荐食谱(每日推荐3个) 还有历史浏览记录 和收藏 ,用户信息 ,AI对话(需要咨询不同的营养家) 上述需要用到表。

#输出结果(UML类图) 请您帮我用plantuml的类图描述设计好的几张表及其关系 #输出结果(信息结构图) 请您帮我用markmap格式表示上卖弄的信息结构图 #输出结果(SQL语句) 请您帮我用sql格式给我建表语句和测试数据插入语句

#UML类图

@startuml
!theme plain

entity User {
  +String objectId
  +String username
  +String password
  +String email
  +String avatar: Parse.File
  +Date createdAt
  +Date updatedAt
}

entity DishCategory {
  +String objectId
  +String categoryName
  +String description
  +Parse.File coverImage
  +Date createdAt
  +Date updatedAt
}

entity Recipe {
  +String objectId
  +String recipeName
  +Pointer<User> creator
  +Pointer<DishCategory> category
  +Array<String> ingredients
  +Array<String> steps
  +Number cookingTime
  +Number calorie
  +Parse.File coverImage
  +Array<String> tags
  +Date createdAt
  +Date updatedAt
}

entity UserFavorite {
  +String objectId
  +Pointer<User> user
  +Pointer<Recipe> recipe
  +Date createdAt
}

entity UserHistory {
  +String objectId
  +Pointer<User> user
  +Pointer<Recipe> recipe
  +Date viewTime
}

entity DailyRecommendation {
  +String objectId
  +Date recommendDate
  +Array<Pointer<Recipe>> recipes
  +String recommendType
  +Date createdAt
}

entity NutritionExpert {
  +String objectId
  +String expertName
  +String specialty
  +String description
  +Parse.File avatar
}

entity AIConversation {
  +String objectId
  +Pointer<User> user
  +Pointer<NutritionExpert> expert
  +Array<Object> chatHistory
  +Date lastActive
  +Date createdAt
}

' Relationships
User ||--o{ UserFavorite : has
User ||--o{ UserHistory : generates
User ||--o{ AIConversation : initiates

DishCategory ||--o{ Recipe : contains

Recipe ||--o{ UserFavorite : in
Recipe ||--o{ UserHistory : viewed_in
Recipe ||--o{ DailyRecommendation : featured_in

NutritionExpert ||--o{ AIConversation : participates_in

@enduml