Forráskód Böngészése

一点通ID取题

小么熊🐻 3 éve
szülő
commit
f553da0a8a

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

@@ -0,0 +1,87 @@
+package com.miaxis.app.controller.question;
+
+import com.miaxis.common.constant.Constants;
+import com.miaxis.common.core.controller.BaseController;
+import com.miaxis.common.core.domain.Response;
+import com.miaxis.common.core.page.ResponsePageInfo;
+import com.miaxis.question.domain.QuestionInfo;
+import com.miaxis.question.dto.QuestionInfoDTO;
+import com.miaxis.question.service.IQuestionInfoService;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 【题库】Controller
+ *
+ * @author miaxis
+ * @date 2021-10-20
+ */
+@RestController
+@RequestMapping(Constants.OPEN_PREFIX+"/question/info")
+@Api(tags={"【H5-题库】"})
+public class QuestionInfoController extends BaseController {
+    @Autowired
+    private IQuestionInfoService questionInfoService;
+
+    /**
+     * 查询题库列表
+     */
+    @GetMapping("/list")
+    @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> list(@ModelAttribute QuestionInfoDTO questionInfoDTO){
+        startPage();
+        List<QuestionInfo> list = questionInfoService.selectQuestionInfoList(questionInfoDTO);
+        return toResponsePageInfo(list);
+    }
+
+    /**
+     * 获取题库详细信息
+     */
+    @GetMapping(value = "/{id}")
+    @ApiOperation("获取题库详细信息")
+    public Response<QuestionInfo> getInfo(
+            @ApiParam(name = "id", value = "题库参数", required = true)
+            @PathVariable("id") Long id
+    ){
+        return Response.success(questionInfoService.getById(id));
+    }
+
+
+
+    /**
+     * 根据ydtid获取题目
+     */
+    @GetMapping(value = "/getQuestionInfoByYdtIds")
+    @ApiOperation("根据ydtid获取题目")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "ids",value = "题目ids" ,dataType = "List", required = true)
+    })
+    public ResponsePageInfo<QuestionInfo> getQuestionInfoByYdtIds(Long[] ids){
+        List<QuestionInfo> list = questionInfoService.selectQuestionInfoListByYdtIds(ids);
+        return toResponsePageInfo(list);
+    }
+
+
+
+    /**
+     * 根据id获取题目
+     */
+    @GetMapping(value = "/getQuestionInfoByIds")
+    @ApiOperation("根据id获取题目")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "ids",value = "题目ids" ,dataType = "List", required = true)
+    })
+    public ResponsePageInfo<QuestionInfo> getQuestionInfoByIds(Long[] ids){
+        List<QuestionInfo> list = questionInfoService.selectQuestionInfoListByIds(ids);
+        return toResponsePageInfo(list);
+    }
+
+}
+

+ 252 - 0
zzjs-service/src/main/java/com/miaxis/question/domain/QuestionInfo.java

