he2802 3 жил өмнө
parent
commit
3d8f3c9b84

+ 23 - 20
zhongzheng-system/src/main/java/com/zhongzheng/modules/wx/service/impl/WxPayServiceImpl.java

@@ -335,7 +335,7 @@ public class WxPayServiceImpl  implements IWxPayService {
                     g.setPayStatus(OrderGoods.PAY_FULL);
                     g.setPayStatus(OrderGoods.PAY_FULL);
                     g.setGoodsReceived(g.getGoodsRealPrice());
                     g.setGoodsReceived(g.getGoodsRealPrice());
                     iOrderGoodsService.updateById(g);
                     iOrderGoodsService.updateById(g);
-                    this.joinLockGrade(order.getOrderSn(),g.getGoodsId(),g.getOrderGoodsId());
+                    joinLockGrade(order.getOrderSn(),g.getGoodsId(),g.getOrderGoodsId());
                     //给用户增加商品考试次数前培次数
                     //给用户增加商品考试次数前培次数
                     updateUserExamGoods(g,order);
                     updateUserExamGoods(g,order);
                 }
                 }
@@ -416,26 +416,29 @@ public class WxPayServiceImpl  implements IWxPayService {
     //加入锁定班级
     //加入锁定班级
     @Override
     @Override
     public boolean joinLockGrade(String orderSn,Long goodsId,Long orderGoodsId){
     public boolean joinLockGrade(String orderSn,Long goodsId,Long orderGoodsId){
-        LambdaQueryWrapper<ClassGradeUserTemp> lqwLock = new LambdaQueryWrapper<>();
-        lqwLock.eq(ClassGradeUserTemp::getOrderSn,orderSn);
-        lqwLock.eq(ClassGradeUserTemp::getGoodsId,goodsId);
-        ClassGradeUserTemp classGradeUserTemp = iClassGradeUserTempService.getOne(lqwLock);
-        if(classGradeUserTemp!=null&&classGradeUserTemp.getStatus()==ClassGradeUserTemp.STATUS_LOCK){
-            classGradeUserTemp.setStatus(ClassGradeUserTemp.STATUS_USE); //
-            classGradeUserTemp.setUpdateTime(DateUtils.getNowTime());
-            iClassGradeUserTempService.updateById(classGradeUserTemp);//关闭锁定状态
-            iOrderService.joinGrade(orderGoodsId,classGradeUserTemp.getGradeId(),classGradeUserTemp.getUserId());
+        GoodsVo goodsVo = iGoodsService.queryById(goodsId);
+        if (goodsVo.getGoodsType().equals(1L)){
+            LambdaQueryWrapper<ClassGradeUserTemp> lqwLock = new LambdaQueryWrapper<>();
+            lqwLock.eq(ClassGradeUserTemp::getOrderSn,orderSn);
+            lqwLock.eq(ClassGradeUserTemp::getGoodsId,goodsId);
+            ClassGradeUserTemp classGradeUserTemp = iClassGradeUserTempService.getOne(lqwLock);
+            if(classGradeUserTemp!=null&&classGradeUserTemp.getStatus()==ClassGradeUserTemp.STATUS_LOCK){
+                classGradeUserTemp.setStatus(ClassGradeUserTemp.STATUS_USE); //
+                classGradeUserTemp.setUpdateTime(DateUtils.getNowTime());
+                iClassGradeUserTempService.updateById(classGradeUserTemp);//关闭锁定状态
+                iOrderService.joinGrade(orderGoodsId,classGradeUserTemp.getGradeId(),classGradeUserTemp.getUserId());
+            }
+            //记录消耗一次学习机会
+            StudyCountLog studyCountLog = new StudyCountLog();
+            studyCountLog.setGradeId(classGradeUserTemp.getGradeId());
+            studyCountLog.setStatus(-1);
+            studyCountLog.setOrderGoodsId(orderGoodsId);
+            studyCountLog.setStudyCount(1L);
+            studyCountLog.setUserId(classGradeUserTemp.getUserId());
+            studyCountLog.setCreateTime(DateUtils.getNowTime());
+            studyCountLog.setUpdateTime(DateUtils.getNowTime());
+            iStudyCountLogService.save(studyCountLog);
         }
         }
-        //记录消耗一次学习机会
-        StudyCountLog studyCountLog = new StudyCountLog();
-        studyCountLog.setGradeId(classGradeUserTemp.getGradeId());
-        studyCountLog.setStatus(-1);
-        studyCountLog.setOrderGoodsId(orderGoodsId);
-        studyCountLog.setStudyCount(1L);
-        studyCountLog.setUserId(classGradeUserTemp.getUserId());
-        studyCountLog.setCreateTime(DateUtils.getNowTime());
-        studyCountLog.setUpdateTime(DateUtils.getNowTime());
-        iStudyCountLogService.save(studyCountLog);
         return true;
         return true;
     }
     }