公司动态
【Codex】用学生生活日常模块记录校园生活过程
学生生活日常记录学生每天的睡眠、运动、饮食、屏幕使用、情绪和压力是班主任观察学生状态波动的重要依据。它与稳定生活画像不同关注的是按日期持续更新的过程数据。本文基于StudentLifeDaily的模型、视图和 fast-crud 页面把学生选择、日期筛选、抽屉回显和数据维护转换为 Codex 可执行任务。文章目录设计与需求后端设计前端设计扩展功能数据联动Codex开发标准SOP 标准PDD 标准总结设计与需求学生生活日常不能只按普通 CRUD 理解。StudentLifeDaily模型以id_student stat_date作为唯一约束保存同一学生某一天的生活快照。字段覆盖sleep_hours、sleep_start_time、wake_time、sleep_quality_score、daytime_sleepiness、exercise_minutes、breakfast_flag、water_intake_level、daily_screen_time、short_video_minutes、gaming_minutes、night_device_use_flag、mood_score、stress_level、anxiety_flag、daily_note这些字段会被学生画像抽屉用于生活节律分和趋势图。Codex 接收任务时需要把“每日记录”这个时间粒度写进设计。它不能生成只按学生覆盖保存的画像表也不能把stat_date当成普通备注字段。前端独立页面用于维护全量记录学生管理抽屉通过studentRef带入当前学生只查看或维护该学生的日常快照。教育管理需求学生生活日常设计页面结构数据模型接口规则权限验收Codex生成代码需求层描述设计层转换Codex 代码生成方向学生身份通过 id_student、name_student、username_student 关联学生生成学生远程搜索和只读回显业务记录stat_date、sleep_hours、sleep_start_time、wake_time、sleep_quality_score、daytime_sleepiness、exercise_minutes、breakfast_flag、water_intake_level、daily_screen_time、short_video_minutes、gaming_minutes、night_device_use_flag、mood_score、stress_level、anxiety_flag、daily_note生成对应字段表单、列表列和基础校验日期筛选stat_date 支持范围查询生成 range_fields 与前端查询参数学生抽屉学生管理页打开子模块时带入当前学生生成 inStudentDrawer、studentRef 和自动刷新唯一快照id_student stat_date唯一生成重复日期保存校验和编辑回显画像统计日常数据参与学生画像抽屉趋势计算生成可追溯的生活分输入可以直接使用下面的Prompt进行模块功能的设计请基于教育管理系统源码设计 学生生活日常 模块不要编造代码中不存在的能力。 业务范围记录学生每日睡眠、运动、早餐、饮水、屏幕时间、情绪、压力和备注用于形成学生生活状态快照。 后端路径server_backend/modules/User/views_app/StudentLifeDaily.py 前端路径server_vue3/src/views/modules/User/StudentLifeDaily/index.vue、crud.tsx 接口入口/api/User/StudentLifeDaily/ 核心字段stat_date、sleep_hours、sleep_start_time、wake_time、sleep_quality_score、daytime_sleepiness、exercise_minutes、breakfast_flag、water_intake_level、daily_screen_time、short_video_minutes、gaming_minutes、night_device_use_flag、mood_score、stress_level、anxiety_flag、daily_note 扩展能力数据联动 请输出模块设计方案包含页面结构、数据模型、接口规则、权限验收、异常边界和 Codex 分阶段生成项目代码的任务拆分。扩展能力只允许使用源码中已经存在的能力。后端设计后端设计重点不是堆接口而是把学生生活日常沉淀成可复用的数据底座。StudentLifeDailyViewSet位于server_backend/modules/User/views_app/StudentLifeDaily.py开放get/post/put/delete使用CustomModelRefSerializer并把id_student、name_student、username_student设置为只读字段。模型层通过唯一约束避免同一学生同一天出现多条互相冲突的日常记录。筛选层使用CustomModelInFilter.create_for_modelicontains_fields覆盖学号、姓名、用户名、行政班和daily_noterange_fields[stat_date]支持按日期区间查询。这个范围筛选要同时服务独立页面列表和学生抽屉数据加载。后端设计项设计重点Codex 生成方向模型字段使用CustomModelRefSerializer按模型生成序列化规则保留只读学生身份字段和业务字段类型查询筛选使用SearchFilter与CustomModelInFilter支持姓名、学号、班级和日期范围查询路由注册在modules/User/urls.py通过DefaultRouter注册保持/api/User/模块名/接口风格权限边界依赖系统登录态和管理范围避免跨学生、跨班级访问敏感数据唯一约束id_student stat_date限制每日一条生成重复数据错误处理日期范围range_fields[stat_date]生成开始日期、结束日期查询参数可以直接使用下面的Prompt进行后端代码的设计请按 学生生活日常 的真实业务补齐或重构后端代码。 需要读取并遵守 - server_backend/modules/User/views_app/StudentLifeDaily.py - server_backend/modules/User/models.py - server_backend/modules/User/urls.py 生成要求 - 按 StudentLifeDaily 模型字段设计序列化规则不要新增无来源字段。 - 使用 CustomModelViewSet、CustomModelRefSerializer 和 CustomModelInFilter 保持项目风格。 - 补齐列表查询、详情、新增、编辑、删除或只读接口边界。 - 保留 read_only_fields、search_fields、range_fields 和权限校验逻辑。 - 扩展能力只实现数据联动。 - 输出需要包含模型字段说明、接口清单、路由注册、筛选规则、权限规则和异常处理。前端设计前端设计重点不是把字段堆到页面上而是让管理人员能高效录入和查看某名学生每天的状态。StudentLifeDaily/crud.tsx将表单分成学生信息、睡眠情绪、生活行为三组学生信息包含id_student、name_student、class_administrative、stat_date睡眠情绪包含睡眠时长、入睡时间、起床时间、睡眠质量、白天困倦、情绪、压力、焦虑标记生活行为包含运动、早餐、饮水、屏幕、短视频、游戏、夜间设备使用和备注。学生管理抽屉复用同一套 crud 配置并通过inStudentDrawer与studentRef把当前学生带入查询和新增表单。Codex 生成时要保留这种复用关系避免复制出一套与独立页面不一致的抽屉表格。前端设计项设计重点Codex 生成方向列表配置使用fs-crud组织分页、搜索和列展示生成crud.tsx的 columns、request、rowHandle表单结构学生身份字段只读业务字段按类型输入生成新增、编辑、回显和校验规则接口封装api.ts统一封装GetList/AddObj/UpdateObj/DelObj保持项目 request 调用规范抽屉场景学生详情页打开子模块时自动带入学生信息支持inStudentDrawer、studentRef和列表刷新表单分组学生信息、睡眠情绪、生活行为分组生成清晰的 tabs 或分组布局日期控件stat_date是快照日期生成日期选择、范围查询和回显可以直接使用下面的Prompt进行前端代码的设计请按 学生生活日常 的真实业务生成或补齐前端代码。 需要读取并遵守 - server_vue3/src/views/modules/User/StudentLifeDaily/index.vue、crud.tsx - server_vue3/src/views/modules/User/StudentLifeDaily/api.ts 生成要求 - 使用项目现有 fs-crud、Element Plus、request 封装和 api.ts 风格。 - 生成列表查询、筛选区域、新增编辑表单、详情或抽屉交互、权限按钮和保存回显。 - 处理字段转换学生远程搜索回填 id_student/name_student/username_student抽屉模式自动注入当前学生日期字段按 range_fields 支持范围查询 - 扩展交互只实现数据联动。 - 不要添加源码中未实现的扩展入口。扩展功能学生生活日常的扩展能力是学生上下文联动。它既能作为独立列表维护也能在学生管理抽屉中按当前学生过滤和回显。扩展功能主要用途落地重点数据联动独立列表与学生抽屉共用同一套接口按 id_student 自动筛选并补齐学生身份字段数据联动学生生活日常的数据联动体现在id_student、name_student、username_student、class_administrative、stat_date。独立页面中学生远程搜索回填身份字段抽屉模式中studentRef注入当前学生新增记录时自动带入学号、姓名、用户名和行政班。查询时id_student与stat_date范围共同决定列表数据。保存边界也要明确stat_date缺失时不能保存每日快照同一学生同一天重复保存时应进入编辑路径或给出重复提示生活日常不应反向修改学生主档。在学生画像抽屉中生活日常不是简单列表展示。StudentProfileLifeDrawer/index.vue会读取日常记录按睡眠质量、情绪、压力、运动、早餐、夜间设备使用和屏幕时长计算生活节律分并把多天数据聚合到趋势图。Codex 生成该模块时独立页面的字段类型要和抽屉统计函数保持一致例如sleep_quality_score、daytime_sleepiness、water_intake_level使用数值等级breakfast_flag、night_device_use_flag、anxiety_flag使用布尔值。独立页面和抽屉复用时还要注意查询参数。独立页面可以按学生、班级和日期范围检索抽屉模式必须强制带入当前id_student不能让用户在抽屉里看到其他学生记录。新增时如果studentRef已存在应自动填充学生身份字段减少重复录入。结果阶段处理阶段输入阶段筛选条件表单选择抽屉打开生成参数请求接口字段转换刷新列表表单回显状态更新交给 Codex 生成时要明确联动边界只处理源码中存在的字段和接口不把其他学生画像、考试分析或 AI 评估能力塞进本模块。保存动作必须保证 抽屉内只显示当前学生记录保存时自动补齐学生身份字段。可以直接使用下面的Prompt进行数据联动设计请为 学生生活日常 设计数据联动实现。 联动字段id_student、name_student、username_student、class_administrative、stat_date 接口参数id_student、stat_date 范围、学生搜索关键词 结果回填抽屉内只显示当前学生记录保存时自动补齐学生身份字段 源码边界只使用当前模块已经存在的模型字段、api.ts 请求和页面组件不新增未实现的业务能力。 请输出联动流程、字段映射表、异常处理、保存回显规则和需要修改的文件路径。Codex开发标准使用 Codex 开发学生生活日常时不能直接让模型自由写代码。PDD 定义业务边界和验收口径SOP 约束目录、文件职责和开发顺序接口权限规则保证生成代码能进入现有系统。验收交付Codex开发模块设计输入约束需求边界PDD设计SOP目录接口权限后端设计前端设计扩展功能读取上下文生成后端生成前端补齐扩展功能自检PDD验收问题修复模块交付SOP 标准SOP 用来约束代码目录、文件职责和开发顺序。学生生活日常的目录结构需要贴合现有User模块不应为单篇文章另起一套风格。server_backend/modules/User/ models.py views_app/StudentLifeDaily.py urls.py server_vue3/src/views/modules/User/StudentLifeDaily/ index.vue crud.tsx api.ts server_vue3/src/views/modules/User/StudentManage/Drawers/ StudentLifeDailyDrawer/index.vue StudentLifeDailyDrawer/crud.tsx docs/modules/学生生活日常/ pdd.md api.md test-cases.md codex-sop.md开发阶段Codex 执行目标输出结果模块设计读取模型、视图、路由和前端页面pdd.md明确业务边界目录规划对齐后端 views_app、前端模块目录和接口封装codex-sop.md明确文件职责后端实现生成模型序列化、视图接口、筛选和权限校验后端接口可被前端稳定调用前端实现生成列表、表单、抽屉、按钮和接口调用页面操作闭环可运行功能补齐按真实扩展能力补齐联动、批量、文件或生成逻辑扩展能力与源码一致验收修复根据 PDD 和测试用例修复偏差test-cases.md与代码一致可以直接使用下面的Prompt进行SOP撰写请为 学生生活日常 编写 Codex 开发 SOP。 要求 - 先输出目录结构不要直接写代码。 - 先生成 docs/modules/学生生活日常/pdd.md、api.md、test-cases.md 和 codex-sop.md。 - 目录必须贴合现有路径server_backend/modules/User/views_app/StudentLifeDaily.py、server_vue3/src/views/modules/User/StudentLifeDaily/index.vue、crud.tsx。 - SOP 需要约束模型字段、接口视图、路由注册、前端 crud 配置、接口封装、权限按钮、保存回显和扩展能力。 - 扩展能力只包含数据联动。 - 文档完成后再按 SOP 分阶段生成项目代码。PDD 标准PDD 是学生生活日常的设计与验收文档用于判断 Codex 输出是否符合真实业务。验收不能只看页面能否打开还要检查字段、接口、权限、筛选、联动和扩展能力是否匹配源码。验收维度验收重点通过标准业务目标记录学生每日睡眠、运动、早餐、饮水、屏幕时间、情绪、压力和备注用于形成学生生活状态快照。页面和接口能支撑模块业务闭环页面结构server_vue3/src/views/modules/User/StudentLifeDaily/index.vue、crud.tsx列表、表单、抽屉或操作按钮与源码一致数据模型stat_date、sleep_hours、sleep_start_time、wake_time、sleep_quality_score、daytime_sleepiness、exercise_minutes、breakfast_flag、water_intake_level、daily_screen_time、short_video_minutes、gaming_minutes、night_device_use_flag、mood_score、stress_level、anxiety_flag、daily_note字段类型、只读字段、唯一约束不偏离模型接口规则/api/User/StudentLifeDaily/列表、保存、删除、动作接口请求参数正确权限控制登录用户、班级范围或系统权限非授权数据不可越权访问测试用例正常、异常、空数据、回显和删除test-cases.md覆盖主要路径数据联动独立列表和学生抽屉按学生身份联动抽屉打开、保存、刷新均限定当前学生可以直接使用下面的Prompt进行PDD 验收请根据 docs/modules/学生生活日常/pdd.md 对 学生生活日常 进行验收。 验收范围业务目标、页面结构、数据模型、接口规则、权限控制、测试用例、数据联动。 请输出验收结果表字段包含验收项、通过状态、发现问题、涉及文件、修复建议。不要只给结论必须指出未通过项的具体文件位置和建议改法。总结学生生活日常不是简单日志它把睡眠、运动、饮食、设备使用和情绪压力沉淀为可追踪的每日快照为画像分析和班主任干预提供数据基础。Codex 开发这类学生子模块时应由 PDD 明确字段、日期范围和学生身份边界由 SOP 固定独立页面与抽屉复用方式再用 Prompt 约束查询、回显和保存逻辑。