@@ -0,0 +1,252 @@
+package com.miaxis.question.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.miaxis.common.annotation.Excel;
+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-10-20
+ */
+@Data
+@TableName("question_info")
+@ApiModel(value = "QuestionInfo", description = "题库对象 question_info")
+public class QuestionInfo extends BaseBusinessEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**  主键 */
+    @TableId(value = "id")
+    @ApiModelProperty(value = " 主键")
+    private Long id;
+
+    /** 快通ID */
+    @Excel(name = "快通ID")
+    @TableField("id_kt")
+    @ApiModelProperty(value = "快通ID")
+    private Long idKt;
+
+    /** 一点通ID */
+    @Excel(name = "一点通ID")
+    @TableField("id_ydt")
+    @ApiModelProperty(value = "一点通ID")
+    private Long idYdt;
+
+
+    /** 在所有题目中的序号 */
+    @Excel(name = "在所有题目中的序号")
+    @TableField("number")
+    @ApiModelProperty(value = "在所有题目中的序号")
+    private Long number;
+
+    /** 正确答案 */
+    @Excel(name = "正确答案")
+    @TableField("answer")
+    @ApiModelProperty(value = "正确答案")
+    private String answer;
+
+    /** 答案关键词 */
+    @Excel(name = "答案关键词")
+    @TableField("answerkeyword")
+    @ApiModelProperty(value = "答案关键词")
+    private String answerkeyword;
+
+    /** 技巧讲解图片URL */
+    @Excel(name = "技巧讲解图片URL")
+    @TableField("explain_gif")
+    @ApiModelProperty(value = "技巧讲解图片URL")
+    private String explainGif;
+
+    /** 技巧讲解说明 */
+    @Excel(name = "技巧讲解说明")
+    @TableField("explain_jq")
+    @ApiModelProperty(value = "技巧讲解说明")
+    private String explainJq;
+
+    /** 官方解释 */
+    @Excel(name = "官方解释")
+    @TableField("explain_js")
+    @ApiModelProperty(value = "官方解释")
+    private String explainJs;
+
+    /** 技巧讲解语音URL */
+    @Excel(name = "技巧讲解语音URL")
+    @TableField("explain_mp3")
+    @ApiModelProperty(value = "技巧讲解语音URL")
+    private String explainMp3;
+
+    /** 题目图片URL */
+    @Excel(name = "题目图片URL")
+    @TableField("image")
+    @ApiModelProperty(value = "题目图片URL")
+    private String image;
+
+    /** 题目图片URL2 */
+    @Excel(name = "题目图片URL2")
+    @TableField("image_ydt")
+    @ApiModelProperty(value = "题目图片URL2")
+    private String imageYdt;
+
+    /** 题目 */
+    @Excel(name = "题目")
+    @TableField("issue")
+    @ApiModelProperty(value = "题目")
+    private String issue;
+
+    /** 答案选项 */
+    @Excel(name = "答案选项")
+    @TableField("opts")
+    @ApiModelProperty(value = "答案选项")
+    private String opts;
+
+    /** 答题技巧关键词 */
+    @Excel(name = "答题技巧关键词")
+    @TableField("skillkeyword")
+    @ApiModelProperty(value = "答题技巧关键词")
+    private String skillkeyword;
+
+    /** 题目关键词 */
+    @Excel(name = "题目关键词")
+    @TableField("titlekeyword")
+    @ApiModelProperty(value = "题目关键词")
+    private String titlekeyword;
+
+    /** 读题语音URL */
+    @Excel(name = "读题语音URL")
+    @TableField("issuemp3")
+    @ApiModelProperty(value = "读题语音URL")
+    private String issuemp3;
+
+    /** 答案语音URL */
+    @Excel(name = "答案语音URL")
+    @TableField("answermp3")
+    @ApiModelProperty(value = "答案语音URL")
+    private String answermp3;
+
+    /** 读题+答案语音URL */
+    @Excel(name = "读题+答案语音URL")
+    @TableField("explainjsmp3")
+    @ApiModelProperty(value = "读题+答案语音URL")
+    private String explainjsmp3;
+
+    /** 是否是C1,C2,C3驾驶证题目 */
+    @Excel(name = "是否是C1,C2,C3驾驶证题目")
+    @TableField("lice_car")
+    @ApiModelProperty(value = "是否是C1,C2,C3驾驶证题目")
+    private String liceCar;
+
+    /** 是否是A1\A3\B1驾驶证题目 */
+    @Excel(name = "是否是A1,A3,B1驾驶证题目")
+    @TableField("lice_bus")
+    @ApiModelProperty(value = "是否是A1,A3,B1驾驶证题目")
+    private String liceBus;
+
+    /** 是否是A2\B2驾驶证题目 */
+    @Excel(name = "是否是A2,B2驾驶证题目")
+    @TableField("lice_truck")
+    @ApiModelProperty(value = "是否是A2,B2驾驶证题目")
+    private String liceTruck;
+
+    /** 是否是D\E\F驾驶证题目 */
+    @Excel(name = "是否是D,E,F驾驶证题目")
+    @TableField("lice_moto")
+    @ApiModelProperty(value = "是否是D,E,F驾驶证题目")
+    private String liceMoto;
+
+    /** 顺序练习分类(包含科一到科四) */
+    @Excel(name = "顺序练习分类(包含科一到科四)", readConverterExp = "包=含科一到科四")
+    @TableField("seque_issue")
+    @ApiModelProperty(value = "顺序练习分类(包含科一到科四)")
+    private String sequeIssue;
+
+    /** 分类练习(包含科一到科四) */
+    @Excel(name = "分类练习(包含科一到科四)", readConverterExp = "包=含科一到科四")
+    @TableField("class_issue")
+    @ApiModelProperty(value = "分类练习(包含科一到科四)")
+    private String classIssue;
+
+    /** 地方专题(包含科一到科四) */
+    @Excel(name = "地方专题(包含科一到科四)", readConverterExp = "包=含科一到科四")
+    @TableField("place_issue")
+    @ApiModelProperty(value = "地方专题(包含科一到科四)")
+    private String placeIssue;
+
+    /** 精选题(包含科一到科四) */
+    @Excel(name = "精选题(包含科一到科四)", readConverterExp = "包=含科一到科四")
+    @TableField("excell_issue")
+    @ApiModelProperty(value = "精选题(包含科一到科四)")
+    private String excellIssue;
+
+
+    /** 题目在顺序练习中所属的模块名称 */
+    @Excel(name = "题目在顺序练习中所属的模块名称")
+    @TableField("seque_issue_name")
+    @ApiModelProperty(value = "题目在顺序练习中所属的模块名称")
+    private String sequeIssueName;
+
+    /** 题目在地方专题中所属的模块名称 */
+    @Excel(name = "题目在地方专题中所属的模块名称")
+    @TableField("place_issue_name")
+    @ApiModelProperty(value = "题目在地方专题中所属的模块名称")
+    private String placeIssueName;
+
+    /** 题目在精选中所属的模块名称 */
+    @Excel(name = "题目在精选中所属的模块名称")
+    @TableField("excell_issue_name")
+    @ApiModelProperty(value = "题目在精选中所属的模块名称")
+    private String excellIssueName;
+
+    /** 题目在分类中所属的模块名称 */
+    @Excel(name = "题目在分类中所属的模块名称")
+    @TableField("class_issue_name")
+    @ApiModelProperty(value = "题目在分类中所属的模块名称")
+    private String classIssueName;
+
+
+    /** 题目类型 */
+    @Excel(name = "题目类型")
+    @TableField("question_type")
+    @ApiModelProperty(value = "题目类型 1判断,2选择,3多选")
+    private Integer questionType;
+
+
+    /** 题目类型 */
+    @Excel(name = "题目类型")
+    @TableField("question_type")
+    @ApiModelProperty(value = "题目类型 1判断,2选择,3多选")
+    private Integer subject;
+
+    /** 分类练习排序字段 */
+    @Excel(name = "分类练习排序字段")
+    @TableField("class_sort")
+    @ApiModelProperty(value = "分类练习排序字段")
+    private Integer classSort;
+
+    /** 精选考题排序字段 */
+    @Excel(name = "精选考题排序字段")
+    @TableField("excell_sort")
+    @ApiModelProperty(value = "精选考题排序字段")
+    private Integer excellSort;
+
+
+    /** 顺序练习排序字段 */
+    @Excel(name = "顺序练习排序字段")
+    @TableField("seque_sort")
+    @ApiModelProperty(value = "顺序练习排序字段")
+    private Integer sequeSort;
+
+
+    /** 地方专题排序字段 */
+    @Excel(name = "地方专题排序字段")
+    @TableField("place_sort")
+    @ApiModelProperty(value = "地方专题排序字段")
+    private Integer placeSort;
+
+
+}

