hejianhao
2026-08-20 f8579c049a8ea49d2ce93255f95c024033707103
feat0806: 我的课程报错
2个文件已修改
19 ■■■■■ 已修改文件
tcm-training-admin-backend/src/main/resources/mapper/HealthCourseMemberJoinRecordMapper.xml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
traditionalApp/pages/mine/mine.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
tcm-training-admin-backend/src/main/resources/mapper/HealthCourseMemberJoinRecordMapper.xml
@@ -4,11 +4,14 @@
<mapper namespace="com.tcm.training.admin.live.mapper.HealthCourseMemberJoinRecordMapper">
    <select id="selectActiveCourseIdsByUserId" resultType="java.lang.Long">
        SELECT DISTINCT r.course_id
        FROM tcm_health_course_member_join_record r
        WHERE r.app_user_id = #{appUserId}
          AND r.deleted = 0
        ORDER BY r.joined_at DESC, r.id DESC
        SELECT DISTINCT course_id
        FROM (
        SELECT course_id, joined_at, id
        FROM tcm_health_course_member_join_record
        WHERE app_user_id = #{appUserId}
        AND deleted = 0
        ORDER BY joined_at DESC, id DESC
        ) t;
    </select>
</mapper>
traditionalApp/pages/mine/mine.vue
@@ -155,7 +155,7 @@
})
const WEIZAN_LIVE_STATS_URL = 'https://www.vzan.com'
const WEIZAN_LIVE_ORDER_URL = 'https://www.vzan.com'
const WEIZAN_LIVE_ORDER_URL = 'https://wzzhibo.haizhentong.com/live/m/order/myorder?zbid=1247381477&tpid=0&state=0&v=1787212292181'
const bottomMenuList = computed<MenuItem[]>(() => {
    const baseList = [
@@ -163,9 +163,9 @@
        { title: '帮助中心', icon: '/static/image/mine/help.png', url: '/pages/helpCenter/helpCenter', iconClass: 'icon-help' },
        { title: '意见反馈', icon: '/static/image/mine/message.png', url: '/pages/feedback/feedback', iconClass: 'icon-feedback' },
    ]
    const liveOrderItem = { title: '直播订单', icon: '', url: '', iconClass: 'icon-live-order', requiresLogin: true, dynamicVzan: true }
    const liveOrderItem = { title: '直播订单', icon: '/static/image/mine/dingdan.png', url: buildWebviewUrl(WEIZAN_LIVE_ORDER_URL, '直播订单'), iconClass: 'icon-live-order', requiresLogin: true }
    const liveStatsList = Number(userCenter.value.type) === 1
        ? [{ title: '直播统计', icon: '', url: '', iconClass: 'icon-live-stats', requiresLogin: true, dynamicVzan: true }]
        ? [{ title: '直播统计', icon: '/static/image/mine/list.png', url: '', iconClass: 'icon-live-stats', requiresLogin: true, dynamicVzan: true }]
        : []
    const agreementList = [
        { title: '用户协议', icon: '/static/image/mine/coustom.png', url: '/pages/protocol/protocol?type=user', iconClass: 'icon-user-agree' },