From 01fb3942136929b10d1fd704330f9d400b38bfb0 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 23 十月 2025 18:09:19 +0800
Subject: [PATCH] 修改bug
---
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/rideCommentController.java | 61 +++++++++++++++++++++++++++++-
1 files changed, 59 insertions(+), 2 deletions(-)
diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/rideCommentController.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/rideCommentController.java
index 2a46d13..5f1ac22 100644
--- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/rideCommentController.java
+++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/rideCommentController.java
@@ -93,6 +93,9 @@
@Autowired
private ICompanyService companyService;
+
+ @Autowired
+ private IOrderInvitationService orderInvitationService;
@@ -875,6 +878,9 @@
//用户取消退款
public void userCancelTuik(OrderRide orderRide){
+ UserInfo userInfo=userInfoService.selectById(orderRide.getUserId());
+ //查询三方判断订单是否完成支付
+ getPaymentStatus(userInfo, orderRide);
if(orderRide.getState()==2){//用户已经支付了订单但司机没有接单
orderRide.setTuiMoney(orderRide.getMoney());
}
@@ -883,7 +889,6 @@
String finNum=OrdersUtil.getOrderNoForPrefix("fin");
//todo 退款金额大于0需要退款
if(orderRide.getPayType()==1){//余额
- UserInfo userInfo=userInfoService.selectById(orderRide.getUserId());
userInfo.setBalance(userInfo.getBalance()+orderRide.getTuiMoney());
userInfoService.updateById(userInfo);
}else if(orderRide.getPayType()==2){
@@ -894,7 +899,6 @@
//中台订单退款操作
if(ToolUtil.isNotEmpty(orderRide.getZttravelId())){
- UserInfo userInfo = userInfoService.selectById(orderRide.getUserId());
TradeOrderRefundRequest request = new TradeOrderRefundRequest();
request.setPartnerPayId(orderRide.getZttravelId());
request.setPayId(financial.getLsType());
@@ -953,6 +957,51 @@
orderRide.setState(6);//取消状态
orderRideService.updateById(orderRide);
}
+
+
+
+ public void getPaymentStatus(UserInfo userInfo, OrderRide orderRide1){
+ GetTravelItineraryListRequest request1 = new GetTravelItineraryListRequest();
+ request1.setCustomerId(userInfo.getOnconUUID());
+ request1.setOrderNo("SF" + orderRide1.getId());
+ ListPage<List<TravelItinerary>> travelItineraryList = OrderUtil.getTravelItineraryList(request1);
+ TravelItinerary travelItinerary = travelItineraryList.getList().get(0);
+ if(travelItinerary.getStatus() != 7 || Arrays.asList(3, 11).contains(travelItinerary.getOrderStatus())){
+ GetPaymentInfoDataRequest getPaymentInfoDataRequest1 = new GetPaymentInfoDataRequest();
+ getPaymentInfoDataRequest1.setPartnerPayId(orderRide1.getZttravelId());
+ GetPaymentInfo getPaymentInfo1 = OrderUtil.paymentInfo(getPaymentInfoDataRequest1);
+
+ String trade_no = getPaymentInfo1.getPayId();
+ Financial financial = new Financial();
+ financial.setType(1);//类型 1=收入 2=支出
+ financial.setPayType("2");//支付类型 1=余额 2=微信 3=支付宝
+ financial.setMoney(orderRide1.getMoney());//支付金额
+ financial.setOrderNum(orderRide1.getOrderNum());//我们本地的订单号
+ financial.setLsType(trade_no);//流水号
+ financial.setAddTime(new Date());
+ financial.setTradeStatus("success");
+ //顺风车支付
+ //修改订单表中的订单流水和支付方式
+ orderRide1.setOutNum(financial.getLsType());//流水
+ orderRide1.setPayTime(new Date());
+ orderRide1.setPayType(2);
+ orderRide1.setState(2);
+ financial.setPwType(8);//顺风车
+ financial.setUserId(orderRide1.getUserId());
+ financial.setLx(1);//1=用户 2=司机
+ financial.setOrderType(4);//顺风车
+ financialService.insert(financial);
+ orderRideService.updateById(orderRide1);
+ /*添加系统消息*/
+ try {
+ systemNoticeService.addSystemNotice(1, "您成功支付从" + orderRide1.getStartName() + "到" + orderRide1.getEndName() + "的顺风车订单", orderRide1.getUserId(), 1);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+ }
+
+
/**
* 司机行程取消
* @param orderId
@@ -1343,6 +1392,11 @@
OrderRide orderRide=orderRideService.selectOne(new EntityWrapper<OrderRide>().eq("userId",userId)
.eq("state",2));
if(orderRide!=null){
+ OrderInvitation orderInvitation = new OrderInvitation();
+ orderInvitation.setOrderRideId(orderRide.getId());
+ orderInvitation.setOrderTravelId(orderTravel.getId());
+ orderInvitation.setInsertTime(new Date());
+ orderInvitationService.insert(orderInvitation);
String message="您发布的"+DateUtil.getDateToString(orderTravel.getStartTime(),"MM月dd日")+"的行程有乘客邀请您同行";
/*添加系统消息*/
try {
@@ -1357,6 +1411,8 @@
}
return ResultUtil.error("异常");
}
+
+
/**
* 用户订单匹配列表页面,用户订单去匹配司机的行程
* @param type 搜索条件:1默认排序(根据线路、时间,人数综合匹配排序721),2时间最早,3距离最近
@@ -1391,6 +1447,7 @@
orderRideVo.setLon(orderRide.getStartLon());
orderRideVo.setLat(orderRide.getStartLat());
orderRideVo.setNum(orderRide.getNum());
+ orderRideVo.setId(orderId);
orderRideVo.setType(type+1);//搜索条件:1默认排序(根据线路、时间,人数综合匹配排序721),2时间最早,3距离最近
List<OrderRideVo> orderRides=orderTravelService.getOrderTravel(orderRideVo);
return ResultUtil.success(orderRides);
--
Gitblit v1.7.1