+ 0 - 62
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoDto.java

@@ -1,62 +0,0 @@
-package com.miaxis.question.dto;
-
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.miaxis.common.annotation.Excel;
-import com.miaxis.common.core.domain.BaseBusinessEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-
-/**
- * 题库对象 question_info
- *
- * @author miaxis
- * @date 2021-03-12
- */
-@Data
-@ApiModel(value = "QuestionInfoDto", description = "题库传参")
-public class QuestionInfoDto extends BaseBusinessEntity{
-    private static final long serialVersionUID = 1L;
-
-    /** id */
-    @TableId("id")
-    @ApiModelProperty(value = "主键")
-    private Long id;
-
-    /** 类型 */
-    @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;
-
-
-    /**
-     * 是否显示
-     */
-    @TableField("show_option_type")
-    @ApiModelProperty(value = "是否显示")
-    private Long showOptionType;
-
-
-    /**
-     * 排序
-     */
-    @ApiModelProperty(value = "排序")
-    private String orderByClause;
-
-}

+ 0 - 64
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoFlDTO.java

@@ -1,64 +0,0 @@
-package com.miaxis.question.dto;
-
-import com.miaxis.common.core.domain.BaseBusinessEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- *
- * @author miaxis
- * @date 2021-10-20
- */
-@Data
-@ApiModel(value = "QuestionInfoFlDTO", description = "返回精选分类")
-public class QuestionInfoFlDTO extends BaseBusinessEntity {
-    private static final long serialVersionUID = 1L;
-
-
-
-    /** 是否是C1,C2,C3驾驶证题目 */
-    @ApiModelProperty(value = "是否是C1,C2,C3驾驶证题目 1:是 2:否")
-    private String liceCar;
-
-    /** 是否是A1\A3\B1驾驶证题目 */
-    @ApiModelProperty(value = "是否是A1,A3,B1驾驶证题目 1:是 2:否")
-    private String liceBus;
-
-    /** 是否是A2\B2驾驶证题目 */
-    @ApiModelProperty(value = "是否是A2,B2驾驶证题目 1:是 2:否")
-    private String liceTruck;
-
-    /** 是否是D\E\F驾驶证题目 */
-    @ApiModelProperty(value = "是否是D,E,F驾驶证题目 1:是 2:否")
-    private String liceMoto;
-
-    /** 科目 */
-    @ApiModelProperty(value = "科目")
-    private Integer subject;
-
-    /** 模块名称 */
-    @ApiModelProperty(value = "模块名称(模糊查询)")
-    private String excellIssueName;
-
-    /** 分类练习排序字段 */
-    @ApiModelProperty(value = "分类练习排序字段")
-    private Integer classSort;
-
-    /** 精选考题排序字段 */
-    @ApiModelProperty(value = "精选考题排序字段")
-    private Integer excellSort;
-
-
-    /** 顺序练习排序字段 */
-    @ApiModelProperty(value = "顺序练习排序字段")
-    private Integer sequeSort;
-
-
-    /** 地方专题排序字段 */
-    @ApiModelProperty(value = "地方专题排序字段")
-    private Integer placeSort;
-
-
-
-}

