#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类图 ```plantuml @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 creator +Pointer category +Array ingredients +Array steps +Number cookingTime +Number calorie +Parse.File coverImage +Array tags +Date createdAt +Date updatedAt } entity UserFavorite { +String objectId +Pointer user +Pointer recipe +Date createdAt } entity UserHistory { +String objectId +Pointer user +Pointer recipe +Date viewTime } entity DailyRecommendation { +String objectId +Date recommendDate +Array> recipes +String recommendType +Date createdAt } entity NutritionExpert { +String objectId +String expertName +String specialty +String description +Parse.File avatar } entity AIConversation { +String objectId +Pointer user +Pointer expert +Array 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 ```