From 656ac293601d6da08d25e892a79604fe3edcd086 Mon Sep 17 00:00:00 2001 From: zhibing.pu <393733352@qq.com> Date: 星期四, 01 八月 2024 16:04:46 +0800 Subject: [PATCH] 修改2.0 bug --- DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java | 56 ++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 44 insertions(+), 12 deletions(-) diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java index 8cbe308..1c6223e 100644 --- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java +++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java @@ -2,6 +2,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.common.constant.state.Order; import com.stylefeng.guns.core.util.DateUtil; @@ -15,10 +16,7 @@ import com.stylefeng.guns.modular.system.dao.PhoneMapper; import com.stylefeng.guns.modular.system.dao.RegionMapper; import com.stylefeng.guns.modular.system.dao.SysReformistMapper; -import com.stylefeng.guns.modular.system.model.BankCard; -import com.stylefeng.guns.modular.system.model.Driver; -import com.stylefeng.guns.modular.system.model.OrderPosition; -import com.stylefeng.guns.modular.system.model.Region; +import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.*; import com.stylefeng.guns.modular.system.util.GoogleMap.DistancematrixVo; @@ -93,6 +91,18 @@ @Autowired private IBankCardService bankCardService; + + @Autowired + private ICancleOrderService cancleOrderService; + + @Autowired + private ISettlementDetailService settlementDetailService; + + @Autowired + private ISettlementRecordService settlementRecordService; + + @Resource + private IBalanceUsageRecordService balanceUsageRecordService; @@ -123,7 +133,7 @@ // List<Map<String, Object>> list2 = orderCrossCityService.queryOrderList(state, uid); // datas.addAll(list2); //小件物流 - List<Map<String, Object>> list3 = orderLogisticsService.queryOrderList(uid, language); + List<Map<String, Object>> list3 = orderLogisticsService.queryOrderList(state, uid, language); datas.addAll(list3); //分页 @@ -163,7 +173,7 @@ List<Map<String, Object>> list2 = orderCrossCityService.queryOrderList(language, state, uid); datas.addAll(list2); }else{//小件物流 - List<Map<String, Object>> list3 = orderLogisticsService.queryOrderList(uid, language); + List<Map<String, Object>> list3 = orderLogisticsService.queryOrderList(state, uid, language); datas.addAll(list3); } @@ -199,12 +209,30 @@ // datas.addAll(list); //专车 List<Map<String, Object>> list1 = orderPrivateCarService.queryMyAllOrder(state, uid, language); + for (Map<String, Object> map : list1) { + Integer id = Integer.valueOf(map.get("id").toString()); + map.put("settleAccounts", 0); + SettlementDetail settlementDetail = settlementDetailService.selectOne(new EntityWrapper<SettlementDetail>().eq("orderId", id).eq("orderType", 1)); + if(null != settlementDetail){ + SettlementRecord settlementRecord = settlementRecordService.selectById(settlementDetail.getSettlementRecordId()); + map.put("settleAccounts", null == settlementRecord || settlementRecord.getPaymentStatus() == 1 ? 0 : 1); + } + } datas.addAll(list1); //跨城 // List<Map<String, Object>> list2 = orderCrossCityService.queryMyAllOrder(state, uid); // datas.addAll(list2); //小件物流 List<Map<String, Object>> list3 = orderLogisticsService.queryMyAllOrder(state, uid, language); + for (Map<String, Object> map : list3) { + Integer id = Integer.valueOf(map.get("id").toString()); + map.put("settleAccounts", 0); + SettlementDetail settlementDetail = settlementDetailService.selectOne(new EntityWrapper<SettlementDetail>().eq("orderId", id).eq("orderType", 4)); + if(null != settlementDetail){ + SettlementRecord settlementRecord = settlementRecordService.selectById(settlementDetail.getSettlementRecordId()); + map.put("settleAccounts", null == settlementRecord || settlementRecord.getPaymentStatus() == 1 ? 0 : 1); + } + } datas.addAll(list3); List<OrderListWarpper> orderListWarpper = OrderListWarpper.getOrderListWarpper(datas); @@ -700,7 +728,7 @@ case 3://城际 return orderCrossCityService.calculateMileage(orderPosition); case 4:// - break; + return orderLogisticsService.calculateMileage(orderPosition.getOrderId(), orderPosition.getLon(), orderPosition.getLat()); case 5: break; case 6: @@ -1009,8 +1037,8 @@ new Thread(new Runnable() { @Override public void run() { - pushUtil.pushOrderState(1, finalUserId, orderId, orderType, finalState); - pushUtil.pushOrderState(2, finalDriverId, orderId, orderType, finalState); + pushUtil.pushOrderState(1, finalUserId, orderId, orderType, finalState, 0, ""); + pushUtil.pushOrderState(2, finalDriverId, orderId, orderType, finalState, 0, ""); } }).start(); return ResultUtil.success(); @@ -1056,7 +1084,7 @@ for(OrderPrivateCar order : orderList){ if(order.getSmsTime()==null ){ - if(order.getGetoffTime().getTime()+24*60*60*1000L<day.getTime()){ + if(null != order.getGetoffTime() && order.getGetoffTime().getTime()+24*60*60*1000L<day.getTime()){ order.setSmsNumber(order.getSmsNumber()+1); order.setSmsTime(day); //发送短信 @@ -1175,14 +1203,18 @@ } if(payType == 3){//余额支付 driver.setBalance(driver.getBalance() - money); - if(driver.getLaveBusinessMoney().compareTo(money) < 0){ - double b = money - driver.getLaveBusinessMoney(); + Double laveBusinessMoney = driver.getLaveBusinessMoney(); + if(laveBusinessMoney.compareTo(money) < 0){ + double b = money - laveBusinessMoney; driver.setLaveBusinessMoney(0D); driver.setLaveActivityMoney(driver.getLaveActivityMoney() - b); driverService.updateById(driver); + balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 1, b, orderType == 1 ? 1 : 2); + balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 2, laveBusinessMoney, orderType == 1 ? 1 : 2); }else{ driver.setLaveBusinessMoney(driver.getLaveBusinessMoney() - money); driverService.updateById(driver); + balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 2, money, orderType == 1 ? 1 : 2); } if(orderType == 1){//专车 -- Gitblit v1.7.1