he2802 3 år sedan
förälder
incheckning
7c91f8197c

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/domain/ClassGradeUserTemp.java

@@ -23,6 +23,10 @@ public class ClassGradeUserTemp implements Serializable {
 
 private static final long serialVersionUID=1L;
 
+    public static final Integer STATUS_CLOSE =0;  //关闭
+    public static final Integer STATUS_LOCK =1;  //锁定
+    public static final Integer STATUS_USE =2;  //加入
+
     /** $column.columnComment */
     @TableId(value = "id")
     private Long id;

+ 15 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java

@@ -381,6 +381,19 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         Order update = BeanUtil.toBean(bo, Order.class);
         validEntityBeforeSave(update);
         update.setUpdateTime(DateUtils.getNowTime());
+        if(update.getOrderStatus()==-1){
+            //手动关闭订单
+            OrderVo orderVo = this.queryById(bo.getOrderId());
+            //关闭锁定班级
+            LambdaQueryWrapper<ClassGradeUserTemp> lqwLock = new LambdaQueryWrapper<>();
+            lqwLock.eq(ClassGradeUserTemp::getOrderSn,orderVo.getOrderSn());
+            ClassGradeUserTemp classGradeUserTemp = iClassGradeUserTempService.getOne(lqwLock);
+            if(classGradeUserTemp!=null){
+                classGradeUserTemp.setStatus(ClassGradeUserTemp.STATUS_CLOSE);
+                classGradeUserTemp.setUpdateTime(DateUtils.getNowTime());
+                iClassGradeUserTempService.updateById(classGradeUserTemp);//关闭锁定状态
+            }
+        }
         return this.updateById(update);
     }
 
@@ -391,6 +404,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
      */
     private void validEntityBeforeSave(Order entity){
         //TODO 做一些数据校验,如唯一约束
+
     }
 
     @Override
@@ -526,7 +540,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         ClassGradeUserTemp classGradeUserTemp = new ClassGradeUserTemp();
         classGradeUserTemp.setUserId(userId);
         classGradeUserTemp.setGradeId(gradeId);
-        classGradeUserTemp.setStatus(1);
+        classGradeUserTemp.setStatus(ClassGradeUserTemp.STATUS_LOCK);
         classGradeUserTemp.setFromType(1);
         classGradeUserTemp.setGoodsId(goodsId);
         classGradeUserTemp.setOrderSn(orderSn);

+ 2 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/wx/service/impl/WxPayServiceImpl.java

@@ -320,7 +320,8 @@ public class WxPayServiceImpl  implements IWxPayService {
         lqwLock.eq(ClassGradeUserTemp::getGoodsId,goodsId);
         ClassGradeUserTemp classGradeUserTemp = iClassGradeUserTempService.getOne(lqwLock);
         if(classGradeUserTemp!=null){
-            classGradeUserTemp.setStatus(0);
+            classGradeUserTemp.setStatus(ClassGradeUserTemp.STATUS_USE); //
+            classGradeUserTemp.setUpdateTime(DateUtils.getNowTime());
             iClassGradeUserTempService.updateById(classGradeUserTemp);//关闭锁定状态
             iOrderService.joinGrade(orderGoodsId,classGradeUserTemp.getGradeId(),classGradeUserTemp.getUserId());
         }