浏览代码

submit:

yangdamao 2 年之前
父节点
当前提交
868846ac80

+ 10 - 0
zhongzheng-api/src/main/java/com/zhongzheng/controller/bank/QuestionController.java

@@ -178,4 +178,14 @@ public class QuestionController extends BaseController {
         ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
         return AjaxResult.success(iQuestionService.getTodayExamTob(goodsId,loginUser.getUser().getUserId()));
     }
+
+    /**
+     * 每日一练周记录详情
+     */
+    @ApiOperation("每日一练周记录详情")
+    @GetMapping("/todayExam/tob/weekRecord/{goodsId}")
+    public AjaxResult<TodayExamWeekRecordDetailVo> getTodayExamWeekRecord(@PathVariable("goodsId") Long goodsId) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        return AjaxResult.success(iQuestionService.getTodayExamWeekRecord(goodsId,loginUser.getUser().getUserId()));
+    }
 }

+ 3 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/bank/service/IQuestionService.java

@@ -12,10 +12,7 @@ import com.zhongzheng.modules.bank.vo.ExamVo;
 import com.zhongzheng.modules.bank.vo.QuestionImport;
 import com.zhongzheng.modules.bank.vo.QuestionImportV2;
 import com.zhongzheng.modules.bank.vo.QuestionVo;
-import com.zhongzheng.modules.goods.bo.BankGoodsExamAddBo;
-import com.zhongzheng.modules.goods.bo.GoodsQueryBo;
-import com.zhongzheng.modules.goods.bo.SpecialExamRecordAddBo;
-import com.zhongzheng.modules.goods.bo.TodayExamTobVo;
+import com.zhongzheng.modules.goods.bo.*;
 import com.zhongzheng.modules.goods.vo.BankGoodsExamVo;
 import com.zhongzheng.modules.goods.vo.GoodsExamTimeVo;
 import com.zhongzheng.modules.goods.vo.GoodsUserQuestionVo;
@@ -97,4 +94,6 @@ public interface IQuestionService extends IService<Question> {
 	GoodsExamTimeVo getToDayExam(Long goodsId,Long userId);
 
 	List<TodayExamTobVo> getTodayExamTob(Long goodsId, Long userId);
+
+	TodayExamWeekRecordDetailVo getTodayExamWeekRecord(Long goodsId, Long userId);
 }

+ 12 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/bank/service/impl/QuestionServiceImpl.java

@@ -36,6 +36,7 @@ import com.zhongzheng.modules.exam.service.IExamKnowledgeService;
 import com.zhongzheng.modules.goods.bo.BankGoodsExamAddBo;
 import com.zhongzheng.modules.goods.bo.GoodsQueryBo;
 import com.zhongzheng.modules.goods.bo.TodayExamTobVo;
+import com.zhongzheng.modules.goods.bo.TodayExamWeekRecordDetailVo;
 import com.zhongzheng.modules.goods.domain.Goods;
 import com.zhongzheng.modules.goods.domain.GoodsExamTime;
 import com.zhongzheng.modules.goods.service.IGoodsExamTimeService;
@@ -1896,6 +1897,17 @@ public class QuestionServiceImpl extends ServiceImpl<QuestionMapper, Question> i
         return voList.stream().sorted(Comparator.comparing(TodayExamTobVo::getRecordCount).reversed()).collect(Collectors.toList());
     }
 
+    @Override
+    public TodayExamWeekRecordDetailVo getTodayExamWeekRecord(Long goodsId, Long userId) {
+       //获取每日一练的打卡记录
+        List<UserSpecialExamRecord> recordList = userSpecialExamRecordService
+                .list(new LambdaQueryWrapper<UserSpecialExamRecord>()
+                .eq(UserSpecialExamRecord::getUserId, userId)
+                .eq(UserSpecialExamRecord::getGoodsId, goodsId));
+
+        return null;
+    }
+
     private String getPercent(Integer x,Integer y){
         Double d1 = x * 1.0;
         Double d2 = y * 1.0;

+ 36 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/TodayExamWeekRecordDetailVo.java

@@ -0,0 +1,36 @@
+package com.zhongzheng.modules.goods.bo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author yangdamao
+ * @date 2022年11月17日 16:13
+ */
+@Data
+public class TodayExamWeekRecordDetailVo implements Serializable {
+
+    @ApiModelProperty("平均正确率")
+    private String accuracyAvg;
+
+    @ApiModelProperty("累计做题数")
+    private Integer doNum;
+
+    @ApiModelProperty("本周做题记录")
+    private List<TodayExamWeekRecordVo> resultList;
+
+    @ApiModelProperty("上周的做题正确率")
+    private String lastWeekAccuracyAvg;
+
+    @ApiModelProperty("本周的做题正确率")
+    private String weekAccuracyAvg;
+
+    @ApiModelProperty("上周的做题数")
+    private Integer lastWeekAccuracyDoNum;
+
+    @ApiModelProperty("本周的做题数")
+    private Integer weekAccuracyDoNum;
+}

+ 26 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/TodayExamWeekRecordVo.java

@@ -0,0 +1,26 @@
+package com.zhongzheng.modules.goods.bo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2022年11月17日 16:18
+ */
+@Data
+public class TodayExamWeekRecordVo implements Serializable {
+
+    @ApiModelProperty("试卷ID")
+    private Long examId;
+
+    @ApiModelProperty("试卷名称")
+    private String examName;
+
+    @ApiModelProperty("练习次数")
+    private Integer examCount;
+
+    @ApiModelProperty("试卷时间")
+    private Long examTime;
+}

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsAttachedVo.java

@@ -82,4 +82,6 @@ public class GoodsAttachedVo {
 	private Long publishStatus;
 	@ApiModelProperty("编码")
 	private String code;
+	@ApiModelProperty("试卷类型名称")
+	private String paperName;
 }

+ 13 - 2
zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsAttachedMapper.xml

@@ -36,6 +36,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="answerNum" column="answer_num"/>
 		<result property="publishStatus" column="publish_status"/>
 		<result property="code" column="code"/>
+		<result property="paperName" column="paper_name"/>
     </resultMap>
 
     <select id="getList" parameterType="com.zhongzheng.modules.goods.bo.GoodsAttachedQueryBo" resultMap="GoodsAttachedResultVo">
@@ -92,7 +93,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			qc.`code`
 			WHEN ga.type = 3 THEN
 			e.`code`
-			END code
+			END code,
+			CASE
+			WHEN ga.type = 1 THEN
+			''
+			WHEN ga.type = 2 THEN
+			''
+			WHEN ga.type = 3 THEN
+			e.paper_name
+			END paper_name
 			<if test="userId != null ">
 				,
 				CASE
@@ -164,10 +173,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 				LEFT JOIN (
 				SELECT
 					e.*,
-					count( eq.question_id ) question_num
+					count( eq.question_id ) question_num,
+					ep.paper_name
 				FROM
 					exam e
 						LEFT JOIN exam_question eq ON e.exam_id = eq.exam_id
+						LEFT JOIN exam_paper ep ON e.exam_paper_id = ep.paper_id
 				GROUP BY
 					e.exam_id
 			) e ON ga.major_id = e.exam_id