queryModel.xml 10.4 KB
<?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.mapping.queryModel" >
  <!--banner查询 -->
  <select id="queryBanner" resultType="java.util.HashMap" parameterType="java.util.HashMap">
      SELECT
      t.id,
      t.title,
      t.pic_url AS picUrl,
      t.is_up AS isUp,
      t.weight,
      t.jump_type as jumpType
      FROM
      t_base_banner t
      WHERE
      t.is_delete =0
      <if test="title != null">
       AND t.title LIKE #{title}
      </if>
      ORDER BY t.create_dt DESC, t.weight DESC
  </select>


    <select id="queryUser" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        t.id,
        t.full_name as fullName,
        t.phone,
        t.duty,
        t.integral,
        t.user_category as userCategory,
        t.head_photo as headPhoto,
        date_format(t.create_dt,'%Y-%m-%d %H:%i:%S') createDt
        FROM
        t_kzy_user t
        WHERE
        1 = 1
        <if test="fullName != null">
            AND t.full_name LIKE #{fullName}
        </if>
        <if test="duty != null">
            AND t.duty LIKE #{duty}
        </if>
        <if test="phone != null">
            AND t.phone = #{phone}
        </if>
        ORDER BY t.create_dt DESC
    </select>

    <select id="queryUserIntegral" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        t.id,
        t.integral,
        t.source_type as sourceType,
        t.remark,
        date_format(t.create_dt,'%Y-%m-%d %H:%i:%S') createDt
        FROM
        t_kzy_user_integral_flowing t
        WHERE
        t.user_id = #{id,jdbcType=BIGINT}
        ORDER BY t.create_dt DESC
    </select>


    <select id="secondClassList" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
          t.id,
          t.class_name as className,
          t.type,
          t.`status`,
          t1.class_name as firstName,
          t.pic_url as picUrl,
          t.weight,
          date_format(t.create_dt,'%Y-%m-%d %H:%i:%S') createDt
        FROM
            t_base_second_class t
        LEFT JOIN t_base_first_class t1 ON t.first_id=t1.id
        WHERE t.first_id = #{firstClassId,jdbcType=BIGINT}
        ORDER BY t.weight DESC
    </select>

    <select id="getSecondClassById" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        t.id,
        t.class_name as className,
        t.type,
        t.`status`,
        t1.class_name as firstName,
        t.pic_url as picUrl,
        t.weight
        FROM
        t_base_second_class t
        LEFT JOIN t_base_first_class t1 ON t.first_id=t1.id
        WHERE t.id= #{id,jdbcType=BIGINT}
    </select>

    <select id="selectFirstClassList" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        t.id,
        t.class_name as className
        FROM
        t_base_first_class t
        WHERE t.`status` = 1
        <if test="name != null">
            AND t.class_name LIKE #{name}
        </if>
        ORDER BY t.id DESC
    </select>

    <select id="selectSecondClassList" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        t.id,
        t.class_name AS className
        FROM
        t_base_second_class t
        WHERE
        t.`status` = 1
        AND first_id =  #{id,jdbcType=BIGINT}
        <if test="type != null">
            AND t.type = #{type,jdbcType=INTEGER}
        </if>
        <if test="name != null">
            AND t.class_name LIKE #{name}
        </if>
        ORDER BY t.id DESC
    </select>

    <select id="queryCourseZb" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.course_name AS courseName,
        c.is_up as isUp,
        date_format(c.start_dt,'%Y-%m-%d %H:%i:%S') startDt,
        date_format(c.end_dt,'%Y-%m-%d %H:%i:%S') endDt,
        if(date_format(NOW(),'%Y-%m-%d %H:%i:%S') &lt; date_format(c.start_dt,'%Y-%m-%d %H:%i:%S'),0,if(date_format(NOW(),'%Y-%m-%d %H:%i:%S')&gt; date_format(c.end_dt,'%Y-%m-%d %H:%i:%S'),2,1)) status
        FROM
        t_kzy_course c
        WHERE c.course_type=1
        AND  c.is_delete = 0
        <if test="courseName != null">
            AND c.course_name LIKE #{courseName}
        </if>
        ORDER BY c.create_dt DESC
    </select>

    <select id="queryCourseLb" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.course_name AS courseName,
        date_format(c.create_dt,'%Y-%m-%d %H:%i:%S') createDt,
        if(c.live_url is not null,1,2) liveStatus,
        c.is_up AS isUp,
        c.weight
        FROM
        t_kzy_course c
        WHERE c.course_type=2
        AND  c.is_delete = 0
        <if test="courseName != null">
            AND c.course_name LIKE #{courseName}
        </if>
        ORDER BY c.create_dt DESC
    </select>


    <select id="queryCourseZbInfo" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.course_name AS courseName,
        c.pic_url AS picUrl,
        c.live_url AS liveUrl,
        c.course_introduce AS courseIntroduce,
        date_format(c.start_dt,'%Y-%m-%d %H:%i:%S') startDt,
        date_format(c.end_dt,'%Y-%m-%d %H:%i:%S') endDt
        FROM
        t_kzy_course c
        WHERE c.course_type = 1
        AND c.id = #{id,jdbcType=BIGINT}
    </select>


    <select id="queryCourseClass" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
            t.first_class_id as firstClassId,
          t1.class_name as firstName,
          t.second_class_id as secondClassId,
          t2.class_name as secondName
        FROM
            t_kzy_relation_class t
        LEFT JOIN t_base_first_class t1 ON t1.id= t.first_class_id
        LEFT JOIN t_base_second_class t2 ON t2.id = t.second_class_id
        where t.type =  #{type,jdbcType=INTEGER}
        AND t.relation_id = #{id,jdbcType=BIGINT}
        ORDER BY t.create_dt ASC
    </select>


    <select id="queryCourseLbInfo" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.course_name AS courseName,
        c.pic_url AS picUrl,
        c.live_url AS liveUrl,
        c.course_introduce AS courseIntroduce,
        c.weight
        FROM
        t_kzy_course c
        WHERE c.course_type = 2
        AND c.id = #{id,jdbcType=BIGINT}
    </select>


    <select id="queryInformation" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.title,
        c.author,
        c.pic_url AS picUrl,
        c.icon_url AS iconUrl,
        date_format(c.create_dt,'%Y-%m-%d %H:%i:%S') createDt,
        c.is_file AS isFile
        FROM
        t_kzy_information c
        WHERE c.is_delete = 0
        <if test="title != null">
            AND c.title LIKE #{title}
        </if>
        ORDER BY c.create_dt DESC
    </select>

    <select id="queryInformationInfo" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.title,
        c.author,
        c.pic_url AS picUrl,
        c.icon_url AS iconUrl,
        c.content,
        c.is_file AS isFile
        FROM
        t_kzy_information c
        WHERE c.id = #{id,jdbcType=BIGINT}
    </select>


    <select id="commentCourseList" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.reply_content as replyContent,
        c1.course_name as replyName,
        u.full_name as fullName,
        u.phone,
        c.auth_status as authStatus,
        date_format(c.auth_dt,'%Y-%m-%d %H:%i:%S') authDt,
        date_format(c.create_dt,'%Y-%m-%d %H:%i:%S') createDt
        FROM
        t_kzy_comment c
        LEFT JOIN t_kzy_course c1 ON  c.relation_id =c1.id
        LEFT JOIN t_kzy_user u ON  c.user_id=u.id
        WHERE c.is_delete=0 AND
        c.type=2 AND c.relation_id = #{id,jdbcType=BIGINT}
        ORDER BY c.auth_status ASC,c.create_dt ASC
    </select>

    <select id="commentInformationList" resultType="java.util.HashMap" parameterType="java.util.HashMap">
        SELECT
        c.id,
        c.reply_content as replyContent,
        c1.title as replyName,
        u.full_name as fullName,
        u.phone,
        c.auth_status as authStatus,
        date_format(c.auth_dt,'%Y-%m-%d %H:%i:%S') authDt,
        date_format(c.create_dt,'%Y-%m-%d %H:%i:%S') createDt
        FROM
        t_kzy_comment c
        LEFT JOIN t_kzy_information c1 ON  c.relation_id =c1.id
        LEFT JOIN t_kzy_user u ON  c.user_id=u.id
        WHERE c.is_delete=0 AND
        c.type=1 AND c.relation_id = #{id,jdbcType=BIGINT}
        ORDER BY c.auth_status ASC,c.create_dt ASC
    </select>


    <select id="queryCommentList" resultType="java.util.HashMap" parameterType="java.util.HashMap">
      SELECT * FROM (
        SELECT
            t.id,
            t.type,
            u.full_name AS fullName,
            u.phone,
            t.auth_status AS authStatus,
            t.auth_dt AS authDt,
            t.create_dt AS createDt,
            t.reply_content AS replyContent,
          c.course_name as name,
          t.relation_id as relationId
        FROM
            t_kzy_comment t
        LEFT JOIN t_kzy_course c ON t.relation_id = c.id
        LEFT JOIN t_kzy_user u ON t.user_id = u.id
        WHERE
            t.type = 2
        AND t.is_delete = 0
        <if test="authStatus != null">
            AND t.auth_status = #{authStatus,jdbcType=INTEGER}
        </if>
        <if test="name != null">
            AND c.course_name LIKE #{name}
        </if>
        UNION ALL
        SELECT
            t.id,
            t.type,
            u.full_name AS fullName,
            u.phone,
            t.auth_status AS authStatus,
            t.auth_dt AS authDt,
            t.create_dt AS createDt,
            t.reply_content AS replyContent,
          c.title as name,
          t.relation_id as relationId
        FROM
            t_kzy_comment t
        LEFT JOIN t_kzy_information c ON t.relation_id = c.id
        LEFT JOIN t_kzy_user u ON t.user_id = u.id
        WHERE
            t.type = 1
        AND t.is_delete = 0
        <if test="authStatus != null">
            AND t.auth_status = #{authStatus,jdbcType=INTEGER}
        </if>
        <if test="name != null">
            AND c.title LIKE #{name}
        </if>
        ) a
        ORDER BY a.createDt DESC
    </select>
</mapper>