he2802 před 2 roky
rodič
revize
578ea39496
23 změnil soubory, kde provedl 179 přidání a 12 odebrání
  1. 21 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassUserNumBo.java
  2. 1 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/IClassGradeService.java
  3. 33 5
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeServiceImpl.java
  4. 21 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/service/impl/MockApplyServiceImpl.java
  5. 6 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/vo/MockApplyVo.java
  6. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/mapper/OrderGoodsMapper.java
  7. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/IOrderGoodsService.java
  8. 5 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderGoodsServiceImpl.java
  9. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java
  10. 2 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderGoodsVo.java
  11. 6 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockRecordAddBo.java
  12. 5 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockRecordEditBo.java
  13. 4 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeAddBo.java
  14. 5 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeEditBo.java
  15. 5 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserMockRecord.java
  16. 4 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserMockSubscribe.java
  17. 12 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserMockRecordVo.java
  18. 5 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserMockSubscribeVo.java
  19. 2 0
      zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsMapper.xml
  20. 3 3
      zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeMapper.xml
  21. 21 0
      zhongzheng-system/src/main/resources/mapper/modules/order/OrderGoodsMapper.xml
  22. 10 2
      zhongzheng-system/src/main/resources/mapper/modules/user/UserMockRecordMapper.xml
  23. 2 0
      zhongzheng-system/src/main/resources/mapper/modules/user/UserMockSubscribeMapper.xml

+ 21 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassUserNumBo.java

@@ -0,0 +1,21 @@
+package com.zhongzheng.modules.grade.bo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2023年02月08日 11:23
+ */
+@Data
+public class ClassUserNumBo implements Serializable {
+
+    @ApiModelProperty("业务层次名称")
+    private String officialName;
+
+    @ApiModelProperty("序号")
+    private Integer num;
+}

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/IClassGradeService.java

@@ -95,7 +95,7 @@ public interface IClassGradeService extends IService<ClassGrade> {
 
 	List<ClassNpUserInfoVo> officialGradeDetail(ClassNpUserInfoBo bo);
 
-	String getOfficialGradeNum(ClassOfficialNumBo bo);
+	ClassUserNumBo getOfficialGradeNum(ClassOfficialNumBo bo);
 
 	List<ClassGrade> getGradeListByTenant(ClassGradeListBo bgListBo);
 

+ 33 - 5
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeServiceImpl.java

@@ -6,6 +6,7 @@ import cn.hutool.core.lang.Validator;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.zhongzheng.common.annotation.DataScope;
@@ -247,6 +248,8 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
                     List<Goods> goodsList = iGoodsService.list(new LambdaQueryWrapper<Goods>()
                             .eq(Goods::getEducationTypeId, goods.getEducationTypeId())
                             .eq(Goods::getBusinessId, goods.getBusinessId())
+                            .eq(Goods::getStatus,1)
+                            .eq(Goods::getGoodsStatus,1)
                             .eq(Goods::getProjectId, goods.getProjectId())
                             .eq(Goods::getSubjectIds, goods.getSubjectIds()));
                     if (goodsList.size() > 1){
@@ -468,6 +471,18 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
         ClassGrade grade = getById(update.getGradeId());
         if (ObjectUtils.isNotNull(grade) && ObjectUtils.isNotNull(grade.getClassStatus())
                 && StringUtils.isNotBlank(grade.getOfficialName()) && grade.getClassStatus() == 1){
+            //开班修改预报名班级下 所有班级
+            List<ClassGrade> list = list(new LambdaQueryWrapper<ClassGrade>().eq(ClassGrade::getOfficialName, update.getRegisterCode()));
+            if (CollectionUtils.isNotEmpty(list)){
+                update(new LambdaUpdateWrapper<ClassGrade>()
+                .set(ClassGrade::getOfficialName,update.getOfficialName())
+                .set(ClassGrade::getRegisterCode,update.getRegisterCode())
+                .set(ClassGrade::getClassStartTime,update.getClassStartTime())
+                .set(ClassGrade::getClassEndTime,update.getClassEndTime())
+                .set(ClassGrade::getClassStatus,update.getClassStatus())
+                .set(ClassGrade::getLearningStatus,update.getLearningStatus())
+                .in(ClassGrade::getGradeId,list.stream().map(ClassGrade::getGradeId).collect(Collectors.toList())));
+            }
             //官方班级开班通知旧系统
             ClassGradeOpenBo openBo = new ClassGradeOpenBo();
             openBo.setOfficialName(grade.getOfficialName());
@@ -969,7 +984,7 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
                     log.info("查询业务系统班级人数失败参数" + params, "");
                     throw new CustomException("同步查询班级人数请求错误" + e.getMessage());
                 }
-                if ((peopleNum + oldGradeNum) >= 7) { //全系统平台二建班级人数不能超300
+                if ((peopleNum + oldGradeNum) >= 300) { //全系统平台二建班级人数不能超300
                     return false;
                 }
             }
@@ -1014,7 +1029,7 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
                     log.info("查询业务系统班级人数失败参数" + params, "");
                     throw new CustomException("同步查询班级人数请求错误" + e.getMessage());
                 }
-                if ((peopleNum + oldGradeNum) > 7) { //全系统平台二建班级人数不能超300
+                if ((peopleNum + oldGradeNum) > 300) { //全系统平台二建班级人数不能超300
                     return false;
                 }
             }
@@ -1159,7 +1174,7 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
     }
 
     @Override
