TaskInfoMapper.xml 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.xs.core.mapper.task.TaskInfoMapper">
  4. <!-- 通用查询映射结果 -->
  5. <resultMap id="BaseResultMap" type="com.xs.core.model.task.entity.TaskInfo">
  6. <id column="id" property="id"/>
  7. <result column="name" property="name"/>
  8. <result column="name_ja" property="nameJa"/>
  9. <result column="name_ko" property="nameKo"/>
  10. <result column="name_th" property="nameTh"/>
  11. <result column="name_vi" property="nameVi"/>
  12. <result column="name_ru" property="nameRu"/>
  13. <result column="name_en" property="nameEn"/>
  14. <result column="name_pt" property="namePt"/>
  15. <result column="name_fa" property="nameFa"/>
  16. <result column="name_es" property="nameEs"/>
  17. <result column="instruction" property="instruction"/>
  18. <result column="task_icon" property="taskIcon"/>
  19. <result column="task_link" property="taskLink"/>
  20. <result column="task_accept_api_link" property="taskAcceptApiLink"/>
  21. <result column="category_code" property="categoryCode"/>
  22. <result column="status" property="status"/>
  23. <result column="gold_coin" property="goldCoin"/>
  24. <result column="sort_num" property="sortNum"/>
  25. <result column="is_deleted" property="isDeleted"/>
  26. <result column="create_by" property="createBy"/>
  27. <result column="update_by" property="updateBy"/>
  28. <result column="create_time" property="createTime"/>
  29. <result column="updated_time" property="updatedTime"/>
  30. </resultMap>
  31. <resultMap id="TaskInfoRespResultMap" type="com.xs.core.model.task.resp.TaskInfoResp">
  32. <result column="id" property="id"/>
  33. <result column="task_name" property="name"/>
  34. <result column="instruction" property="instruction"/>
  35. <result column="task_icon" property="taskIcon"/>
  36. <result column="task_link" property="taskLink"/>
  37. <result column="category_code" property="categoryCode"/>
  38. <result column="gold_coin" property="goldCoin"/>
  39. <result column="sort_num" property="sortNum"/>
  40. <result column="user_task_status" property="userTaskStatus"/>
  41. </resultMap>
  42. <select id="getTaskInfoList" resultMap="TaskInfoRespResultMap">
  43. SELECT
  44. ti.id,
  45. <choose>
  46. <when test="userLang == 'ja'">
  47. ti.name_ja
  48. </when>
  49. <when test="userLang == 'ko'">
  50. ti.name_ko
  51. </when>
  52. <when test="userLang == 'th'">
  53. ti.name_th
  54. </when>
  55. <when test="userLang == 'vi'">
  56. ti.name_vi
  57. </when>
  58. <when test="userLang == 'ru'">
  59. ti.name_ru
  60. </when>
  61. <when test="userLang == 'en'">
  62. ti.name_en
  63. </when>
  64. <when test="userLang == 'pt'">
  65. ti.name_pt
  66. </when>
  67. <when test="userLang == 'fa'">
  68. ti.name_fa
  69. </when>
  70. <when test="userLang == 'es'">
  71. ti.name_es
  72. </when>
  73. <otherwise>
  74. ti.name
  75. </otherwise>
  76. </choose>
  77. AS task_name,
  78. ti.instruction,
  79. ti.task_icon,
  80. ti.task_link,
  81. ti.category_code,
  82. ti.gold_coin,
  83. ti.sort_num,
  84. COALESCE(utr.status, 0) AS user_task_status
  85. FROM
  86. b_task_info ti
  87. LEFT JOIN
  88. b_user_task_record utr ON ti.id = utr.task_id AND utr.user_id = #{userId}
  89. <where>
  90. <if test="categoryCode != null and categoryCode != ''">
  91. AND ti.category_code = #{categoryCode}
  92. </if>
  93. </where>
  94. ORDER BY ti.sort_num
  95. </select>
  96. </mapper>