# clmp-backend-dev **Repository Path**: stevenye/clmp-backend-dev ## Basic Information - **Project Name**: clmp-backend-dev - **Description**: # 综合学习管理平台后端 ## 1. 产品概述 综合学习管理平台是一个面向高校学生和企业员工的现代化在线教育平台,旨在融合AI能力,为用户提供智能化的学习支持。平台基于Java开发,采用Spring Boot框架和PostgreSQL数据库,以单体应用的模块化架构实现。 ### 目标用户 - 高校学生:通过平台进行课程学习、考试测评。 - 企业员工:参与企业内部培训、 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-19 - **Last Updated**: 2026-03-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 综合学习管理平台后端产品需求文档(PRD) ## 1. 产品概述 综合学习管理平台是一个面向高校学生和企业员工的现代化在线教育平台,旨在融合AI能力,为用户提供智能化的学习支持。平台基于Java开发,采用Spring Boot框架和PostgreSQL数据库,以单体应用的模块化架构实现。 ### 目标用户 - 高校学生:通过平台进行课程学习、考试测评。 - 企业员工:参与企业内部培训、技能提升。 - 管理用户:教师/讲师、管理员等。 ### 核心目标 1. 提供全面的学习功能:覆盖学习资源管理、课程教学、考试评估、学习过程跟踪与数据分析等核心场景。用户可以在线获取课程资源、完成课程和考试,并实时查看自己的学习进度和结果。 2. 集成AI智能服务:利用大模型等AI技术作为学习助手,支持智能问答、个性化推荐等功能。AI能力贯穿学习流程,帮助提升学习效率和个性化体验。 3. 满足多场景用户需求:既适用于高校在线教育,也支持企业内部培训。通过角色与权限控制,保障不同用户(如管理员、讲师、企业培训管理员、学员)在各自职能范围内高效使用系统。 4. 构建模块化易扩展架构:采用Maven多模块划分业务,模块边界清晰、层次分明,提高系统的可维护性与扩展性。在现有单体架构上,为未来演进为微服务架构做好准备。 ### 技术架构 - 后端技术:Spring boot + Spring Security + Spring Doc + Spring AI + Jwt + MP - 数据库及存储技术: PostgreSQL + Redis + 阿里OSS - 前端技术:vue3 + ts + axios + elementPlus + tailwindcss + echarts + pinia ## 2. 核心功能模块 平台的核心功能按照业务模块划分,包括用户管理、权限管理、资源管理、课程与学习方案管理、考试管理、系统管理与配置、学习过程管理、AI应用、数据分析等。 ### 2.1 用户管理[对应 user-mgmt模块] 用户管理模块提供平台学员账户的注册、登录及个人信息维护等功能,确保学员能够顺利使用平台进行学习。 - **用户注册与认证**:支持用户使用手机号、邮箱等进行账号注册,并通过用户名/密码登录。密码需采用安全的哈希存储以保障账户安全。支持防止暴力破解的机制,如连续登录失败次数超过限制时暂时锁定账号(通过`failed_login_attempts`和`locked_until`字段实现)。 - **第三方登录集成**:支持使用微信等第三方账号登录绑定。用户可选择使用微信快捷登录平台,系统通过存储微信OpenID/UnionID进行绑定识别。 - **个人资料管理**:用户注册后可完善个人信息,包括真实姓名、头像、联系方式等。支持记录扩展资料,如学历、职业、所在公司、兴趣爱好和学习目标等。这些信息有助于课程推荐和学习路径个性化。用户可随时更新个人资料数据。 - **账户状态管理**:用户账号默认激活,可由管理员禁用或启用(数据库`is_active`字段控制账户是否有效)。当用户忘记密码时,支持通过预留手机号/邮箱验证后重置密码功能(需确保手机号、邮箱唯一)。 - **用户收货地址(可选)**:支持用户维护收货地址信息。地址信息包括省市区和详细地址,可用于线下资料寄送或培训证明邮寄等场景。用户可以设置默认地址方便重复使用。 ### 2.2 权限管理[对应admin-auth模块] 权限管理模块提供后台管理端的账户及权限控制,确保不同角色的后台用户只能访问授权范围内的功能菜单和数据。 - **管理员管理**:平台设置独立的管理员账户体系(与学员账号分离)。支持超级管理员创建和管理后台管理员账号,包含基本信息(用户名、密码哈希、姓名、邮箱、电话等)和状态字段。可设置管理员账号启用/禁用状态,记录最近登录时间等。 - **角色管理**:支持创建不同的角色(如超级管理员、课程讲师、企业管理员等)并配置角色拥有的权限范围。角色信息包括角色名称、唯一编码、描述等。同一管理员可以授予多个角色,实现多角色叠加权限。管理员账号与角色是多对多关系,通过管理员-角色关联表维护。 - **菜单管理**:系统提供菜单/功能点管理,将后台功能以菜单层次展现(支持多级菜单、按钮和API接口等类型)。每个菜单有名称、唯一编码、前端路径、权限标识等属性。可配置菜单的启用状态和是否在前端隐藏。管理员通过角色赋权方式获取菜单访问权限,不同角色登录后仅能看到授权的菜单功能。菜单的权限标识(如`course:add`、`course:list`等)用于细粒度控制到按钮和API级别。超级管理员角色拥有所有权限,可以管理所有用户和配置;其他角色仅限于各自授权范围内操作。 - **部门管理**:通过角色-菜单关联表实现权限分配。系统后端基于Spring Security和JWT对接口请求进行鉴权,只有携带有效Token且拥有限定权限的请求才能访问对应接口。 ### 2.3 资源管理 资源管理模块用于统一管理平台的各类学习资源,包括文档和视频等数字内容。提供资源的上传、存储、转换和访问控制等功能。 - **文档资源管理**:支持上传课件文档、PDF、Word等文件。系统为每个上传文档生成唯一文件标识(`file_key`)以避免重复。记录文档名称、大小、类型等元数据。上传后后台触发格式转换流程(如将PPT转PDF或将PDF转为可在线预览的图片/HTML),并标记转换状态(等待转换/转换中/成功/失败)。转换成功后生成预览URL供前端在线阅览。系统统计文档的下载次数和浏览次数,供管理员评估资源使用情况。支持设置文档资源是否公开(公开的资源对所有用户可见,非公开则仅对授权用户或课程内学员可见)。 - **视频资源管理**:支持上传教学视频,记录视频名称、格式、时长、大小等信息。系统对上传视频进行自动转码处理:将原始视频文件转换为HLS流媒体格式(生成M3U8播放列表及分片文件),以实现在线流畅播放。转码过程在后台异步执行,不阻塞上传操作,并实时更新转码状态(`waiting/processing/completed/failed`)和进度百分比。成功后保存转码后的视频路径(m3u8文件)及缩略图路径。系统统计视频的播放次数,供分析课程内容受欢迎程度。同样支持设置视频资源的公开属性,未公开的视频仅限特定课程或用户访问。 - **资源存储与访问**:所有上传资源的存储路径在数据库中记录。平台可对接公有云对象存储服务保存大文件,并通过CDN加速用户访问。前端访问文档预览或视频播放时,由后端根据权限验证生成签名URL或直接提供资源URL。对非公开资源,系统验证用户的课程参与或权限后才允许下载/播放。 - **转码日志与异常处理**:系统记录视频转码的详细日志到数据库。日志包括每个转码任务的开始、结束时间、耗时、使用命令、错误信息等。管理员可在后台查看转码记录,便于排查转码失败原因或统计转码任务性能。对转换或转码失败的资源,支持重试转换或提供错误提示,以确保资源最终可用。 ### 2.4 课程与学习方案管理 课程与学习方案管理模块负责课程内容的创建组织,以及更高层次的课程组合规划(学习路径)的管理,帮助讲师灵活设计教学内容和培养方案。 - **课程管理**:支持创建和维护课程基本信息,包括课程名称、唯一编码、封面图片、详细描述等。课程配置难度等级(初级、中级、高级)、预计学时、标签等属性,方便学习者筛选检索课程。课程分为不同状态:编辑中的课程为草稿状态,准备就绪后可发布供学员报名学习,结束后可归档。平台支持设置课程价格及是否免费——免费课程学员可直接学习,付费课程则需走购买流程(未来可集成支付模块)。课程封面用于美观展示,管理员可上传课程封面图URL。 - **章节与小节**:课程内容按层次结构组织为章节和小节。讲师可在课程下新增章节,每个章节下面再创建若干小节。每个章节包含名称、顺序、描述等。小节是课程的最小学习单元,包含小节名称、顺序以及小节内容类型等属性。平台支持三类小节内容:视频、文档或测验(Quiz)。如果小节类型为视频或文档,需要关联相应资源ID,学习者可在线观看或阅读;如果类型为测验,可关联一套试题(例如引用题库中的试卷)以供学员练习。每个小节可标记预计学习时长用于学习计划参考。支持设置小节是否可免费试学(例如课程的前几节可以开放给未购买用户试看)。 - **学习方案**:学习方案(又称学习路径)用于将多个课程组合成系统化的培养计划。管理员或教务可创建学习方案,设定方案名称、唯一编码、描述、难度等信息。在一个学习方案下,可以关联多个课程,并指定每门课程在方案中的顺序和是否必修。通过方案-课程关联表管理方案包含的课程列表。标记必修/选修属性使方案更加灵活:学员必须完成所有必修课并可以根据兴趣选择部分选修课。学习方案也有状态概念(草稿/发布),发布后的方案学员可以查看并按照规划学习。此功能特别适用于企业培训制定分阶段的学习计划,或高校定义专业课程组合。 - **课程管理功能**:讲师或管理员可对课程进行修改、发布/下架等操作。课程发布后仍可更新内容但需要版本管理(例如提示已学习用户更新内容)。平台提供课程浏览和搜索功能,支持按关键字、难度、标签筛选课程,以便学员找到感兴趣的内容。管理员可以将课程关联AI知识库,使课程资料用于AI助教问答(见AI模块)。未来可扩展课程的学员管理(查看报名/加入该课程的学员列表)以及课程问答交流等功能。 ### 2.5 考试管理 考试管理模块提供在线考试与练习测验的全流程支持,包括题库管理、组卷、考试安排、在线答题和阅卷评分等功能,为学习效果评估提供支撑。 - **题库管理**:支持录入和维护试题题库。题库中一道试题包含题干内容、题型、选项、正确答案、解析、知识点、难度等属性。系统支持多种题型:单选题、多选题、判断题、填空题、简答题等。选项和正确答案采用JSON格式存储以兼容单选/多选等情况。每道题可以填写知识点、标签,便于后续按知识点出卷和统计分析。试题状态可设置有效/无效,用于题库管理。讲师或题库管理员可以在后台添加新题、编辑试题内容以及维护题目的解析和参考答案。支持从Excel批量导入题目和从题库检索题目功能,以提高组卷效率。 - **试卷组卷**:基于题库试题,考试管理员可以创建试卷。每张试卷包含试卷名称、类型(正式考试或练习测验)、总分、及格分、时间限制等设置。管理员将题库中的题目添加到试卷中,并为每题设置分值和在试卷中的序号顺序。系统支持检查试卷完整性(题目数量、总分是否匹配设定)。试卷可先保存为草稿状态,确认无误后发布为启用状态,用于正式考试或开放给学员练习。支持将试卷类型标记为练习模式或考试模式:练习模式下学员可自主练习,考试模式通常与具体考试场次关联。 - **考试计划与发布**:通过考试安排功能,管理员可以基于某张试卷创建一次具体考试。设定考试名称、关联试卷、考试开始和结束时间、限时答题时长等参数。考试可以设置是否公开参与:公开考试所有学员都可见并参加,非公开考试则只针对特定人群(如企业内部或特定课程的学员)。考试安排发布后,学员可以在考试开放时间内进入考试。系统根据考试时间窗口控制考生的开始时间与最晚提交时间。考试开始后倒计时计时,在截止时间或用完时长后自动提交。 - **在线考试与答题**:学员在平台上直接完成在线答题。客观题(选择、判断、填空等)在提交后系统自动判分;主观题(简答题)则进入待批阅状态。考试过程中,系统实时保存答题进度(防止页面意外关闭或网络问题导致答题数据丢失)。提交时,系统生成考试答卷快照保存当时试卷结构和学员答案,用于备查。支持对疑似作弊行为进行监测(例如同一IP大量提交等,需扩展)。 - **阅卷与成绩管理**:考试结束后,系统对客观题自动计算得分,对于需要人工批改的主观题,提供后台阅卷界面给讲师或管理员评分。每份提交生成一条考试记录,记录考生成绩、是否通过、用时等信息。对于每道题的作答生成答题记录,记录学员作答内容、得分、对错、评分者及评分时间等。支持判卷过程中的多种状态,如待批阅、已批阅、需要复核(针对AI自动评分结果需要人工复核的情况)。阅卷人可以调整AI判分或评分标准,并保存最终成绩。系统支持对每次考试计算通过率(根据成绩与及格线比较标记通过状态),并在考试统计报表中汇总数据。 - **成绩查询与分析**:学员可在个人中心查看自己参加过的考试成绩和解析,了解错题正确答案及解析(需要试卷配置提供)。管理员和讲师则可以查看某次考试整体情况,包括最高分、最低分、平均分、通过率等指标。系统支持按试卷统计各题的正确率等题目分析数据,帮助教师了解哪些知识点是学员的普遍薄弱点,以便改进教学。 ### 2.6 系统管理与配置 系统管理模块提供平台运行的一些全局配置维护,以及系统操作日志和数据字典管理等功能,保障系统的可配置性和运维监控。 - **系统参数配置**:提供全局参数设置功能,通过系统配置表维护键值对形式的配置项。每个配置有唯一的键、对应的值、类型(字符串、整数、布尔、JSON等)和描述说明。管理员可在后台动态修改配置项,常用于调整系统行为或阈值(例如文件上传大小限制、AI接口Key、功能开关等)而无需重启服务。配置修改需有权限控制和变更日志以便追溯(安全考虑)。常见配置例如:`file_upload_max_size`(文件上传大小)、`ai_default_model`(AI默认使用模型)等。 - **数据字典管理**:为方便前后端使用统一的枚举值,系统提供数据字典功能。包括字典类型和字典项两个层次:字典类型定义一类枚举的分类(如“用户状态”、“难度等级”等),字典项定义具体取值列表。管理员可通过后台界面增删改查字典项。例如,字典类型`difficulty_level`包含字典项:初级、中级、高级;`yes_no`类型包含是/否布尔值等等。字典数据状态可控制启用/禁用某些值。字典的维护可以帮助前端构建下拉列表,并确保逻辑判断使用统一标准值。删除字典类型时系统支持级联删除其字典项。常见的字典类型及项(部分已经在上述各模块字段中体现)包括:课程状态(`draft/published/archived`)、题目类型(`single_choice`等)、转换状态、考试状态等。 - **操作日志**:系统自动记录后台操作日志,保存管理员在管理端进行的重要操作行为。日志内容包括操作者ID、操作模块、操作类型/名称、请求URL和方法、提交参数、来源IP、浏览器信息、执行结果状态(成功/失败)及错误信息等。例如管理员“张三”在“用户管理”模块执行了“新增用户”操作,日志记录具体时间、参数和结果。操作日志有助于审计追踪和问题追查,当发生误操作或系统异常时,可以从日志中找到相关记录。 - **访问日志**:平台记录所有用户的访问日志,包括学员端的登录活动和关键接口访问情况。日志包含用户ID、访问类型(登录或API调用)、请求URL、IP地址、用户终端信息、访问时间和持续时长等。例如记录学员登录时间和IP,重要业务接口的调用耗时等。这些访问日志可以用于安全分析(检测异常登录)、性能分析(统计接口响应时间)和运营分析(看哪些功能使用频率高)。由于日志数据量较大,可考虑定期归档或清理策略。 - **系统监控与运维**:管理员通过系统管理模块还可以查看系统健康状态、缓存使用等(需与运维工具集成)。此外,提供异常告警功能:当出现严重错误(如第三方服务调用失败、转码任务失败等)时,系统能生成告警通知运维人员及时处理(此功能可结合日志和配置模块实现,如配置告警阈值)。系统管理模块还支持缓存清理等运维操作,例如当更改配置或字典后,允许管理员手动刷新缓存确保新配置即时生效。 ### 2.7 学习过程管理 学习过程管理模块关注学员在平台上的学习行为和进度,提供学习计划制定、学习进度跟踪、课程收藏与笔记等功能,帮助学员管理和回顾自己的学习过程,同时为教学提供反馈依据。 - **学习计划**:支持学员制定个人学习计划,设定阶段性学习目标。学员可以创建一个学习计划,填写计划名称、选择计划覆盖的目标课程列表、每日学习时长目标以及开始/结束日期等。学习计划创建后状态默认为进行中,可在完成后标记为已完成或取消。平台每日根据学员实际学习时长和完成节数对比计划目标,提示学员当日目标完成情况。如果学员连续未达成目标,平台可以给予提醒或由导师进行干预。该功能帮助学员制定自律学习时间表,例如“在3个月内完成Java入门课程,每日学习1小时”。 - **课程进度跟踪**:系统自动跟踪每个学员对各课程的学习进度。当学员开始学习一门课程时,系统在课程进度表中新建记录,包含学员ID、课程ID,实时更新完成百分比、累计学习时长等指标。完成率根据课程小节完成情况计算,学习时长则统计观看视频和阅读文档的时间总和。当完成率达到100%且通过所有该课程相关考试后,可标记课程状态为已完成并记录完成时间。支持对课程进度进行暂停/恢复(例如请假暂停学习)管理。学员可以在个人中心查看每门课程的进度和用时,对照学习计划调整自己的节奏。 - **学习记录**:针对视频等学习过程,系统提供更细粒度的小节学习记录。当学员观看视频小节时,系统实时记录观看进度(已观看时长及上次停止的位置)。若多次观看同一视频,系统累加总观看时长和观看次数。当视频观看完成(达到100%进度)时,标记该小节完成状态。通过这些数据,学员下次可以从上次停留的位置继续观看,系统也能判断哪些内容可能需要反复学习。对于文档类小节,系统可考虑记录阅读完成标志和大致耗时。学习记录数据还可用于后续学习行为分析(如哪些视频反复观看次数多,可能内容较难)。 - **课程收藏**:学员可以将感兴趣的课程添加到收藏列表。收藏操作可以在课程列表或课程详情页点击“收藏”实现,再次点击可取消收藏。收藏的课程集中显示在个人空间,方便学员快速访问已收藏课程。收藏记录表保存学员与课程的关联,确保同一课程不会被重复收藏。收藏功能一方面帮助学员管理学习意向,另一方面收藏数也可作为课程人气指标供管理端参考。 - **学习笔记**:提供在线笔记功能,方便学员在学习过程中记录要点和心得。学员可以在课程或小节页面添加笔记条目,笔记内容支持富文本和插入截图等。笔记记录包含所属课程、小节(如果是针对某视频/文档)、笔记内容、笔记标签、笔记位置等信息。例如学员在视频的某一分钟处添加笔记,系统会记录该时间点(`note_position`)以便将来回看视频时对应。学员可对笔记打标签分类(如“重点”“不解”等)。笔记默认仅自己可见,学员也可选择将特定笔记设置为公开,公开的笔记允许同课程的其他学员查看。这促进学员之间的知识共享和交流。管理员和讲师可以查看所有公开笔记,以了解学员对课程的反馈和疑问点。 - **学习反馈与评价**:平台支持学员对已学课程给予反馈和评价。学员完成一门课程后可以给出课程评分(例如五星制)并撰写评价意见。系统汇总所有学员评分计算出课程的平均评分,在课程信息中展示。评价意见可供讲师查看,用于改进课程内容或教学方式。由于数据库中有统计每日课程平均评分的字段`avg_rating`,后端应实现保存学员评分的数据结构(例如利用学习笔记或新增评价表,具体实现需在详细设计阶段确定)。另外,平台可引入问卷调查作为学习反馈的一部分,例如课程满意度调查、意见收集等,进一步获取用户体验信息。通过对学习反馈的分析,帮助课程运营人员优化课程设计和难度安排。 ### 2.8 AI 应用模块 AI应用模块将人工智能技术融入学习平台,提供智能问答、个性化推荐等功能,打造“AI学习助手”,提升用户学习体验和学习效率。 - **智能问答助手**:集成大语言模型(如ChatGPT)的聊天机器人,为学员提供7x24小时的智能答疑服务。学员可以通过与AI助手聊天提问课程相关知识点、作业解题思路或拓展学习内容。系统支持多轮对话,AI助手能够记忆上下文(可配置上下文轮次长度,如默认记忆最近10条对话),提供连贯的讲解。聊天过程中,用户消息和AI回复都会记录在聊天会话和消息表中。每条消息包含发送者(用户或助手身份)、消息内容、消耗的token数量等信息。为了确保回复质量和控制成本,系统可以限制单次会话的问题次数或Token总量,并在后台统计AI使用情况(详见数据分析模块)。AI助手作为学习辅导工具,能够引导学员思考、提供参考解答,但不会直接给出考试答案,避免助长不当行为。 - **AI知识库**:支持将特定资料构建为AI可引用的知识库,实现定制化问答。管理员或讲师可以创建知识库条目,上传专业文档(如教材章节、企业内部资料)作为AI回答问题的参考来源。系统对上传文档进行文本解析和向量化处理:将文档分片为知识段落,并使用嵌入模型将每段内容转化为向量向数据库存储(需依赖PostgreSQL的pgvector扩展支持)。知识库文档表记录每个文档所属知识库ID、名称、类型、分片数量、向量化状态等。当学员就相关主题提问时,AI助手会优先从知识库匹配相关内容,从而给出更精准的基于资料的回答(比如回答企业内部培训材料中的问题)。管理员可管理知识库的启用状态,当资料更新时可以提升版本号并重新向量化处理。通过知识库,平台可为不同机构或课程提供定制的AI问答服务。 - **个性化学习推荐**:平台利用AI算法为学员提供学习内容推荐。根据学员的个人资料(如兴趣爱好、职业或学习目标)、历史学习行为和成绩等数据,AI模型评估其偏好和薄弱环节,推荐相应的课程、资源或学习方案。例如,完成Java基础课程的学员可能收到进阶课程推荐;考试成绩不佳的学员可能得到相关练习题推荐。推荐结果存储在智能推荐表,记录推荐给某用户的对象ID、类型(课程/资源/学习方案)、推荐理由和评分等。系统确保每条推荐仅针对相应用户(通过`user_id`关联),用户查看后标记为已读,若用户接受了推荐(如点击学习某课程)则标记为已接受。推荐算法初期可采用规则和简单协同过滤,后续可引入机器学习模型实时调整推荐策略。管理员可以在后台配置是否开启个性化推荐,以及查看推荐效果数据。 - **AI模型配置与管理**:为了支持不同AI服务商或模型,系统提供AI模型配置功能。管理员可以在后台添加可用的AI模型记录,包括模型名称、类型(对话模型、文本嵌入模型等)、API调用地址、所需的API Key、最大token数限制、温度参数等。可以设定某模型为默认使用模型,以及模型状态(启用/停用)。当AI助手或嵌入向量功能需要调用AI服务时,系统会读取配置的模型接口信息进行调用。这种设计让平台能够灵活切换或升级AI能力,例如更换为更高性能的模型或本地部署的开源模型。同时,平台也可以针对不同用途配置不同模型(比如聊天采用对话模型,知识库嵌入采用Embedding模型等)。模型配置的敏感信息如API Key需妥善加密存储,前端不可直接读取,只有系统后台在调用AI服务时使用。 - **AI辅助教学(扩展方向)**:除上述功能外,AI还可用于内容生成和教学分析等。例如:根据课程素材自动生成课后练习题或知识点总结;对主观题作答给予智能评分建议;监测学习过程数据并智能预警(如长期未学习提醒)。这些功能可在未来版本逐步探索,实现真正的AI赋能教育。 ### 2.9 数据分析模块 数据分析模块对平台运行过程中产生的大量学习行为数据进行统计和挖掘,生成多维度的分析报表,帮助管理员、讲师和企业管理者了解学习情况、评估教学效果并支持决策。 - **用户学习统计**:系统按天汇总每个用户的学习数据,生成用户学习统计日报。统计内容包括日期、该用户当天总学习时长、完成的小节数量、新增学习课程数、撰写笔记数、参加考试数,以及考试平均分等。这些数据可以用来跟踪个人学习习惯,也可供企业管理者查看员工的每日学习投入。通过纵向对比某用户不同时段的统计,能够发现其学习活跃度变化;横向对比不同用户的统计,可以筛选出学习积极的标兵或需要关注的落后学员。 - **课程学习统计**:系统生成课程学习统计日报,以课程为单位按天统计该课程的学习情况。包括当日新增学习该课程的学员数、当日活跃学习该课程的总人数、当日完成该课程的学员数,以及人均学习时长和平均评分等指标。这些数据帮助课程负责人评估课程受欢迎程度和难度:例如新增和活跃人数反映课程人气,完成率和平均评分反映课程难易和满意度。持续监测还能发现课程学习人数的趋势变化,为课程运营提供依据(如需要更新内容或调整难度时)。 - **考试统计**:对于每场考试,系统提供考试统计报表。统计每次考试的总参与人数、平均得分、通过率(及格人数占比),以及最高分、最低分等关键指标。此外系统对试卷中的每道题进行分析,汇总出题目正确率、选项分布、常见错误等形成题目分析(`question_analysis`)结果。这些数据帮助教师了解整体考试情况,例如某次考试通过率偏低则说明考试难度大或学员准备不足;某题正确率很低则提示该知识点可能需要重新讲解。考试统计报表可按考试场次查看,也可以汇总某门课程下所有考试的平均指标。 - **AI使用分析**:平台监控AI功能的使用情况,生成AI使用统计报表。统计每日平台中AI助手对话的总会话数、消息数,以及AI回答累计使用的Token数量。还记录平均每个会话交互轮数(session长度)和当日被提问最多的热门问题关键词。这些指标有助于评估AI服务的负载和价值:例如总会话数反映AI使用频率,热门问题可以指导知识库扩充。管理员可根据AI使用率(如平台每日AI使用率`stat_ai_usage`表中的指标)来决定模型配额、QPS限制等运维策略,以控制成本和保证响应速度。 - **平台整体运营统计**:系统提供平台综合统计日报,汇总平台整体的运营数据。包括每日全站新增用户数、活跃用户数、累计用户总数,累计课程数量、全站学习总时长、累计考试场次数等。还可以计算AI功能的总体使用率(AI相关操作次数占总学习操作次数的比例)。这些宏观指标帮助管理层了解平台增长和使用情况,如用户增长曲线、内容增长和用户黏性等,是产品运营决策的重要依据。 - **学习行为分析**:为深入洞察学员的行为习惯,系统建立学习行为分析表。对每个用户每日记录关键行为次数:登录次数、启动学习会话次数(一次学习会话可定义为登陆后的一段持续学习过程)、收藏操作次数、笔记操作次数、评价操作次数等。同时计算学员学习活动最频繁的时段(Peak Study Hour,例如统计一天中哪个小时段登录/学习频次最高)。这些行为数据可以用于分类学员类型(自律型、突击型等)以及针对性地推送激励措施。例如,若发现某学员多日未登录,可自动提醒;若大部分学员的高峰学习时间是晚上8点,则可以选择此时间发布新课程通知以提高查看率。学习行为分析也能帮助企业了解员工利用碎片时间学习的情况,作为培训效果评估的一部分。 - **数据展现与报表**:上述分析数据将通过后台管理端的数据报表界面展现。管理员可以选择不同维度(按天、按用户、按课程、按企业等)查看统计图表,包括折线图(趋势)、柱状图(对比)和饼图(分布)等。支持导出报表数据为Excel/PDF格式,方便进一步加工或汇报。企业管理者角色可以查看本企业员工的汇总学习数据报表(需要根据用户profile的公司字段筛选)。讲师角色可以查看自己课程相关的数据统计。通过数据分析模块,各级用户都能量化地掌握学习效果,从而不断改进教学策略或学习方法。