视图修改、接口修改

This commit is contained in:
2025-10-28 19:04:35 +08:00
parent 98c73632bd
commit c5c134fbb3
96 changed files with 7122 additions and 4194 deletions

View File

@@ -184,7 +184,7 @@
teacher, status, view_count, learn_count, order_num, creator, create_time
) VALUES (
#{id}, #{courseID}, #{name}, #{coverImage}, #{description}, #{content}, #{duration},
#{teacher}, #{status}, #{viewCount}, #{learnCount}, #{orderNum}, #{creator},#{createTime}
#{teacher}, #{status}, 0, 0, #{orderNum}, #{creator},#{createTime}
)
</insert>
@@ -248,15 +248,14 @@
<insert id="batchInsertCourses" parameterType="java.util.List">
INSERT INTO tb_course (
id, course_id, name, cover_image, description, content, duration,
teacher, status, view_count, learn_count, order_num, creator, updater,
create_time, update_time, delete_time, deleted
teacher, status, view_count, learn_count, order_num, creator,
create_time, delete_time, deleted
) VALUES
<foreach collection="courseList" item="item" separator=",">
(
#{item.id}, #{item.courseID}, #{item.name}, #{item.coverImage}, #{item.description},
#{item.content}, #{item.duration}, #{item.teacher}, #{item.status}, #{item.viewCount},
#{item.learnCount}, #{item.orderNum}, #{item.creator}, #{item.updater},
#{item.createTime}, #{item.updateTime}, #{item.deleteTime}, #{item.deleted}
#{item.content}, #{item.duration}, #{item.teacher}, #{item.status}, 0,
0, #{item.orderNum}, #{item.creator}, #{item.createTime}, #{item.deleteTime}, #{item.deleted}
)
</foreach>
</insert>
@@ -292,4 +291,14 @@
SET view_count = view_count + 1
WHERE course_id = #{courseID} AND deleted = 0
</update>
<!-- incrementLearnCount -->
<update id="incrementLearnCount">
UPDATE tb_course
SET learn_count = learn_count + #{count}
WHERE course_id = #{courseID} AND deleted = 0
</update>
</mapper>

View File

@@ -23,6 +23,27 @@
<result column="deleted" property="deleted" jdbcType="BOOLEAN"/>
</resultMap>
<resultMap id="CourseItemResultMap" type="org.xyzh.common.vo.CourseItemVO">
<id column="id" property="id" jdbcType="VARCHAR"/>
<result column="node_id" property="nodeID" jdbcType="VARCHAR"/>
<result column="chapter_id" property="chapterID" jdbcType="VARCHAR"/>
<result column="name" property="name" jdbcType="VARCHAR"/>
<result column="content" property="content" jdbcType="LONGVARCHAR"/>
<result column="node_type" property="nodeType" jdbcType="INTEGER"/>
<result column="resource_id" property="resourceID" jdbcType="VARCHAR"/>
<result column="video_url" property="videoUrl" jdbcType="VARCHAR"/>
<result column="duration" property="duration" jdbcType="INTEGER"/>
<result column="order_num" property="orderNum" jdbcType="INTEGER"/>
<result column="is_required" property="isRequired" jdbcType="INTEGER"/>
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
<!-- 学习记录相关字段 -->
<result column="progress" property="progress" jdbcType="DECIMAL"/>
<result column="is_complete" property="isComplete" jdbcType="BOOLEAN"/>
<result column="learning_duration" property="learningDuration" jdbcType="INTEGER"/>
<result column="last_learn_time" property="lastLearnTime" jdbcType="TIMESTAMP"/>
<result column="complete_time" property="completeTime" jdbcType="TIMESTAMP"/>
</resultMap>
<!-- 基础字段 -->
<sql id="Base_Column_List">
id, node_id, chapter_id, name, content, node_type, resource_id, video_url, duration, order_num, is_required,
@@ -236,4 +257,41 @@
AND deleted = 0
ORDER BY order_num ASC, create_time ASC
</select>
<!-- selectNodesProgress -->
<select id="selectNodesProgress" resultMap="CourseItemResultMap">
SELECT
tcn.id,
tcn.node_id,
tcn.chapter_id,
tcn.`name`,
tcn.content,
tcn.node_type,
tcn.resource_id,
tcn.video_url,
tcn.duration,
tcn.order_num,
tcn.is_required,
tcn.create_time,
tlr.duration as learning_duration,
tlr.progress,
tlr.is_complete,
tlr.last_learn_time,
tlr.complete_time
FROM
tb_course_node tcn
LEFT JOIN tb_learning_record tlr ON tcn.node_id = tlr.node_id
<if test="userID != null and userID != ''">
AND tlr.user_id = #{userID}
</if>
WHERE
tcn.chapter_id IN
<foreach collection="chapterIDs" item="chapterID" open="(" separator="," close=")">
#{chapterID}
</foreach>
AND tcn.deleted = 0
ORDER BY
tcn.order_num ASC,
tcn.create_time ASC
</select>
</mapper>

