# AI智慧农业项目

# 数据范式设计
> 设定要求
您是一名专业的数据库工程师，熟悉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}

> 项目需求
智慧农田的辅助AI应用，农民（_User）、农田、农事提醒、生长记录，请您根据农业种植的行业经验，设计以上四张表，农民直接用预留的_User表即可。

> 输出结果（UML类图）
请您帮我用plantuml的类图描述设计好的几张表及其关系

> 输出结果（信息结构图）
请您帮我用markmap格式表示上面的信息结构图

> 输出结果（SQL语句）
请您帮我用sql格式给我建表语句和测试数据插入语句，注意字段请使用小驼峰用""引起来。

# UML类图
```plantuml
@startuml
class _User {
  + objectId: String [PK]
  + username: String
  + phone: String
  + farmLevel: Number
  + createdAt: Date
  + updatedAt: Date
}

class Farmland {
  + objectId: String [PK]
  + farmName: String
  + area: Number
  + soilType: String
  + location: GeoPoint
  + currentCrop: Pointer<Crop>
  + owner: Pointer<_User>
  + createdAt: Date
  + updatedAt: Date
}

class FarmingReminder {
  + objectId: String [PK]
  + reminderType: String
  + dueDate: Date
  + isCompleted: bool
  + farmland: Pointer<Farmland>
  + createdBy: Pointer<_User>
  + details: Object
  + createdAt: Date
  + updatedAt: Date
}

class GrowthRecord {
  + objectId: String [PK]
  + recordDate: Date
  + growthStage: String
  + healthStatus: String
  + images: Array<File>
  + farmland: Pointer<Farmland>
  + notes: String
  + weatherData: Object
  + createdAt: Date
  + updatedAt: Date
}

' 关系定义
_User "1" -- "n" Farmland : owns
Farmland "1" -- "n" FarmingReminder : has
Farmland "1" -- "n" GrowthRecord : contains
@enduml
```