瀏覽代碼

随机题目接口

小么熊🐻 4 年之前
父節點
當前提交
6ca3327224

+ 12 - 0
zzjs-admin/src/main/java/com/miaxis/app/controller/question/QuestionInfoController.java

@@ -5,6 +5,7 @@ import com.miaxis.common.core.controller.BaseController;
 import com.miaxis.common.core.page.ResponsePageInfo;
 import com.miaxis.question.domain.QuestionInfo;
 import com.miaxis.question.dto.QuestionInfoDto;
+import com.miaxis.question.dto.QuestionInfoRandDto;
 import com.miaxis.question.service.IQuestionInfoService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -59,6 +60,17 @@ public class QuestionInfoController extends BaseController{
         return toResponsePageInfo(list);
     }
 
+    @GetMapping("/getRandQuestionInfoList")
+    @ApiOperation("查询随机题库列表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum",value = "当前页码" ,dataType = "int", paramType = "query", required = false),
+            @ApiImplicitParam(name = "pageSize",value = "每页数据量" , dataType = "int", paramType = "query", required = false),
+    })
+    public ResponsePageInfo<QuestionInfo> getRandQuestionInfoList(@ModelAttribute QuestionInfoRandDto questionInfoRandDto){
+        startPage();
+        List<QuestionInfo> list = questionInfoService.getRandQuestionInfoList(questionInfoRandDto);
+        return toResponsePageInfo(list);
+    }
 
     /**
      * 导出题库列表

+ 2 - 4
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoDto.java

@@ -28,21 +28,18 @@ public class QuestionInfoDto extends BaseBusinessEntity{
     private Long id;
 
     /** 类型 */
-    @Excel(name = "类型 1:选择题 2:单选题 3:多选题")
     @TableField("type")
     @ApiModelProperty(value = "类型 1:选择题 2:单选题 3:多选题")
     private Long type;
 
 
     /** 许可车型 */
-    @Excel(name = "许可车型")
     @TableField("license_type")
     @ApiModelProperty(value = "许可车型")
     private String licenseType;
 
 
     /** 科目 */
-    @Excel(name = "科目")
     @TableField("kemu")
     @ApiModelProperty(value = "科目")
     private Long kemu;
@@ -51,9 +48,10 @@ public class QuestionInfoDto extends BaseBusinessEntity{
     /**
      * 是否显示
      */
-    @Excel(name = "是否显示")
     @TableField("show_option_type")
     @ApiModelProperty(value = "是否显示")
     private Long showOptionType;
 
+
+
 }

+ 48 - 0
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoRandDto.java

@@ -0,0 +1,48 @@
+package com.miaxis.question.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.miaxis.common.core.domain.BaseBusinessEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 题库对象 question_info
+ *
+ * @author miaxis
+ * @date 2021-03-12
+ */
+@Data
+@ApiModel(value = "QuestionInfoDto", description = "题库传参")
+public class QuestionInfoRandDto extends BaseBusinessEntity{
+    private static final long serialVersionUID = 1L;
+
+
+    /** 类型 */
+    @TableField("type")
+    @ApiModelProperty(value = "类型 1:选择题 2:单选题 3:多选题")
+    private Long type;
+
+
+    /** 许可车型 */
+    @TableField("license_type")
+    @ApiModelProperty(value = "许可车型")
+    private String licenseType;
+
+
+    /** 科目 */
+    @TableField("kemu")
+    @ApiModelProperty(value = "科目")
+    private Long kemu;
+
+
+
+
+    /**
+     * 承机条数
+     */
+    @ApiModelProperty(value = "随机条数",required = true)
+    private Integer num;
+
+}

+ 3 - 0
zzjs-service/src/main/java/com/miaxis/question/mapper/QuestionInfoMapper.java

@@ -4,6 +4,7 @@ import java.util.List;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.miaxis.question.domain.QuestionInfo;
 import com.miaxis.question.dto.QuestionInfoDto;
