From 2c5957854caea8b0fc0f7c957a946979e2e5554a Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 05 九月 2025 18:05:50 +0800 Subject: [PATCH] 修改bug --- UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java | 34 ++++++++++++++++++++++++++-------- 1 files changed, 26 insertions(+), 8 deletions(-) diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java index f55402a..93f415a 100644 --- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java +++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java @@ -798,7 +798,9 @@ userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); OpenCity openCity = openCityService.openCity1(orderCrossCity.getStartLon().toString(), orderCrossCity.getStartLat().toString()); SysIntegral query1 = sysIntegralMapper.query(openCity.getId()); - userInfo.setIntegral(userInfo.getIntegral() + (orderMoney.intValue() * query1.getIntegral()));//积分 + if(null != query1){ + userInfo.setIntegral(userInfo.getIntegral() + (orderMoney.intValue() * query1.getIntegral()));//积分 + } //添加交易明细 transactionDetailsService.saveData(uid, "跨城出行订单", orderMoney, 2, 1, 1, 3, orderId); @@ -1446,9 +1448,8 @@ if(Integer.valueOf(String.valueOf(map.get("state"))) ==7 && (map.get("responsibilityType")==null || Integer.valueOf(String.valueOf(map.get("responsibilityType")))<4)){ map.put("appealButton", 1); } - if(map.get("abnormalIntro")!=null){ - map.put("appealStatus", 1); - } + //跨城不需要申诉 + map.put("appealStatus", 0); if(map.get("travelMode")!=null &&map.get("travelMode").toString().equals("2") ){ map.put("zwNum", 1); }else { @@ -1479,6 +1480,15 @@ BaseWarpper baseWarpper = new BaseWarpper(); if (null == orderCrossCity) { return ResultUtil.error("获取数据失败,订单信息有误"); + } + if (orderCrossCity.getState() == 5) { + return ResultUtil.error("订单已开始服务,不能取消订单"); + } + if (orderCrossCity.getState() == 6 || orderCrossCity.getState() == 8 || orderCrossCity.getState() == 9) { + return ResultUtil.error("订单已完成,不能取消订单"); + } + if (orderCrossCity.getState() == 10) { + return ResultUtil.error("订单已被取消,不能重复操作"); } OpenCity openCity = openCityService.openCity1(orderCrossCity.getStartLon().toString(), orderCrossCity.getStartLat().toString()); double amount = 0; @@ -1516,7 +1526,7 @@ return ResultUtil.error("取消订单失败,订单信息有误", ""); } if (orderCrossCity.getState() != 12) { - return ResultUtil.error("取消订单失败,不合法的操作", ""); + return ResultUtil.error("订单已取消,请刷新页面", ""); } OrderCancel orderCancel = null; if (null == cancleId) { @@ -1978,7 +1988,7 @@ return ResultUtil.error("取消订单失败,订单信息有误"); } if (orderCrossCity.getState() >= 5 && orderCrossCity.getState() != 7 && orderCrossCity.getState() != 11) { - return ResultUtil.error("取消订单失败,不合法的操作"); + return ResultUtil.error("订单已取消,请刷新页面"); } //还原座位 @@ -2459,6 +2469,14 @@ if (state != 1) { //关闭其他推送线程 Set<String> keySet = threadMap.keySet(); + datas.forEach(e->{ + threadMap.get(orderId + "_1"); + + + }); + + + for (String key : keySet) { if (!key.equals(orderId + "_1")) { Thread thread1 = threadMap.get(key);//中断线程 @@ -2509,7 +2527,7 @@ //所有推送完后的处理 Boolean b = pushEndMap.get(orderPrivateCar.getCrossCityOrderId()); if (i == querys.size() + 15 && state == 1 && (null != b && !b.booleanValue())) { - pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1); + pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, 1); OrderPrivateCarServiceImpl.orderIds.remove(orderPrivateCar.getId()); pushEndMap.put(orderPrivateCar.getCrossCityOrderId(), Boolean.TRUE);//推送后添加标识 break; @@ -2579,7 +2597,7 @@ //所有推送完后的处理 Boolean b = pushEndMap.get(orderTaxi.getCrossCityOrderId()); if (i == querys.size() + 15 && state == 1 && (null != b && !b.booleanValue())) { - pushUtil.pushEndPush(1, orderTaxi.getUserId(), orderTaxi.getId(), 2); + pushUtil.pushEndPush(1, orderTaxi.getUserId(), orderTaxi.getId(), 2, 1); OrderTaxiServiceImpl.orderIds.remove(orderTaxi.getId()); pushEndMap.put(orderTaxi.getCrossCityOrderId(), Boolean.TRUE);//推送后添加标识 } -- Gitblit v1.7.1