he2802 před 3 roky
rodič
revize
1e0097bf1e

+ 13 - 0
zhongzheng-api/src/main/java/com/zhongzheng/controller/user/UserExamRecordController.java

@@ -61,6 +61,19 @@ public class UserExamRecordController extends BaseController {
         return getDataTable(list);
     }
 
+    /**
+     * 查询用户的题库试卷做题历史列表
+     */
+    @ApiOperation("查询用户的题库试卷做题历史分组列表")
+    @GetMapping("/group_list")
+    public TableDataInfo<UserExamRecordVo> groupList(UserExamRecordQueryBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        startPage();
+        List<UserExamRecordVo> list = iUserExamRecordService.selectGroupList(bo);
+        return getDataTable(list);
+    }
+
     /**
      * 查询用户的题库试卷做题历史列表
      */

+ 3 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserAppSubscribeEditBo.java

@@ -110,6 +110,8 @@ public class UserAppSubscribeEditBo {
     /** 考培日期 */
     @ApiModelProperty("考培日期")
     private Long applySiteExamTrainTime;
-
+    /** 订单商品ID */
+    @ApiModelProperty("订单商品ID")
+    private Long orderGoodsId;
 
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserSubscribeAddBo.java

@@ -98,4 +98,7 @@ public class UserSubscribeAddBo {
     /** 导入批次编号 */
     @ApiModelProperty("导入批次编号")
     private String importNo;
+    /** 订单商品ID */
+    @ApiModelProperty("订单商品ID")
+    private Long orderGoodsId;
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserSubscribeEditBo.java

@@ -119,4 +119,8 @@ public class UserSubscribeEditBo {
     /** 导入批次编号 */
     @ApiModelProperty("导入批次编号")
     private String importNo;
+
+    /** 订单商品ID */
+    @ApiModelProperty("订单商品ID")
+    private Long orderGoodsId;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserSubscribe.java

@@ -78,4 +78,6 @@ private static final long serialVersionUID=1L;
     private Long applySiteExamTrainTime;
     /** 导入批次编号 */
     private String importNo;
+    /** 订单商品ID */
+    private Long orderGoodsId;
 }

+ 1 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserExamRecordMapper.java

@@ -25,4 +25,5 @@ public interface UserExamRecordMapper extends BaseMapper<UserExamRecord> {
     List<UserExamWrongRecordVo> getExamRecordRightList(UserExamRecordQueryBo bo);
     List<UserExamWrongRecordVo> getExamRecordWrongList(UserExamRecordQueryBo bo);
     Long getUserDoQuestionNum(UserExamRecordQueryBo bo);
+    List<UserExamRecordVo> selectGroupList(UserExamRecordQueryBo bo);
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserExamRecordService.java

@@ -70,4 +70,6 @@ public interface IUserExamRecordService extends IService<UserExamRecord> {
 	 * @return
 	 */
 	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+	List<UserExamRecordVo> selectGroupList(UserExamRecordQueryBo bo);
+
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserExamRecordServiceImpl.java

@@ -189,4 +189,9 @@ public class UserExamRecordServiceImpl extends ServiceImpl<UserExamRecordMapper,
         }
         return this.removeByIds(ids);
     }
+
+    @Override
+    public List<UserExamRecordVo> selectGroupList(UserExamRecordQueryBo bo) {
+        return this.selectGroupList(bo);
+    }
 }

+ 4 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserSubscribeVo.java

@@ -188,5 +188,8 @@ public class UserSubscribeVo {
 	@Excel(name = "导入批次编号")
 	@ApiModelProperty("导入批次编号")
 	private String importNo;
-
+	/** 订单商品ID */
+	@com.zhongzheng.common.annotation.Excel(name = "订单商品ID")
+	@ApiModelProperty("订单商品ID")
+	private Long orderGoodsId;
 }

+ 42 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserExamRecordMapper.xml

@@ -108,6 +108,48 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ORDER by ue.record_id DESC
     </select>
 
+    <select id="selectGroupList" parameterType="com.zhongzheng.modules.user.bo.UserExamRecordQueryBo" resultMap="UserExamRecordVoResult">
+        SELECT
+        ue.*,
+        e.exam_name,
+        ep.paper_name
+        FROM
+        (
+        SELECT
+        ue.goods_id,
+        ue.exam_id,
+        ue.module_exam_id,
+        ue.chapter_exam_id,
+        MAX( UE.record_id ) record_id
+        FROM
+        user_exam_record ue
+        LEFT JOIN exam e ON ue.exam_id = e.exam_id
+        LEFT JOIN exam_paper ep ON e.exam_paper_id = ep.paper_id
+        WHERE
+        ue.user_id = 53
+        GROUP BY
+        ue.goods_id,
+        ue.exam_id,
+        ue.module_exam_id,
+        ue.chapter_exam_id
+        ) t
+        LEFT JOIN user_exam_record ue ON t.record_id = ue.record_id
+        LEFT JOIN exam e ON ue.exam_id = e.exam_id
+        LEFT JOIN exam_paper ep ON e.exam_paper_id = ep.paper_id
+        WHERE
+        ue.user_id = #{userId}
+        <if test="paperId != null and paperId != ''">
+            AND ep.paper_id = #{paperId}
+        </if>
+        <if test="goodsId != null and goodsId != ''">
+            AND ue.goods_id = #{goodsId}
+        </if>
+        <if test="examId != null and examId != ''">
+            AND ue.exam_id = #{examId}
+        </if>
+        ORDER by ue.record_id DESC
+    </select>
+
     <select id="selectDoNum" parameterType="com.zhongzheng.modules.user.bo.UserExamRecordQueryBo" resultType="Long">
         SELECT
             IFNULL( COUNT(*), 0 ) num

+ 2 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserSubscribeMapper.xml

@@ -21,6 +21,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="createTime" column="create_time"/>
         <result property="updateTime" column="update_time"/>
         <result property="importNo" column="import_no"/>
+        <result property="orderGoodsId" column="order_goods_id"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.user.vo.UserSubscribeVo" id="UserSubscribeVo">
@@ -62,6 +63,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="beforeCount" column="before_count"/>
         <result property="beforeName" column="before_name"/>
         <result property="importNo" column="import_no"/>
+        <result property="orderGoodsId" column="order_goods_id"/>
     </resultMap>
 
     <select id="listSubscribe" parameterType="com.zhongzheng.modules.user.bo.UserSubscribeQueryBo" resultMap="UserSubscribeVo">