FsUserCourseTrainingCampMapper.xml 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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.companyId != null and params.companyId != ''">
  24. and ctp.company_id like concat('%',#{params.companyId},'%')
  25. </if>
  26. <if test="params.userId != null and params.userId != ''">
  27. and cu.user_id = #{params.userId}
  28. </if>
  29. </where>
  30. group by ctc.training_camp_id, ctc.training_camp_name, ctc.order_number
  31. order by
  32. <choose>
  33. <when test="params.scs != null and params.scs.size() > 0">
  34. <foreach collection="params.scs" item="sc" separator=",">
  35. ${sc.column} ${sc.order}
  36. </foreach>
  37. </when>
  38. <otherwise>
  39. ctc.order_number desc, ctc.training_camp_id desc
  40. </otherwise>
  41. </choose>
  42. </select>
  43. <select id="selectCampListByMap" resultType="com.fs.his.vo.OptionsVO">
  44. select
  45. ctc.training_camp_id dictValue,
  46. ctc.training_camp_name dictLabel
  47. from fs_user_course_training_camp ctc
  48. <where>
  49. ctc.del_flag ='0'
  50. <if test="params.name != null and params.name != ''">
  51. and ctc.training_camp_name like concat('%', #{params.name}, '%')
  52. </if>
  53. </where>
  54. </select>
  55. </mapper>