#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