skyline 1 год назад
Родитель
Сommit
c0d01cd345

+ 14 - 11
car-wash-service/src/main/java/com/kym/service/awoara/event/handle/OrderCloseEventHandler.java

@@ -129,17 +129,6 @@ public class OrderCloseEventHandler implements AwoaraEventHandler<OrderInfoObjec
         var platformAmount = (int) (washOrder.getAmount() * 0.1);
         // 解冻金额
         var unfreezeAmount = (int) (washOrder.getAmount() * 0.3);
-        stationAccountService.lambdaUpdate()
-                .setSql("balance = balance + {0}, frozen_amount = frozen_amount - {1}", unfreezeAmount - platformAmount, unfreezeAmount)
-                .eq(StationAccount::getStationId, washOrder.getStationId())
-                .update();
-
-        // 平台技术服务费10%
-        stationAccountService.lambdaUpdate()
-                .setSql("balance = balance + {0}", platformAmount)
-                .eq(StationAccount::getId, StationAccount.PLATFORM_ACCOUNT_ID)
-                .eq(StationAccount::getStationId, StationAccount.PLATFORM_STATION_ID)
-                .update();
 
         // 技术服务费
         var splitRecord0 = new SplitRecord()
@@ -191,6 +180,20 @@ public class OrderCloseEventHandler implements AwoaraEventHandler<OrderInfoObjec
 
         stationAccountRecordService.saveBatch(List.of(stationAccountRecord0, stationAccountRecord1));
 
+        // 最后更新账户金额
+        stationAccountService.lambdaUpdate()
+                .setSql("balance = balance + {0}, frozen_amount = frozen_amount - {1}", unfreezeAmount - platformAmount, unfreezeAmount)
+                .eq(StationAccount::getStationId, washOrder.getStationId())
+                .update();
+
+        // 平台技术服务费10%
+        stationAccountService.lambdaUpdate()
+                .setSql("balance = balance + {0}", platformAmount)
+                .eq(StationAccount::getId, StationAccount.PLATFORM_ACCOUNT_ID)
+                .eq(StationAccount::getStationId, StationAccount.PLATFORM_STATION_ID)
+                .update();
+
+
     }
 
     /**

+ 2 - 9
car-wash-service/src/main/java/com/kym/service/awoara/event/handle/OrderUpdateEventHandler.java

@@ -34,13 +34,9 @@ public class OrderUpdateEventHandler implements AwoaraEventHandler<OrderInfoObje
     @Override
     public void handle(MessageBody<OrderInfoObject> message) {
         log.info(message.toString());
-        log.info("OrderUpdateEventHandler");
-
-        // 获取设备信息 todo 要从topic中获取
-        var productKey = "";
-        var deviceName = "";
-
+        log.info("收到订单更新事件");
         var orderInfo = message.getPayload().getData().getOrder_info();
+        log.info("订单:{},更新信息:{}", orderInfo.getOrder_id(), orderInfo);
 
         // 更新订单信息
         washOrderService.lambdaUpdate()
@@ -55,10 +51,7 @@ public class OrderUpdateEventHandler implements AwoaraEventHandler<OrderInfoObje
                 .set(WashOrder::getOperationRemainTime, orderInfo.getOperation_remain_time())
                 .set(WashOrder::getIdleRemainTime, orderInfo.getIdle_remain_time())
                 .set(WashOrder::getDetail, orderInfo.getDetail().toString())
-                .eq(WashOrder::getProductKey, productKey)
-                .eq(WashOrder::getDeviceName, deviceName)
                 .eq(WashOrder::getOrderId, orderInfo.getOrder_id())
-                .eq(WashOrder::getOrderIdLocal, orderInfo.getOrder_id_local())
                 .update();
 
     }