+ 0 - 27
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoFreeDTO.java

@@ -1,27 +0,0 @@
-package com.miaxis.question.dto;
-
-import com.miaxis.common.core.domain.BaseBusinessEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * 地方题选分类返回对象
- * @author miaxis
- * @date 2021-10-20
- */
-@Data
-@ApiModel(value = "QuestionInfoTestDTO", description = "模拟考试输入对象")
-public class QuestionInfoFreeDTO extends BaseBusinessEntity {
-    private static final long serialVersionUID = 1L;
-
-
-    @ApiModelProperty(hidden = true)
-    private Integer questionType;
-
-    @ApiModelProperty(hidden = true)
-    private Integer num;
-
-    @ApiModelProperty(value = "科目")
-    private Integer subject;
-}

+ 0 - 37
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoIssueTypeDTO.java

@@ -1,37 +0,0 @@
-package com.miaxis.question.dto;
-
-import com.miaxis.common.core.domain.BaseBusinessEntity;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * 题库对象 question_info
- *
- * @author miaxis
- * @date 2021-10-20
- */
-@Data
-public class QuestionInfoIssueTypeDTO extends BaseBusinessEntity {
-    private static final long serialVersionUID = 1L;
-
-
-    /**  主键 */
-    @ApiModelProperty(value = "科目")
-    private String subject;
-
-    /** 在所有题目中的序号 */
-    @ApiModelProperty(value = "类型参数: 1--按分类专题分类,2--按精选专题分类,3--按地方专题分类,4--按顺序练习分类")
-    private Integer  issueTypeValue;
-
-    /** 正确答案 */
-    @ApiModelProperty(value = "分类id值")
-    private String issueValue;
-
-    @ApiModelProperty(value = "分类字段名",hidden = true)
-    private String issueTypeParmName;
-
-    @ApiModelProperty(value = "排序字段名",hidden = true)
-    private String sortName;
-
-
-}

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

@@ -1,48 +0,0 @@
-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;
-
-}

+ 0 - 39
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoSortDTO.java

@@ -1,39 +0,0 @@
-package com.miaxis.question.dto;
-
-import com.miaxis.common.core.domain.BaseBusinessEntity;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * 题库对象 question_info
- *
- * @author miaxis
- * @date 2021-10-20
- */
-@Data
-public class QuestionInfoSortDTO extends BaseBusinessEntity {
-    private static final long serialVersionUID = 1L;
-
-
-    /**  主键 */
-    @ApiModelProperty(value = "科目")
-    private String subject;
-
-    @ApiModelProperty(value = "类型参数: 1--按分类专题分类,2--按精选专题分类,3--按地方专题分类,4--按顺序练习分类")
-    private Integer  issueTypeValue;
-
-    /** 正确答案 */
-    @ApiModelProperty(value = "分类id值")
-    private String issueValue;
-
-    @ApiModelProperty(value = "分类字段名",hidden = true)
-    private String issueTypeParmName;
-
-    @ApiModelProperty(value = "排序字段名",hidden = true)
-    private String sortName;
-
-    @ApiModelProperty(value = "题目名称")
-    private String issue;
-
-
-}

