1.1 训练计划表 (TrainingPlan)
1.2 任务表 (Task)
1.3 任务执行记录表 (TaskExecution)
1.4 用户表 (User)
1.5 签到记录表 (SignInRecord)
以下是使用PlantUML表示的类图:
@startuml
class User {
+objectId: String
+createdAt: Date
+username: String
+email: String
+password: String
}
class TrainingPlan {
+objectId: String
+createdAt: Date
+user: Pointer
+goal: String
+content: String
+tasks: Array
}
class Task {
+objectId: String
+createdAt: Date
+plan: Pointer
+type: String
+name: String
+status: String
+count: Number
+duration: Number
+frequency: String
}
class TaskExecution {
+objectId: String
+createdAt: Date
+task: Pointer
+execDate: Date
+status: String
}
class SignInRecord {
+objectId: String
+user: Pointer
+signInDate: Date
+createdAt: Date
}
User "1" -- "0..*" TrainingPlan
TrainingPlan "1" -- "0..*" Task
Task "1" -- "0..*" TaskExecution
User "1" -- "0..*" SignInRecord
@enduml
TrainingPlan
Task
TaskExecution
SignInRecord
以下是根据上述业务逻辑描述生成的PlantUML时序图代码示例:
@startuml
actor User
participant App
participant TrainingPlan
participant Task
participant TaskExecution
participant SignInRecord
User -> App: 输入健身需求和体征信息
App -> TrainingPlan: 生成训练计划
TrainingPlan --> App: 返回训练计划
App -> Task: 根据训练计划生成任务列表
Task --> App: 插入任务数据
User -> App: 查看TodoList页面
App -> Task: 加载所有计划和子任务
App --> User: 展示计划和子任务
User -> App: 提交执行情况
App -> TaskExecution: 记录执行情况
TaskExecution --> App: 返回执行记录
App -> Task: 判断任务是否完成
Task --> App: 更新任务状态
User -> App: 签到
App -> SignInRecord: 记录签到信息
SignInRecord --> App: 返回签到记录
App -> User: 展示用户计划完成情况和进度
@enduml
通过这个设计,智能健身APP可以有效地管理用户的训练计划、任务执行和签到记录,提供良好的用户体验。