FsUserCourseTrainingCampMapper.xml 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.fs.course.mapper.FsUserCourseTrainingCampMapper">
  6. <!-- 查询训练营列表 -->
  7. <select id="selectFsUserCourseTrainingCampVOListByMap" resultType="com.fs.course.vo.FsUserCourseTrainingCampVO">
  8. select
  9. ctc.training_camp_id,
  10. ctc.training_camp_name,
  11. ctc.order_number,
  12. min(if(ctp.period_starting_time >= CURDATE(), ctp.period_starting_time, null)) as recent_date,
  13. count(distinct ctp.period_id) as period_count,
  14. count(distinct cu.user_id) as vip_count
  15. from fs_user_course_training_camp ctc
  16. left join fs_user_course_period ctp on ctc.training_camp_id = ctp.training_camp_id
  17. left join fs_course_watch_log cu on cu.period_id = ctp.period_id
  18. <where>
  19. ctc.del_flag ='0'
  20. <if test="params.trainingCampName != null and params.trainingCampName != ''">
  21. and ctc.training_camp_name like concat('%',#{params.trainingCampName},'%')
  22. </if>
  23. <if test="params.userId != null and params.userId != ''">
  24. and ctc.user_id like concat('%',#{params.userId},'%')
  25. </if>
  26. </where>
  27. group by ctc.training_camp_id, ctc.training_camp_name, ctc.order_number
  28. order by
  29. <choose>
  30. <when test="params.scs != null and params.scs.size() > 0">
  31. <foreach collection="params.scs" item="sc" separator=",">
  32. ${sc.column} ${sc.order}
  33. </foreach>
  34. </when>
  35. <otherwise>
  36. ctc.order_number desc, ctc.training_camp_id desc
  37. </otherwise>
  38. </choose>
  39. </select>
  40. <select id="selectCampListByMap" resultType="com.fs.his.vo.OptionsVO">
  41. select
  42. ctc.training_camp_id dictValue,
  43. ctc.training_camp_name dictLabel
  44. from fs_user_course_training_camp ctc
  45. <where>
  46. <if test="params.name != null and params.name != ''">
  47. ctc.training_camp_name like concat('%', #{params.name}, '%')
  48. </if>
  49. </where>
  50. </select>
  51. </mapper>