QuestionInfoMapper.xml 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  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.miaxis.question.mapper.QuestionInfoMapper">
  6. <resultMap type="QuestionInfo" id="QuestionInfoResult">
  7. <result property="id" column="id" />
  8. <result property="number" column="number" />
  9. <result property="answer" column="answer" />
  10. <result property="answerkeyword" column="answerkeyword" />
  11. <result property="explainGif" column="explain_gif" />
  12. <result property="explainJq" column="explain_jq" />
  13. <result property="explainJs" column="explain_js" />
  14. <result property="explainMp3" column="explain_mp3" />
  15. <result property="image" column="image" />
  16. <result property="imageYdt" column="image_ydt" />
  17. <result property="issue" column="issue" />
  18. <result property="opts" column="opts" />
  19. <result property="skillkeyword" column="skillkeyword" />
  20. <result property="titlekeyword" column="titlekeyword" />
  21. <result property="issuemp3" column="issuemp3" />
  22. <result property="answermp3" column="answermp3" />
  23. <result property="explainjsmp3" column="explainjsmp3" />
  24. <result property="liceCar" column="lice_car" />
  25. <result property="liceBus" column="lice_bus" />
  26. <result property="liceTruck" column="lice_truck" />
  27. <result property="liceMoto" column="lice_moto" />
  28. <result property="sequeIssue" column="seque_issue" />
  29. <result property="classIssue" column="class_issue" />
  30. <result property="placeIssue" column="place_issue" />
  31. <result property="excellIssue" column="excell_issue" />
  32. <result property="copyIssue" column="copy_issue" />
  33. <result property="mockIssue" column="mock_issue" />
  34. <result property="sequeIssueName" column="seque_issue_name" />
  35. <result property="placeIssueName" column="place_issue_name" />
  36. <result property="excellIssueName" column="excell_issue_name" />
  37. <result property="classIssueName" column="class_issue_name" />
  38. <result property="createTime" column="create_time" />
  39. <result property="updateTime" column="update_time" />
  40. <result property="subject" column="subject" />
  41. <result property="classSort" column="class_sort" />
  42. <result property="excellSort" column="excell_sort" />
  43. <result property="sequeSort" column="seque_sort" />
  44. <result property="placeSort" column="place_sort" />
  45. </resultMap>
  46. <sql id="selectQuestionInfoVo">
  47. select * from question_info
  48. </sql>
  49. <select id="selectQuestionInfoList" parameterType="QuestionInfoDTO" resultMap="QuestionInfoResult">
  50. <include refid="selectQuestionInfoVo"/>
  51. <where>
  52. <if test="number != null "> and number = #{number}</if>
  53. <if test="answer != null and answer != ''"> and answer = #{answer}</if>
  54. <if test="answerkeyword != null and answerkeyword != ''"> and answerkeyword = #{answerkeyword}</if>
  55. <if test="explainGif != null and explainGif != ''"> and explain_gif = #{explainGif}</if>
  56. <if test="explainJq != null and explainJq != ''"> and explain_jq = #{explainJq}</if>
  57. <if test="explainJs != null and explainJs != ''"> and explain_js = #{explainJs}</if>
  58. <if test="explainMp3 != null and explainMp3 != ''"> and explain_mp3 = #{explainMp3}</if>
  59. <if test="image != null and image != ''"> and image = #{image}</if>
  60. <if test="imageYdt != null and imageYdt != ''"> and image_ydt = #{imageYdt}</if>
  61. <if test="issue != null and issue != ''"> and issue = #{issue}</if>
  62. <if test="opts != null and opts != ''"> and opts = #{opts}</if>
  63. <if test="skillkeyword != null and skillkeyword != ''"> and skillkeyword = #{skillkeyword}</if>
  64. <if test="titlekeyword != null and titlekeyword != ''"> and titlekeyword = #{titlekeyword}</if>
  65. <if test="issuemp3 != null and issuemp3 != ''"> and issuemp3 = #{issuemp3}</if>
  66. <if test="answermp3 != null and answermp3 != ''"> and answermp3 = #{answermp3}</if>
  67. <if test="explainjsmp3 != null and explainjsmp3 != ''"> and explainjsmp3 = #{explainjsmp3}</if>
  68. <if test="liceCar != null and liceCar != ''"> and lice_car = #{liceCar}</if>
  69. <if test="liceBus != null and liceBus != ''"> and lice_bus = #{liceBus}</if>
  70. <if test="liceTruck != null and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
  71. <if test="liceMoto != null and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
  72. <if test="sequeIssue != null and sequeIssue != ''"> and seque_issue = #{sequeIssue}</if>
  73. <if test="classIssue != null and classIssue != ''"> and class_issue = #{classIssue}</if>
  74. <if test="placeIssue != null and placeIssue != ''"> and place_issue = #{placeIssue}</if>
  75. <if test="excellIssue != null and excellIssue != ''"> and excell_issue = #{excellIssue}</if>
  76. <if test="copyIssue != null and copyIssue != ''"> and copy_issue = #{copyIssue}</if>
  77. <if test="mockIssue != null and mockIssue != ''"> and mock_issue = #{mockIssue}</if>
  78. <if test="sequeIssueName != null and sequeIssueName != ''"> and seque_issue_name like concat('%', #{sequeIssueName}, '%')</if>
  79. <if test="placeIssueName != null and placeIssueName != ''"> and place_issue_name like concat('%', #{placeIssueName}, '%')</if>
  80. <if test="excellIssueName != null and excellIssueName != ''"> and excell_issue_name like concat('%', #{excellIssueName}, '%')</if>
  81. <if test="questionType != null "> and question_type = #{questionType}</if>
  82. <if test="subject != null and subject != ''"> and subject = #{subject}</if>
  83. </where>
  84. <if test="isRand!=null and isRand!=''"> order by rand() </if>
  85. <if test="isRand==null or isRand=='' and sort!=null and sort!='' "> order by IFNULL(${sortName},10000) </if>
  86. </select>
  87. <select id="selectNormalQuestionInfoList" parameterType="QuestionInfoDTO" resultMap="QuestionInfoResult">
  88. <include refid="selectQuestionInfoVo"/>
  89. <where>
  90. <if test="number != null "> and number = #{number}</if>
  91. <if test="answer != null and answer != ''"> and answer = #{answer}</if>
  92. <if test="answerkeyword != null and answerkeyword != ''"> and answerkeyword = #{answerkeyword}</if>
  93. <if test="explainGif != null and explainGif != ''"> and explain_gif = #{explainGif}</if>
  94. <if test="explainJq != null and explainJq != ''"> and explain_jq = #{explainJq}</if>
  95. <if test="explainJs != null and explainJs != ''"> and explain_js = #{explainJs}</if>
  96. <if test="explainMp3 != null and explainMp3 != ''"> and explain_mp3 = #{explainMp3}</if>
  97. <if test="image != null and image != ''"> and image = #{image}</if>
  98. <if test="imageYdt != null and imageYdt != ''"> and image_ydt = #{imageYdt}</if>
  99. <if test="issue != null and issue != ''"> and issue = #{issue}</if>
  100. <if test="opts != null and opts != ''"> and opts = #{opts}</if>
  101. <if test="skillkeyword != null and skillkeyword != ''"> and skillkeyword = #{skillkeyword}</if>
  102. <if test="titlekeyword != null and titlekeyword != ''"> and titlekeyword = #{titlekeyword}</if>
  103. <if test="issuemp3 != null and issuemp3 != ''"> and issuemp3 = #{issuemp3}</if>
  104. <if test="answermp3 != null and answermp3 != ''"> and answermp3 = #{answermp3}</if>
  105. <if test="explainjsmp3 != null and explainjsmp3 != ''"> and explainjsmp3 = #{explainjsmp3}</if>
  106. <if test="liceCar != null and liceCar != ''"> and lice_car = #{liceCar}</if>
  107. <if test="liceBus != null and liceBus != ''"> and lice_bus = #{liceBus}</if>
  108. <if test="liceTruck != null and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
  109. <if test="liceMoto != null and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
  110. <if test="sequeIssue != null and sequeIssue != ''"> and seque_issue = #{sequeIssue}</if>
  111. <if test="classIssue != null and classIssue != ''"> and class_issue = #{classIssue}</if>
  112. <if test="placeIssue != null and placeIssue != ''"> and place_issue = #{placeIssue}</if>
  113. <if test="excellIssue != null and excellIssue != ''"> and excell_issue = #{excellIssue}</if>
  114. <if test="copyIssue != null and copyIssue != ''"> and copy_issue = #{copyIssue}</if>
  115. <if test="mockIssue != null and mockIssue != ''"> and mock_issue = #{mockIssue}</if>
  116. <if test="sequeIssueName != null and sequeIssueName != ''"> and seque_issue_name like concat('%', #{sequeIssueName}, '%')</if>
  117. <if test="placeIssueName != null and placeIssueName != ''"> and place_issue_name like concat('%', #{placeIssueName}, '%')</if>
  118. <if test="excellIssueName != null and excellIssueName != ''"> and excell_issue_name like concat('%', #{excellIssueName}, '%')</if>
  119. <if test="classIssueName != null and classIssueName != ''"> and class_issue_name like concat('%', #{classIssueName}, '%')</if>
  120. <if test="questionType != null "> and question_type = #{questionType}</if>
  121. </where>
  122. limit 0,50
  123. </select>
  124. <select id="selectQuestionInfoListIds" parameterType="Long" resultMap="QuestionInfoResult">
  125. <include refid="selectQuestionInfoVo"/>
  126. <where>
  127. and id in
  128. <foreach collection="array" item="id" index="index" open="(" close=")" separator=",">
  129. #{id}
  130. </foreach>
  131. </where>
  132. </select>
  133. <select id="selectJxQuestionInfo" resultType="com.miaxis.question.vo.QuestionInfoJxVO">
  134. SELECT
  135. DISTINCT case WHEN excell_issue_name is null then '地方专题' else excell_issue_name end as "excell_issue_name",
  136. excell_issue
  137. FROM question_info
  138. <where>
  139. <if test="subject != null and subject != ''"> and subject = #{subject}</if>
  140. <if test="liceCar != null and liceCar != ''"> and lice_car = #{liceCar} </if>
  141. <if test="liceBus != null and liceBus != ''"> and lice_bus = #{liceBus}</if>
  142. <if test="liceTruck != null and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
  143. <if test="liceMoto != null and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
  144. </where>
  145. ORDER BY
  146. excell_issue + 0 ASC
  147. </select>
  148. <select id="selectDfQuestionInfo" resultType="com.miaxis.question.vo.QuestionInfoDfVO">
  149. SELECT
  150. DISTINCT
  151. case WHEN place_issue_name is null then '地方专题' else place_issue_name end as "place_issue_name",
  152. place_issue
  153. FROM question_info
  154. <where>
  155. <if test="subject != null and subject != ''"> and subject = #{subject}</if>
  156. <if test="liceCar != null and liceCar != ''"> and lice_car = #{liceCar} </if>
  157. <if test="liceBus != null and liceBus != ''"> and lice_bus = #{liceBus}</if>
  158. <if test="liceTruck != null and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
  159. <if test="liceMoto != null and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
  160. </where>
  161. ORDER BY
  162. place_issue + 0 ASC
  163. </select>
  164. <select id="selectFlQuestionInfo" resultType="com.miaxis.question.vo.QuestionInfoFlVO">
  165. SELECT
  166. DISTINCT
  167. case WHEN class_issue_name is null then '地方专题' else class_issue_name end as "class_issue_name",
  168. class_issue
  169. FROM question_info
  170. <where>
  171. <if test="subject != null and subject != ''"> and subject = #{subject}</if>
  172. <if test="liceCar != null and liceCar != ''"> and lice_car = #{liceCar} </if>
  173. <if test="liceBus != null and liceBus != ''"> and lice_bus = #{liceBus}</if>
  174. <if test="liceTruck != null and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
  175. <if test="liceMoto != null and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
  176. </where>
  177. ORDER BY
  178. class_issue + 0 ASC
  179. </select>
  180. <select id="selectSxQuestionInfo" resultType="com.miaxis.question.vo.QuestionInfoSxVO">
  181. SELECT
  182. DISTINCT
  183. case WHEN seque_issue_name is null then '地方专题' else seque_issue_name end as "seque_issue_name",
  184. seque_issue
  185. FROM question_info
  186. <where>
  187. <if test="subject != null and subject != ''"> and subject = #{subject}</if>
  188. <if test="liceCar != null and liceCar != ''"> and lice_car = #{liceCar} </if>
  189. <if test="liceBus != null and liceBus != ''"> and lice_bus = #{liceBus}</if>
  190. <if test="liceTruck != null and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
  191. <if test="liceMoto != null and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
  192. </where>
  193. ORDER BY
  194. seque_issue + 0 ASC
  195. </select>
  196. <select id="selectIssueType1" resultType="com.miaxis.question.vo.QuestionInfoExcelTypeVo">
  197. SELECT
  198. DISTINCT case WHEN class_issue_name is null then '地方专题' else class_issue_name end as title,
  199. class_issue as type_id
  200. FROM
  201. question_info
  202. WHERE
  203. subject = #{subject}
  204. AND lice_car = 1 and
  205. class_issue_name is not null
  206. ORDER BY
  207. class_issue + 0 ASC
  208. </select>
  209. <select id="selecQuestionInfoExcel1" resultType="com.miaxis.question.vo.QuestionInfoExcelVo">
  210. SELECT id,
  211. number,
  212. issue,
  213. image,
  214. excell_issue_name,
  215. class_issue_name,
  216. place_issue_name,
  217. seque_issue_name,
  218. question_type FROM question_info WHERE class_issue = #{typeId} and subject_1 =1 and lice_car = 1
  219. </select>
  220. <select id="selectIssueType2" resultType="com.miaxis.question.vo.QuestionInfoExcelTypeVo">
  221. SELECT
  222. DISTINCT case WHEN excell_issue_name is null then '地方专题' else excell_issue_name end as title,
  223. excell_issue as type_id
  224. FROM
  225. question_info
  226. WHERE
  227. subject = #{subject}
  228. AND lice_car = 1 and
  229. excell_issue_name is not null
  230. ORDER BY
  231. excell_issue + 0 ASC
  232. </select>
  233. <select id="selecQuestionInfoExcel2" resultType="com.miaxis.question.vo.QuestionInfoExcelVo">
  234. SELECT id,
  235. number,
  236. issue,
  237. image,
  238. excell_issue_name,
  239. class_issue_name,
  240. place_issue_name,
  241. seque_issue_name,
  242. question_type FROM question_info WHERE excell_issue = #{typeId} and subject_1 =1 and lice_car = 1
  243. </select>
  244. <select id="selectIssueType3" resultType="com.miaxis.question.vo.QuestionInfoExcelTypeVo">
  245. SELECT
  246. DISTINCT case WHEN place_issue_name is null then '地方专题' else place_issue_name end as title,
  247. place_issue as type_id
  248. FROM
  249. question_info
  250. WHERE
  251. subject = #{subject}
  252. AND lice_car = 1 and
  253. place_issue_name is not null
  254. ORDER BY
  255. place_issue + 0 ASC
  256. </select>
  257. <select id="selecQuestionInfoExcel3" resultType="com.miaxis.question.vo.QuestionInfoExcelVo">
  258. SELECT id,
  259. number,
  260. issue,
  261. image,
  262. excell_issue_name,
  263. class_issue_name,
  264. place_issue_name,
  265. seque_issue_name,
  266. question_type FROM question_info WHERE place_issue = #{typeId} and subject_1 =1 and lice_car = 1
  267. </select>
  268. <select id="selectIssueType4" resultType="com.miaxis.question.vo.QuestionInfoExcelTypeVo">
  269. SELECT
  270. DISTINCT case WHEN seque_issue_name is null then '地方专题' else seque_issue_name end as title,
  271. seque_issue as type_id
  272. FROM
  273. question_info
  274. WHERE
  275. subject = #{subject}
  276. AND lice_car = 1 and
  277. seque_issue_name is not null
  278. ORDER BY
  279. seque_issue + 0 ASC
  280. </select>
  281. <select id="selecQuestionInfoExcel4" resultType="com.miaxis.question.vo.QuestionInfoExcelVo">
  282. SELECT id,
  283. number,
  284. issue,
  285. image,
  286. excell_issue_name,
  287. class_issue_name,
  288. place_issue_name,
  289. seque_issue_name,
  290. question_type FROM question_info WHERE seque_issue = #{typeId} and subject_1 =1 and lice_car = 1
  291. </select>
  292. <select id="selectQuestionInfoSortList" resultType="com.miaxis.question.vo.QuestionInfoExcelVo">
  293. SELECT id,
  294. number,
  295. issue,
  296. image,
  297. excell_issue_name,
  298. class_issue_name,
  299. place_issue_name,
  300. seque_issue_name,
  301. ${sortName} as sort,
  302. question_type FROM question_info WHERE ${issueTypeParmName} = #{issueValue} and subject =#{subject} and lice_car = 1
  303. <if test="issue != null and issue != ''"> and issue like concat('%', #{issue}, '%')</if>
  304. order by IFNULL(${sortName},100000)
  305. </select>
  306. <select id="updateSortById" >
  307. update question_info set ${sortName} = #{sort} WHERE id = #{id}
  308. </select>
  309. <select id="selectTestQuestionInfoList" resultMap="QuestionInfoResult">
  310. select * from question_info
  311. <where>
  312. <if test="liceMoto == null or liceMoto == ''"> and excell_issue_name like '%必学%'</if>
  313. <if test="subject != null"> and subject = #{subject}</if>
  314. <if test="questionType != null"> and question_type = #{questionType}</if>
  315. <if test="liceCar != null and liceCar != ''"> and lice_car = #{liceCar} </if>
  316. <if test="liceBus != null and liceBus != ''"> and lice_bus = #{liceBus}</if>
  317. <if test="liceTruck != null and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
  318. <if test="liceMoto != null and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
  319. </where>
  320. ORDER BY rand() limit 0,${num}
  321. </select>
  322. <select id="selectFreeQuestionInfoList" resultMap="QuestionInfoResult">
  323. select * from question_info
  324. <where>
  325. and excell_issue_name like '%选学%'
  326. and lice_car = 1
  327. <if test="subject != null"> and subject = #{subject}</if>
  328. <if test="questionType != null"> and question_type = #{questionType}</if>
  329. </where>
  330. ORDER BY id limit 0,${num}
  331. </select>
  332. </mapper>