he2802 2 anos atrás
pai
commit
75a9b1226f

+ 6 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsQuestionRelExamServiceImpl.java

@@ -31,6 +31,7 @@ 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.github.pagehelper.Page;
+import org.springframework.transaction.annotation.Transactional;
 
 
 import java.util.Collection;
@@ -113,6 +114,7 @@ public class GoodsQuestionRelExamServiceImpl extends ServiceImpl<GoodsQuestionRe
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public GoodsQuestionRelExamVo makeExam(GoodsQuestionRelExamAddBo bo) {
         if(Validator.isEmpty(bo.getRelId())){
             throw new CustomException("参数缺失");
@@ -143,7 +145,7 @@ public class GoodsQuestionRelExamServiceImpl extends ServiceImpl<GoodsQuestionRe
         }
         UserSubscribe userSubscribe = iUserSubscribeService.getOne(new LambdaQueryWrapper<UserSubscribe>()
                 .eq(UserSubscribe::getUserId, bo.getUserId()).eq(UserSubscribe::getOrderGoodsId, questionRel.getOrderGoodsId())
-                .eq(UserSubscribe::getExamStatus, 1).orderByDesc(UserSubscribe::getSubscribeId).last("limit 1"));
+                .eq(UserSubscribe::getExamStatus, 0).orderByDesc(UserSubscribe::getSubscribeId).last("limit 1"));
         if(Validator.isEmpty(userSubscribe)){
             throw new CustomException("预约数据不存在");
         }
@@ -160,6 +162,9 @@ public class GoodsQuestionRelExamServiceImpl extends ServiceImpl<GoodsQuestionRe
         if(Validator.isEmpty(examId)){
             throw new CustomException("试卷不存在");
         }
+        questionRel.setQuestionDoNum(questionRel.getQuestionDoNum()-1);
+        questionRel.setUpdateTime(DateUtils.getNowTime());
+        iGoodsQuestionRelService.updateById(questionRel);
         add.setExpTime(qsOrderGoods.getServiceEndTime());
         add.setExamId(examId);
         add.setUserSubscribeId(userSubscribe.getSubscribeId());