+ 0 - 30
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoSortUpateDTO.java

@@ -1,30 +0,0 @@
-package com.miaxis.question.dto;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * 题库对象 question_info
- *
- * @author miaxis
- * @date 2021-10-20
- */
-@Data
-public class QuestionInfoSortUpateDTO {
-    private static final long serialVersionUID = 1L;
-    /**  主键 */
-    @ApiModelProperty(value = "题目id")
-    private Long id;
-
-    /** 在所有题目中的序号 */
-    @ApiModelProperty(value = "类型参数: 1--按分类专题分类,2--按精选专题分类,3--按地方专题分类,4--按顺序练习分类")
-    private Integer  issueTypeValue;
-
-    /** 正确答案 */
-    @ApiModelProperty(value = "排序")
-    private String sort;
-
-    @ApiModelProperty(value = "排序字段名",hidden = true)
-    private String sortName;
-
-}

+ 0 - 40
zzjs-service/src/main/java/com/miaxis/question/dto/QuestionInfoTestDTO.java

@@ -1,40 +0,0 @@
-package com.miaxis.question.dto;
-
-import com.miaxis.common.core.domain.BaseBusinessEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * 地方题选分类返回对象
- * @author miaxis
- * @date 2021-10-20
- */
-@Data
-@ApiModel(value = "QuestionInfoTestDTO", description = "模拟考试输入对象")
-public class QuestionInfoTestDTO extends BaseBusinessEntity {
-    private static final long serialVersionUID = 1L;
-
-
-    @ApiModelProperty(value = "科目")
-    private Integer subject;
-
-    @ApiModelProperty(value = "是否小车 1:是 否:空")
-    private String liceCar;
-
-    @ApiModelProperty(value = "是否客车 1:是 否:空")
-    private String liceBus;
-
-    @ApiModelProperty(value = "是否货车 1:是 否:空")
-    private String liceTruck;
-
-    @ApiModelProperty(value = "是否摩托车 1:是 否:空")
-    private String liceMoto;
-
-    @ApiModelProperty(hidden = true)
-    private Integer questionType;
-
-    @ApiModelProperty(hidden = true)
-    private Integer num;
-
-}

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

@@ -0,0 +1,27 @@
+package com.miaxis.question.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.miaxis.question.domain.QuestionInfo;
+import com.miaxis.question.dto.*;
+
+import java.util.List;
+
+/**
+ * 题库Mapper接口
+ *
+ * @author miaxis
+ * @date 2021-10-20
+ */
+public interface QuestionInfoMapper extends BaseMapper<QuestionInfo> {
+    /**
+     * 查询题库列表
+     *
+     * @param
+     * @return 题库集合
+     */
+    List<QuestionInfo> selectQuestionInfoList(QuestionInfoDTO questionInfoDTO);
+
+    List<QuestionInfo> selectQuestionInfoListByYdtIds(Long[] ids);
+
+    List<QuestionInfo> selectQuestionInfoListByIds(Long[] ids);
+}

+ 29 - 0
zzjs-service/src/main/java/com/miaxis/question/service/IQuestionInfoService.java

@@ -0,0 +1,29 @@
+package com.miaxis.question.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.miaxis.question.domain.QuestionInfo;
+import com.miaxis.question.dto.*;
+
+import java.util.List;
+
+/**
+ * 题库Service接口
+ *
+ * @author miaxis
+ * @date 2021-10-20
+ */
+public interface IQuestionInfoService extends IService<QuestionInfo>{
+    /**
+     * 查询题库列表
+     *
+     * @param
+     * @return 题库集合
+     */
+    List<QuestionInfo> selectQuestionInfoList(QuestionInfoDTO questionInfoDTO);
+
+    List<QuestionInfo> selectQuestionInfoListByIds(Long[] ids);
+
+    List<QuestionInfo> selectQuestionInfoListByYdtIds(Long[] ids);
+
+}
+

+ 73 - 0
zzjs-service/src/main/java/com/miaxis/question/service/impl/QuestionInfoServiceImpl.java