-    public String getOfficialGradeNum(ClassOfficialNumBo bo) {
+    public ClassUserNumBo getOfficialGradeNum(ClassOfficialNumBo bo) {
         List<Long> subIds = iCourseSubjectService.getIdsByTenant(Arrays.asList(bo.getSubName()));
         //获取业务层次下所有班级
         ClassGradeListBo bgListBo = new ClassGradeListBo();
@@ -1193,13 +1208,26 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
             List<ClassGrade> classGradesMax = map.get(sortBo.getKey()).stream().sorted(Comparator.comparing(ClassGrade::getCreateTime)).collect(Collectors.toList());
             if(bo.getSortNum() < classGradesMax.size()){
                 ClassGrade classGrade = classGradesMax.get(bo.getSortNum());
-               return classGrade.getOfficialName();
+                ClassUserNumBo classUserNumBo = new ClassUserNumBo();
+                classUserNumBo.setOfficialName(classGrade.getOfficialName());
+                ClassGradeQueryBo classGradeQueryBo = new ClassGradeQueryBo();
+                classGradeQueryBo.setOfficialName(classGrade.getOfficialName());
+                Integer count = baseMapper.queryOfficialGradeCount(classGradeQueryBo);
+                classUserNumBo.setNum(ObjectUtils.isNotNull(count)?count:0);
+               return classUserNumBo;
             }else {
                 //创建新预报名班级
                 creatClass(goodsIds.get(0),tenantId,encoded);
             }
         }
-        return encoded;
+
+        ClassUserNumBo classUserNumBo = new ClassUserNumBo();
+        classUserNumBo.setOfficialName(encoded);
+        ClassGradeQueryBo classGradeQueryBo = new ClassGradeQueryBo();
+        classGradeQueryBo.setOfficialName(encoded);
+        Integer count = baseMapper.queryOfficialGradeCount(classGradeQueryBo);
+        classUserNumBo.setNum(ObjectUtils.isNotNull(count)?count:0);
+        return classUserNumBo;
     }
 
     @Override

+ 21 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/service/impl/MockApplyServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONUtil;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.zhongzheng.common.core.domain.AjaxResult;
 import com.zhongzheng.common.exception.CustomException;
@@ -24,7 +25,10 @@ import com.zhongzheng.modules.mock.bo.*;
 import com.zhongzheng.modules.mock.domain.*;
 import com.zhongzheng.modules.mock.service.*;
 import com.zhongzheng.modules.mock.vo.*;
+import com.zhongzheng.modules.order.domain.OrderGoods;
+import com.zhongzheng.modules.order.service.IOrderGoodsService;
 import com.zhongzheng.modules.order.service.IOrderService;
+import com.zhongzheng.modules.order.vo.OrderGoodsVo;
 import com.zhongzheng.modules.user.domain.UserMockSubscribe;
 import com.zhongzheng.modules.user.service.IUserMockSubscribeService;
 import com.zhongzheng.modules.user.service.IUserSubscribeService;
@@ -65,6 +69,9 @@ public class MockApplyServiceImpl extends ServiceImpl<MockApplyMapper, MockApply
     @Autowired
     private IOrderService iOrderService;
 
+    @Autowired
+    private IOrderGoodsService iOrderGoodsService;
+
     @Autowired
     private IMajorService iMajorService;
 
@@ -402,6 +409,20 @@ public class MockApplyServiceImpl extends ServiceImpl<MockApplyMapper, MockApply
                 }else {
                     mockApplyVo.setIsSubscribe(1);
                 }