View File

@@ -125,11 +125,9 @@
<!-- 插入学习记录 -->
<insert id="insertLearningRecord" parameterType="org.xyzh.common.dto.study.TbLearningRecord">
INSERT INTO tb_learning_record (
id, user_id, task_id, resource_type, resource_id, course_id, chapter_id, node_id, duration, progress,
is_complete, complete_time, last_learn_time, create_time
id, user_id, task_id, resource_type, resource_id, course_id, chapter_id, node_id, create_time
) VALUES (
#{id}, #{userID}, #{taskID}, #{resourceType}, #{resourceID}, #{courseID}, #{chapterID}, #{nodeID}, #{duration}, #{progress},
#{isComplete}, #{completeTime}, #{lastLearnTime}, #{createTime}
#{id}, #{userID}, #{taskID}, #{resourceType}, #{resourceID}, #{courseID}, #{chapterID}, #{nodeID}, #{createTime}
)
</insert>
@@ -171,14 +169,11 @@
<!-- 批量插入学习记录 -->
<insert id="batchInsertLearningRecords" parameterType="java.util.List">
INSERT INTO tb_learning_record (
id, user_id, resource_type, resource_id, task_id, duration, progress,
is_complete, complete_time, last_learn_time, create_time, update_time
id, user_id, resource_type, resource_id, task_id, course_id, chapter_id, node_id, create_time
) VALUES
<foreach collection="learningRecordList" item="item" separator=",">
(
#{item.id}, #{item.userID}, #{item.resourceType}, #{item.resourceID}, #{item.taskID},
#{item.duration}, #{item.progress}, #{item.isComplete}, #{item.completeTime},
#{item.lastLearnTime}, #{item.createTime}, #{item.updateTime}
#{item.id}, #{item.userID}, #{item.resourceType}, #{item.resourceID}, #{item.taskID}, #{item.courseID}, #{item.chapterID}, #{item.nodeID}, #{item.createTime}
)
</foreach>
</insert>

View File

@@ -152,9 +152,9 @@
<!-- 插入任务用户关联 -->
<insert id="insertTaskUser" parameterType="org.xyzh.common.dto.study.TbTaskUser">
INSERT INTO tb_task_user (
id, task_id, user_id, dept_id,creator, create_time
id, task_id, user_id, dept_id,creator, status, progress, create_time
) VALUES (
#{id}, #{taskID}, #{userID}, #{deptID}, #{creator}, #{createTime}
#{id}, #{taskID}, #{userID}, #{deptID}, #{creator}, 0, 0, #{createTime}
)
</insert>
@@ -193,8 +193,8 @@
) VALUES
<foreach collection="taskUserList" item="item" separator=",">
(
#{item.id}, #{item.taskID}, #{item.userID}, #{item.deptID}, #{item.status},
#{item.progress}, #{item.completeTime}, #{item.creator}, #{item.createTime}
#{item.id}, #{item.taskID}, #{item.userID}, #{item.deptID}, 0,
0, #{item.completeTime}, #{item.creator}, #{item.createTime}
)
</foreach>
</insert>