@@ -0,0 +1,73 @@
+package com.miaxis.question.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.miaxis.common.exception.CustomException;
+import com.miaxis.question.domain.QuestionInfo;
+import com.miaxis.question.dto.*;
+import com.miaxis.question.mapper.QuestionInfoMapper;
+import com.miaxis.question.service.IQuestionInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 题库Service业务层处理
+ *
+ * @author miaxis
+ * @date 2021-10-20
+ */
+@Service
+public class QuestionInfoServiceImpl extends ServiceImpl<QuestionInfoMapper, QuestionInfo> implements IQuestionInfoService {
+    @Autowired
+    private QuestionInfoMapper questionInfoMapper;
+
+    /**
+     * 查询题库列表
+     *
+     * @param
+     * @return 题库
+     */
+    @Override
+    public List<QuestionInfo> selectQuestionInfoList(QuestionInfoDTO questionInfoDTO){
+
+        //1:分类练习:class_sort;2:精选考题:excell_sort;3:地方专题:place_sort;4:顺序练习:seque_sort;
+        Integer sort = questionInfoDTO.getSort();
+        if(sort!=null) {
+            switch (sort){
+                case 1:
+                    questionInfoDTO.setSortName("class_sort");
+                    break;
+                case 2:
+                    questionInfoDTO.setSortName("excell_sort");
+                    break;
+                case 3:
+                    questionInfoDTO.setSortName("place_sort");
+                    break;
+                case 4:
+                    questionInfoDTO.setSortName("seque_sort");
+                    break;
+                default:
+                    throw new CustomException("请正常输入sort字段");
+            }
+        }
+        return questionInfoMapper.selectQuestionInfoList(questionInfoDTO);
+    }
+
+    @Override
+    public List<QuestionInfo> selectQuestionInfoListByIds(Long[] ids) {
+        return questionInfoMapper.selectQuestionInfoListByIds(ids);
+    }
+
+    @Override
+    public List<QuestionInfo> selectQuestionInfoListByYdtIds(Long[] ids) {
+        return questionInfoMapper.selectQuestionInfoListByYdtIds(ids);
+    }
+
+
+
+
+
+
+
+}

+ 130 - 0
zzjs-service/src/main/resources/mapper/question/QuestionInfoMapper.xml