+import com.miaxis.question.dto.QuestionInfoRandDto;
 
 /**
  * 题库Mapper接口
@@ -21,4 +22,6 @@ public interface QuestionInfoMapper extends BaseMapper<QuestionInfo> {
     public List<QuestionInfo> selectQuestionInfoList(QuestionInfo questionInfo);
 
     List<QuestionInfo> getQuestionInfoList(QuestionInfoDto questionInfoDto);
+
+    List<QuestionInfo> getRandQuestionInfoList(QuestionInfoRandDto questionInfoRandDto);
 }

+ 3 - 7
zzjs-service/src/main/java/com/miaxis/question/service/IQuestionInfoService.java

@@ -4,6 +4,7 @@ import java.util.List;
 import com.miaxis.question.domain.QuestionInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.miaxis.question.dto.QuestionInfoDto;
+import com.miaxis.question.dto.QuestionInfoRandDto;
 
 /**
  * 题库Service接口
@@ -12,13 +13,8 @@ import com.miaxis.question.dto.QuestionInfoDto;
  * @date 2021-03-12
  */
 public interface IQuestionInfoService extends IService<QuestionInfo>{
-    /**
-     * 查询题库列表
-     *
-     * @param questionInfo 题库
-     * @return 题库集合
-     */
-    public List<QuestionInfo> selectQuestionInfoList(QuestionInfo questionInfo);
 
     List<QuestionInfo> getQuestionInfoList(QuestionInfoDto questionInfoDto);
+
+    List<QuestionInfo> getRandQuestionInfoList(QuestionInfoRandDto questionInfoRandDto);
 }

+ 11 - 7
zzjs-service/src/main/java/com/miaxis/question/service/impl/QuestionInfoServiceImpl.java

@@ -1,16 +1,15 @@
 package com.miaxis.question.service.impl;
 
-import java.util.List;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.miaxis.question.domain.QuestionInfo;
 import com.miaxis.question.dto.QuestionInfoDto;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.apache.commons.lang3.StringUtils;
+import com.miaxis.question.dto.QuestionInfoRandDto;
 import com.miaxis.question.mapper.QuestionInfoMapper;
-import com.miaxis.question.domain.QuestionInfo;
 import com.miaxis.question.service.IQuestionInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
 
 /**
  * 题库Service业务层处理
@@ -38,4 +37,9 @@ public class QuestionInfoServiceImpl extends ServiceImpl<QuestionInfoMapper, Que
     public List<QuestionInfo> getQuestionInfoList(QuestionInfoDto questionInfoDto) {
         return questionInfoMapper.getQuestionInfoList(questionInfoDto);
     }
+
+    @Override
+    public List<QuestionInfo> getRandQuestionInfoList(QuestionInfoRandDto questionInfoRandDto) {
+        return questionInfoMapper.getRandQuestionInfoList(questionInfoRandDto);
+    }
 }

+ 13 - 1
zzjs-service/src/main/resources/mapper/question/QuestionInfoMapper.xml

@@ -83,10 +83,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <where>
             <if test="id != null "> and id = #{id}</if>
             <if test="type != null "> and type = #{type}</if>
-            <if test="licenseType != null  and licenseType != ''"> and license_type like '%#{licenseType}%'</if>
+            <if test="licenseType != null  and licenseType != ''"> and license_type like #{licenseType}</if>
             <if test="kemu != null "> and kemu = #{kemu}</if>
             <if test="showOptionType != null "> and show_option_type = #{showOptionType}</if>
         </where>
     </select>
 
+
+    <select id="getRandQuestionInfoList" parameterType="com.miaxis.question.dto.QuestionInfoRandDto" resultType="com.miaxis.question.vo.QuestionInfoVo">
+        select id, type, question, an1, an2, an3, an4, an5, an6, an7, answer_true, explain1, best_answer_id, kemu, sinaimg, video_url, cityid, media_url, show_option_type from question_info
+        <where>
+            <if test="type != null "> and type = #{type}</if>
+            <if test="licenseType != null  and licenseType != ''"> and license_type like #{licenseType}</if>
+            <if test="kemu != null "> and kemu = #{kemu}</if>
+        </where>
+         order by rand() limit #{num}
+    </select>
+
+
 </mapper>