Blame view

VodDictMapper.xml 2.71 KB
涂亚平 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.subsidy.mapper.VodDictMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.subsidy.model.VodDictDO">
        <id column="id" property="id" />
        <result column="create_date" property="createDate" />
        <result column="update_date" property="updateDate" />
        <result column="delete_date" property="deleteDate" />
        <result column="content_id" property="contentId" />
        <result column="vod_name" property="vodName" />
        <result column="vod_length" property="vodLength" />
        <result column="vod_type" property="vodType" />
        <result column="vod_size" property="vodSize" />
        <result column="vod_url" property="vodUrl" />
        <result column="vod_code" property="vodCode" />
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        create_date,
        update_date,
        delete_date,
        id, content_id, vod_name, vod_length, vod_type, vod_size, vod_url, vod_code
    </sql>

涂亚平 committed
28
    <select id="getContendVods" resultType="com.subsidy.vo.vod.GetContendVodsVO">
涂亚平 committed
29 30 31 32 33 34 35 36 37 38
        SELECT
            t.*,
            t2.content
        FROM
            vod_dict t
            LEFT JOIN course_content t2 ON t.content_id = t2.id
        WHERE
            t.delete_date IS NULL
            AND t2.delete_date IS NULL
            AND t.content_id = #{contentId}
涂亚平 committed
39 40 41
            <if test="vodName != null and vodName !=''">
                and vod_name like concat('%',#{vodName} ,'%')
            </if>
涂亚平 committed
42 43
    </select>

涂亚平 committed
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
    <select id="getCourseVods" parameterType="long" resultType="com.subsidy.model.VodDictDO">
        SELECT
            t2.id,
            t2.vod_name
        FROM
            course_content t
            LEFT JOIN vod_dict t2 ON t.id = t2.content_id
        WHERE
            t.delete_date IS NULL
            AND t2.delete_date IS NULL
            and t.course_id = #{courseId}
            <if test="vodName != null and vodName !=''">
                and t2.vod_name like concat('%',#{vodName} ,'%')
            </if>
    </select>

    <select id="classVodCompleteInfo" resultType="com.subsidy.vo.vod.ClassVodCompleteInfoVO">
        SELECT
            count(DISTINCT ( t.member_id )) AS cnt,
            round( sum( t.play_length ) / count( DISTINCT ( t.member_id )), 0 ) studyLength
        FROM
            vod_play_history t
        WHERE
            t.class_id = #{classId}
            AND t.member_id IN
        <foreach collection="memberIds" item="id" index="index" open="(" close=")" separator=",">
            #{id}
        </foreach>

    </select>

涂亚平 committed
75
</mapper>