@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.miaxis.question.mapper.QuestionInfoMapper">
+
+    <resultMap type="QuestionInfo" id="QuestionInfoResult">
+        <result property="id"    column="id"    />
+        <result property="number"    column="number"    />
+        <result property="answer"    column="answer"    />
+        <result property="answerkeyword"    column="answerkeyword"    />
+        <result property="explainGif"    column="explain_gif"    />
+        <result property="explainJq"    column="explain_jq"    />
+        <result property="explainJs"    column="explain_js"    />
+        <result property="explainMp3"    column="explain_mp3"    />
+        <result property="image"    column="image"    />
+        <result property="imageYdt"    column="image_ydt"    />
+        <result property="issue"    column="issue"    />
+        <result property="opts"    column="opts"    />
+        <result property="skillkeyword"    column="skillkeyword"    />
+        <result property="titlekeyword"    column="titlekeyword"    />
+        <result property="issuemp3"    column="issuemp3"    />
+        <result property="answermp3"    column="answermp3"    />
+        <result property="explainjsmp3"    column="explainjsmp3"    />
+        <result property="liceCar"    column="lice_car"    />
+        <result property="liceBus"    column="lice_bus"    />
+        <result property="liceTruck"    column="lice_truck"    />
+        <result property="liceMoto"    column="lice_moto"    />
+        <result property="sequeIssue"    column="seque_issue"    />
+        <result property="classIssue"    column="class_issue"    />
+        <result property="placeIssue"    column="place_issue"    />
+        <result property="excellIssue"    column="excell_issue"    />
+        <result property="sequeIssueName"    column="seque_issue_name"    />
+        <result property="placeIssueName"    column="place_issue_name"    />
+        <result property="excellIssueName"    column="excell_issue_name"    />
+        <result property="classIssueName"    column="class_issue_name"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="subject"    column="subject"    />
+        <result property="classSort"    column="class_sort"    />
+        <result property="excellSort"    column="excell_sort"    />
+        <result property="sequeSort"    column="seque_sort"    />
+        <result property="placeSort"    column="place_sort"    />
+
+
+    </resultMap>
+
+    <sql id="selectQuestionInfoVo">
+        select * from question_info
+    </sql>
+
+    <select id="selectQuestionInfoList" parameterType="QuestionInfoDTO" resultMap="QuestionInfoResult">
+        <include refid="selectQuestionInfoVo"/>
+        <where>
+            <if test="number != null "> and number = #{number}</if>
+            <if test="answer != null  and answer != ''"> and answer = #{answer}</if>
+            <if test="answerkeyword != null  and answerkeyword != ''"> and answerkeyword = #{answerkeyword}</if>
+            <if test="explainGif != null  and explainGif != ''"> and explain_gif = #{explainGif}</if>
+            <if test="explainJq != null  and explainJq != ''"> and explain_jq = #{explainJq}</if>
+            <if test="explainJs != null  and explainJs != ''"> and explain_js = #{explainJs}</if>
+            <if test="explainMp3 != null  and explainMp3 != ''"> and explain_mp3 = #{explainMp3}</if>
+            <if test="image != null  and image != ''"> and image = #{image}</if>
+            <if test="imageYdt != null  and imageYdt != ''"> and image_ydt = #{imageYdt}</if>
+            <if test="issue != null  and issue != ''"> and issue = #{issue}</if>
+            <if test="opts != null  and opts != ''"> and opts = #{opts}</if>
+            <if test="skillkeyword != null  and skillkeyword != ''"> and skillkeyword = #{skillkeyword}</if>
+            <if test="titlekeyword != null  and titlekeyword != ''"> and titlekeyword = #{titlekeyword}</if>
+            <if test="issuemp3 != null  and issuemp3 != ''"> and issuemp3 = #{issuemp3}</if>
+            <if test="answermp3 != null  and answermp3 != ''"> and answermp3 = #{answermp3}</if>
+            <if test="explainjsmp3 != null  and explainjsmp3 != ''"> and explainjsmp3 = #{explainjsmp3}</if>
+            <if test="liceCar != null  and liceCar != ''"> and lice_car = #{liceCar}</if>
+            <if test="liceBus != null  and liceBus != ''"> and lice_bus = #{liceBus}</if>
+            <if test="liceTruck != null  and liceTruck != ''"> and lice_truck = #{liceTruck}</if>
+            <if test="liceMoto != null  and liceMoto != ''"> and lice_moto = #{liceMoto}</if>
+            <if test="sequeIssue != null  and sequeIssue != ''"> and seque_issue = #{sequeIssue}</if>
+            <if test="classIssue != null  and classIssue != ''"> and class_issue = #{classIssue}</if>
+            <if test="placeIssue != null  and placeIssue != ''"> and place_issue = #{placeIssue}</if>
+            <if test="excellIssue != null  and excellIssue != ''"> and excell_issue = #{excellIssue}</if>
+            <if test="sequeIssueName != null  and sequeIssueName != ''"> and seque_issue_name like concat('%', #{sequeIssueName}, '%')</if>
+            <if test="placeIssueName != null  and placeIssueName != ''"> and place_issue_name like concat('%', #{placeIssueName}, '%')</if>
+            <if test="excellIssueName != null  and excellIssueName != ''"> and excell_issue_name like concat('%', #{excellIssueName}, '%')</if>
+            <if test="questionType != null "> and question_type = #{questionType}</if>
+            <if test="subject != null  and subject != ''"> and subject = #{subject}</if>
+        </where>
+
+        <if test="isRand!=null and isRand!=''"> order by rand() </if>
+        <if test="isRand==null or isRand=='' and  sort!=null and sort!='' "> order by IFNULL(${sortName},10000) </if>
+    </select>
+
+
+
+
+    <select id="selectQuestionInfoListByIds" parameterType="Long" resultMap="QuestionInfoResult">
+        <include refid="selectQuestionInfoVo"/>
+        <where>
+            and id in
+             <foreach collection="array" item="id" index="index" open="(" close=")" separator=",">
+                 #{id}
+             </foreach>
+
+        </where>
+    </select>
+
+    <select id="selectQuestionInfoListByYdtIds" parameterType="Long" resultMap="QuestionInfoResult">
+        <include refid="selectQuestionInfoVo"/>
+        <where>
+            and id_ydt in
+            <foreach collection="array" item="id" index="index" open="(" close=")" separator=",">
+                #{id}
+            </foreach>
+
+        </where>
+    </select>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</mapper>