+                //获取商品和订单商品ID
+                List<MockMajorSubjectGoods> list = iMockMajorSubjectGoodsService
+                        .list(new LambdaQueryWrapper<MockMajorSubjectGoods>()
+                        .eq(MockMajorSubjectGoods::getMockMajorSubjectId, mockApplyVo.getMockMajorSubjectId()));
+                if (CollectionUtils.isNotEmpty(list)){
+                    for (MockMajorSubjectGoods item : list) {
+                        OrderGoods orderGoods = iOrderGoodsService.getOrderByGoods(bo.getUserId(),item.getGoodsId());
+                        if (ObjectUtils.isNotNull(orderGoods)){
+                            mockApplyVo.setOrderGoodsId(orderGoods.getOrderGoodsId());
+                            mockApplyVo.setGoodsId(orderGoods.getGoodsId());
+                            break;
+                        }
+                    }
+                }
             });
         }
         return mockApplyVoList;

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/vo/MockApplyVo.java

@@ -209,4 +209,10 @@ public class MockApplyVo {
 	@ApiModelProperty("活动结束时间")
 	private Long activityEndTime;
 
+	@ApiModelProperty("商品ID")
+	private Long goodsId;
+
+	@ApiModelProperty("订单商品ID")
+	private Long orderGoodsId;
+
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/mapper/OrderGoodsMapper.java

@@ -59,4 +59,6 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
     List<OrderGoodsVo> getLongNotStudyList(OrderQueryBo bo);
 
     List<GoodsSectionListVo> getGoodsSectionList(@Param("goodsId") Long goodsId);
+
+    OrderGoods getOrderByGoods(@Param("userId")Long userId,@Param("goodsId") Long goodsId);
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/IOrderGoodsService.java

@@ -111,4 +111,6 @@ public interface IOrderGoodsService extends IService<OrderGoods> {
     Boolean checkGoodsStatus(CheckGoodsStatusBo bo);
 
     List<GoodsSectionListVo> getGoodsSectionList(GoodsSectionListBo bo);
+
+    OrderGoods getOrderByGoods(Long userId, Long goodsId);
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderGoodsServiceImpl.java

@@ -667,6 +667,11 @@ public class OrderGoodsServiceImpl extends ServiceImpl<OrderGoodsMapper, OrderGo
         return  resultVos.stream().filter(s -> s.getRebuild() != null && s.getRebuild().equals(1)).collect(Collectors.toList());
     }
 
+    @Override
+    public OrderGoods getOrderByGoods(Long userId, Long goodsId) {
+        return baseMapper.getOrderByGoods(userId,goodsId);
+    }
+
     private boolean checkUnique(Long GoodsId,Long UserId) {
         ShoppingCart info = iShoppingCartService.getOne(new LambdaQueryWrapper<ShoppingCart>()
                 .eq(ShoppingCart::getUserId,UserId).eq(ShoppingCart::getGoodsId,GoodsId).last("limit 1"));

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java

@@ -1802,6 +1802,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
             List<Goods> goodsList = iGoodsService.list(new LambdaQueryWrapper<Goods>()
                     .eq(Goods::getEducationTypeId, goods.getEducationTypeId())
                     .eq(Goods::getBusinessId, goods.getBusinessId())
+                    .eq(Goods::getStatus,1)
+                    .eq(Goods::getGoodsStatus,1)
                     .eq(Goods::getProjectId, goods.getProjectId())
                     .eq(Goods::getSubjectIds, goods.getSubjectIds()));
             if (goodsList.size() > 1){

+ 2 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderGoodsVo.java

@@ -257,7 +257,8 @@ public class OrderGoodsVo {
 	/** 班主任ID */
 	@ApiModelProperty("班主任ID")
 	private Long sysUserId;
-	@ApiModelProperty("学时审批状态 0 未通过 1通过 2待审核 -1 不可审核")
+//	@ApiModelProperty("学时审批状态 0 未通过 1通过 2待审核 -1 不可审核")
+	@ApiModelProperty("审批状态 0 待审核 1初审通过 2复审通过待退款  -1初审不通过 -2复审不通过 3复审通过已退款")
 	private Integer periodStatus;
 	/** 学习进度 */
 	@ApiModelProperty("商品关联考试安排状态")

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockRecordAddBo.java

@@ -83,4 +83,10 @@ public class UserMockRecordAddBo {
     /** 提交时间 */
     @ApiModelProperty("提交时间")
     private Long commitTime;
+    /** 做题模式 1章卷 2随机练习 3模拟随机 */
+    @ApiModelProperty("做题模式 1章卷 2随机练习 3模拟随机")
+    private Integer doMode;
+    /** 模拟做题试卷ID */
+    @ApiModelProperty("模拟做题试卷ID")
+    private Long simulateExamId;
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockRecordEditBo.java

@@ -100,4 +100,9 @@ public class UserMockRecordEditBo {
     /** 提交时间 */
     @ApiModelProperty("提交时间")
     private Long commitTime;
+    @ApiModelProperty("做题模式 1章卷 2随机练习 3模拟随机")
+    private Integer doMode;
+    /** 模拟做题试卷ID */
+    @ApiModelProperty("模拟做题试卷ID")
+    private Long simulateExamId;
 }

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

@@ -81,4 +81,8 @@ public class UserMockSubscribeAddBo implements Serializable {
     /** 是否已发送开播通知 0不预约 1预约 */
     @ApiModelProperty("是否已发送开播通知 0不预约 1预约")
     private Integer hasLiveSubscribe;
+    @ApiModelProperty("订单商品ID")
+    private Long orderGoodsId;
+    @ApiModelProperty("商品id")
+    private Long goodsId;
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeEditBo.java

@@ -97,4 +97,9 @@ public class UserMockSubscribeEditBo {
     /** 是否已发送开播通知 0不预约 1预约 */
     @ApiModelProperty("是否已发送开播通知 0不预约 1预约")
     private Integer hasLiveSubscribe;
+
+    @ApiModelProperty("订单商品ID")
+    private Long orderGoodsId;
+    @ApiModelProperty("商品id")
+    private Long goodsId;
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserMockRecord.java

@@ -76,4 +76,9 @@ private static final long serialVersionUID=1L;
     private Long lessQuestionNum;
     /** 提交时间 */
     private Long commitTime;
+    /** 做题模式 1章卷 2随机练习 3模拟随机 */
+    private Integer doMode;
+    /** 模拟做题试卷ID */
+    private Long simulateExamId;
+
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserMockSubscribe.java

@@ -70,4 +70,8 @@ private static final long serialVersionUID=1L;
     private Integer hasMockRemind;
     /** 是否已发送开播通知 0不预约 1预约 */
     private Integer hasLiveSubscribe;
+    /** 订单商品ID */
+    private Long orderGoodsId;
+    /** 商品id */
+    private Long goodsId;
 }

+ 12 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserMockRecordVo.java

@@ -124,4 +124,16 @@ public class UserMockRecordVo {
 	@Excel(name = "预约ID")
 	@ApiModelProperty("预约ID")
 	private Long subscribeId;
+
+	@ApiModelProperty("订单商品ID")
+	private Long orderGoodsId;
+
+	@ApiModelProperty("商品ID")
+	private Long goodsId;
+
+	@ApiModelProperty("做题模式 1章卷 2随机练习 3模拟随机")
+	private Integer doMode;
+	/** 模拟做题试卷ID */
+	@ApiModelProperty("模拟做题试卷ID")
+	private Long simulateExamId;
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserMockSubscribeVo.java

@@ -240,4 +240,9 @@ public class UserMockSubscribeVo {
 
 	@ApiModelProperty("考试时长(分钟)")
 	private Integer duration;
+
+	@ApiModelProperty("订单商品ID")
+	private Long orderGoodsId;
+	@ApiModelProperty("商品id")
+	private Long goodsId;
 }

+ 2 - 0
zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsMapper.xml

@@ -753,6 +753,8 @@
           AND og.goods_id = #{goodsId}
           AND og.pay_status IN (2, 3, 4)
           AND og.refund_status != 2
+          AND og.`status` = 1
+	      AND o.`status` = 1
           AND o.tenant_id = #{tenantId}
           AND og.tenant_id = #{tenantId}
     </select>

+ 3 - 3
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeMapper.xml

@@ -943,11 +943,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             cg.grade_id,
             g.subject_ids
         FROM class_grade cg
-                 LEFT JOIN class_grade_user cgu ON cg.grade_id = cgu.grade_id
+                 INNER JOIN  class_grade_user cgu ON cg.grade_id = cgu.grade_id
                 <if test="tenantId != null">
                     AND cgu.tenant_id = #{tenantId}
                 </if>
-                 LEFT JOIN class_grade_goods cgg ON cg.grade_id = cgg.grade_id
+                 INNER JOIN class_grade_goods cgg ON cg.grade_id = cgg.grade_id
                 <if test="tenantId != null">
                     AND cgg.tenant_id = #{tenantId}
                 </if>
@@ -990,7 +990,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             LEFT JOIN goods g ON cgg.goods_id = g.goods_id
             LEFT JOIN course_business cb ON g.business_id = cb.id
         WHERE
-            cb.alias_name = #{aliasName} AND cg.class_status = 0 AND cg.`status` = 1 AND g.goods_status = 1 AND cb.`status` = 1
+            cb.alias_name = #{aliasName} AND cg.class_status = 0 AND cg.`status` = 1 AND g.goods_status = 1 AND cb.`status` = 1 AND g.`status` = 1
         <if test="subIds != null and subIds.size()!=0 ">
             AND (
             <foreach collection="subIds" item="id" index="index">

+ 21 - 0
zhongzheng-system/src/main/resources/mapper/modules/order/OrderGoodsMapper.xml

@@ -56,6 +56,7 @@
         <result property="rebuyOrderGoodsId" column="rebuy_order_goods_id"/>
         <result property="externalLink" column="external_link"/>
         <result property="externalLinkStatus" column="external_link_status"/>
+        <result property="periodStatus" column="period_status"/>
 
         <result property="code" column="code"/>
         <result property="goodsName" column="goods_name"/>
@@ -117,10 +118,12 @@
         g.cover_url,
         cet.education_name,
         cpt.project_name,
+        ogr.period_status,
         cb.business_name
         FROM
         order_goods og
         LEFT JOIN goods g ON og.goods_id = g.goods_id
+        LEFT JOIN order_goods_refund ogr ON og.order_sn = ogr.order_sn
         LEFT JOIN course_education_type cet ON g.education_type_id = cet.id
         LEFT JOIN course_project_type cpt ON g.project_id = cpt.id
         LEFT JOIN course_business cb ON g.business_id = cb.id
@@ -758,4 +761,22 @@
         ccsSort,
         csSort
     </select>
+
+    <select id="getOrderByGoods" parameterType="java.lang.Long" resultType="com.zhongzheng.modules.order.domain.OrderGoods">
+        SELECT
+            *
+        FROM
+            order_goods og
+                LEFT JOIN `order` o ON og.order_sn = o.order_sn
+                LEFT JOIN goods g ON og.goods_id = g.goods_id
+        WHERE
+            og.`status` = 1
+            AND o.`status` = 1
+            AND g.`status` = 1
+            AND og.refund_status != 2
+            AND og.pay_status IN ( 2, 3, 4 )
+            AND o.user_id = #{userId}
+            AND g.goods_id = #{goodsId}
+            LIMIT 1
+    </select>
 </mapper>

+ 10 - 2
zhongzheng-system/src/main/resources/mapper/modules/user/UserMockRecordMapper.xml

@@ -49,6 +49,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="rightQuestionIds" column="right_question_ids"/>
         <result property="doType" column="do_type"/>
         <result property="allQuestionNum" column="all_question_num"/>
+        <result property="orderGoodsId" column="order_goods_id"/>
+        <result property="goodsId" column="goods_id"/>
+        <result property="doMode" column="do_mode"/>
+        <result property="simulateExamId" column="simulate_exam_id"/>
 
         <result property="examName" column="exam_name"/>
         <result property="paperName" column="paper_name"/>
@@ -93,7 +97,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             ue.*,
             e.exam_name,
             ep.paper_name,
-            ums.subscribe_id
+            ums.subscribe_id,
+            ums.order_goods_id,
+            ums.goods_id
         FROM
             user_mock_record ue
                 LEFT JOIN exam e ON ue.exam_id = e.exam_id
@@ -124,7 +130,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ue.*,
         e.exam_name,
         ep.paper_name,
-        ums.subscribe_id
+        ums.subscribe_id,
+        ums.order_goods_id,
+        ums.goods_id
         FROM
         (
         SELECT

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

@@ -73,6 +73,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="activityStartTime" column="activity_start_time"/>
         <result property="activityEndTime" column="activity_end_time"/>
         <result property="duration" column="duration"/>
+        <result property="orderGoodsId" column="order_goods_id"/>
+        <result property="goodsId" column="goods_id"/>
     </resultMap>
     <select id="getInfo" parameterType="java.lang.Long" resultMap="UserMockSubscribeVoResult">
         SELECT 	ums.*,