From b86bca07c2bf3997860d6df3c1e6e9ed7cc0d280 Mon Sep 17 00:00:00 2001
From: zhibing.pu <393733352@qq.com>
Date: 星期日, 28 四月 2024 17:47:48 +0800
Subject: [PATCH] 新增加功能

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java |   50 +++++++++++++++++++++++++++++++++++---------------
 1 files changed, 35 insertions(+), 15 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
index 3337fa0..7fed741 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -776,21 +776,21 @@
         if(orderLogistics.getState() == 1){
             this.pushOrder(orderLogistics);
         }else{
-            //接单后定时任务判断司机是否去接乘客,没有则推送提醒
-            CancleOrder cancleOrder = cancleOrderService.query(orderLogistics.getCompanyId());
-            if(null != cancleOrder){
-                JSONObject object = JSON.parseObject(cancleOrder.getContent());
-                long time = object.getInteger("driverTimeout") * 60000L;
-                new Timer().schedule(new TimerTask() {
-                    @Override
-                    public void run() {
-                        OrderLogistics orderLogistics1 = OrderLogisticsServiceImpl.this.selectById(orderLogistics.getId());
-                        if(orderLogistics1.getState() == 2){
-                            pushUtil.pushDriverTimeOut(1, orderLogistics1.getUserId(), orderLogistics1.getId(), 4);
-                        }
-                    }
-                }, time);
-            }
+//            //接单后定时任务判断司机是否去接乘客,没有则推送提醒
+//            CancleOrder cancleOrder = cancleOrderService.query(orderLogistics.getCompanyId());
+//            if(null != cancleOrder){
+//                JSONObject object = JSON.parseObject(cancleOrder.getContent());
+//                long time = object.getInteger("driverTimeout") * 60000L;
+//                new Timer().schedule(new TimerTask() {
+//                    @Override
+//                    public void run() {
+//                        OrderLogistics orderLogistics1 = OrderLogisticsServiceImpl.this.selectById(orderLogistics.getId());
+//                        if(orderLogistics1.getState() == 2){
+//                            pushUtil.pushDriverTimeOut(1, orderLogistics1.getUserId(), orderLogistics1.getId(), 4);
+//                        }
+//                    }
+//                }, time);
+//            }
         }
     
     
@@ -2561,6 +2561,26 @@
         if(state == 11){
             map.put("state", map.get("oldState"));
         }
+        if(Integer.valueOf(String.valueOf(map.get("state"))) != 8 && Integer.valueOf(String.valueOf(map.get("state"))) != 9){
+            map.put("redPacketMoney", null);
+            map.put("couponMoney", null);
+        }
+        if(Integer.valueOf(String.valueOf(map.get("state"))) == 7){
+            UserActivityDiscount1 query2 = userActivityDiscount1Mapper.query(Integer.valueOf(String.valueOf(map.get("companyId"))));
+            if(null != query2){
+                Integer orderNum=this.selectCount(new EntityWrapper<OrderLogistics>().eq("userId",orderLogistics.getUserId()).eq("activityId",query2.getId()).last(" and to_days(getoffTime) = to_days(now())"));
+                if(query2.getDistance()*1000>orderLogistics.getMileage() && query2.getOrderNum()>orderNum){
+                    Double special = query2.getSpecial();
+                    orderLogistics.setDiscount(special);
+                    Double orderMoney = orderLogistics.getOrderMoney();
+                    double v = new BigDecimal(orderMoney).multiply(new BigDecimal(special / 10)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
+                    if(orderMoney.compareTo(v) > 0){
+                        map.put("discountMoney",orderMoney - v);
+                    }
+                }
+            
+            }
+        }
         Map<String, String> geocode = gdMapGeocodingUtil.geocode(map.get("startLon").toString(), map.get("startLat").toString());
         map.put("startCity", geocode.get("city"));
         geocode = gdMapGeocodingUtil.geocode(map.get("endLon").toString(), map.get("endLat").toString());

--
Gitblit v1.7.1