From 0c41f99c7f1a0d7deeeef23a5b3b890aed32ce63 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期六, 16 八月 2025 09:20:50 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/QianYunTong --- ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TAbnormalOrderCarController.java | 102 ++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 93 insertions(+), 9 deletions(-) diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TAbnormalOrderCarController.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TAbnormalOrderCarController.java index efbe6e9..4183ceb 100644 --- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TAbnormalOrderCarController.java +++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TAbnormalOrderCarController.java @@ -1,5 +1,6 @@ package com.stylefeng.guns.modular.system.controller.specialTrain; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; @@ -10,9 +11,13 @@ import com.stylefeng.guns.core.util.SinataUtil; import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.system.dao.OrderCancelMapper; +import com.stylefeng.guns.modular.system.dao.TCompanyMapper; 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.qianyuntong.OrderUtil; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.*; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.domain.Sort; @@ -35,6 +40,7 @@ * @author fengshuonan * @Date 2020-09-02 17:28:59 */ +@Slf4j @Controller @RequestMapping("/abnormal") public class TAbnormalOrderCarController extends BaseController { @@ -84,8 +90,10 @@ @Autowired private ITSystemNoticeService systemNoticeService; - - + @Autowired + private TCompanyMapper tCompanyMapper; + + /** * 跳转到快车订单首页 */ @@ -117,7 +125,7 @@ Object o2 = item.get("responsibilityType"); if(o2!=null){ if(Integer.valueOf(o2.toString())>2){ - TAbnormalPayOrder tAbnormalPayOrder = tAbnormalPayOrderService.selectOne(new EntityWrapper<TAbnormalPayOrder>().eq("type", 1).eq("orderNum", item.get("orderNum"))); + TAbnormalPayOrder tAbnormalPayOrder = tAbnormalPayOrderService.selectOne(new EntityWrapper<TAbnormalPayOrder>().eq("type", 1).eq("orderNum",tOrderPrivateCarId)); model.addAttribute("money",tAbnormalPayOrder.getPayMoney()); } } @@ -148,7 +156,7 @@ model.addAttribute("show",0); if(o2!=null){ if(Integer.valueOf(o2.toString())>2){ - TAbnormalPayOrder tAbnormalPayOrder = tAbnormalPayOrderService.selectOne(new EntityWrapper<TAbnormalPayOrder>().eq("type", 2).eq("orderNum", item.get("orderNum"))); + TAbnormalPayOrder tAbnormalPayOrder = tAbnormalPayOrderService.selectOne(new EntityWrapper<TAbnormalPayOrder>().eq("type", 2).eq("orderNum",tOrderPrivateCarId)); model.addAttribute("money",tAbnormalPayOrder.getPayMoney()); } } @@ -168,7 +176,7 @@ Object o2 = item.get("responsibilityType"); if(o2!=null){ if(Integer.valueOf(o2.toString())>2){ - TAbnormalPayOrder tAbnormalPayOrder = tAbnormalPayOrderService.selectOne(new EntityWrapper<TAbnormalPayOrder>().eq("type", 3).eq("orderNum", item.get("orderNum"))); + TAbnormalPayOrder tAbnormalPayOrder = tAbnormalPayOrderService.selectOne(new EntityWrapper<TAbnormalPayOrder>().eq("type", 3).eq("orderNum",tOrderPrivateCarId)); model.addAttribute("money",tAbnormalPayOrder.getPayMoney()); } } @@ -679,7 +687,7 @@ public Object save(Integer responsibilityTypeVal,String remark,String money,Integer type,String orderNum) { Integer userId =null; if(type==1){ - TOrderPrivateCar tOrderPrivateCar = tOrderPrivateCarService.selectOne(new EntityWrapper<TOrderPrivateCar>().eq("orderNum",orderNum)); + TOrderPrivateCar tOrderPrivateCar = tOrderPrivateCarService.selectOne(new EntityWrapper<TOrderPrivateCar>().eq("id",orderNum)); userId = tOrderPrivateCar.getUserId(); tOrderPrivateCar.setResponsibilityType(responsibilityTypeVal); tOrderPrivateCar.setAbnormalStatus(2); @@ -691,6 +699,7 @@ // 追偿订单记录表 TAbnormalPayOrder tAbnormalPayOrder = new TAbnormalPayOrder(); tAbnormalPayOrder.setOrderNum(orderNum); + tAbnormalPayOrder.setOrderNo(tOrderPrivateCar.getOrderNum()); tAbnormalPayOrder.setType(1); tAbnormalPayOrder.setUserId(tOrderPrivateCar.getUserId()); tAbnormalPayOrder.setPayStatus(1); @@ -709,10 +718,80 @@ } tOrderPrivateCar.setAbnormalRemark(remark); tOrderPrivateCarService.updateById(tOrderPrivateCar); - } + //平台全责和司机全责需要调起备付金支付 + if(9 == tOrderPrivateCar.getState()){ + TDriver driver = tDriverService.selectById(tOrderPrivateCar.getDriverId()); + TCompany company = tCompanyMapper.selectById(driver.getCompanyId()); + TUser userInfo = userService.selectById(tOrderPrivateCar.getUserId()); + if(null == tOrderPrivateCar.getIsCreated()){ + //先调中台创建订单 + CreateOrderRequest createOrderRequest = new CreateOrderRequest(); + createOrderRequest.setTreatShopId(driver.getEmpId().toString()); + createOrderRequest.setField1("{\"profitSharing\":\"1\",\"isPromote\":\"" + (tOrderPrivateCar.getPromotion() == 2 ? 1 : 0) + "\"}"); + createOrderRequest.setCharge(tOrderPrivateCar.getOrderMoney()); + createOrderRequest.setOrderNo("PR" + tOrderPrivateCar.getId()); + createOrderRequest.setOrderId(tOrderPrivateCar.getTravelId()); + createOrderRequest.setCustomerId(userInfo.getOnconUUID()); + OrderInfo orderInfo = com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil.tradeOrderCreate(createOrderRequest); + tOrderPrivateCar.setIsCreated(1); + tOrderPrivateCar.setTravelId(orderInfo.getOrderId()); + tOrderPrivateCarService.updateById(tOrderPrivateCar); + } + //使用备付金进行支付订单 + TradePayOffData tradePayOffData = new TradePayOffData(); + tradePayOffData.setPartnerPayId(tOrderPrivateCar.getTravelId()); + tradePayOffData.setTotalFee(tOrderPrivateCar.getOrderMoney().multiply(new BigDecimal(100)).toString()); + tradePayOffData.setOrderDesc("完成订单"); + PayInfo payInfo = com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil.tradePayOff(tradePayOffData); + String retCode = payInfo.getRetCode(); + if (!"000000".equals(retCode)) { + log.error("备付金支付失败:{}", payInfo.getRetMsg()); + return "备付金支付失败:" + payInfo.getRetMsg(); + } + PayInfoData data = payInfo.getData(); + String status = data.getStatus(); + if ("3".equals(status)) { + log.error("备付金支付失败:{}", payInfo.getRetMsg()); + return "备付金支付失败:" + payInfo.getRetMsg(); + } + if("0".equals(status)){ + //查询支付信息 + GetPaymentInfoDataRequest getPaymentInfoDataRequest = new GetPaymentInfoDataRequest(); + getPaymentInfoDataRequest.setPartnerPayId(tOrderPrivateCar.getTravelId()); + GetPaymentInfo getPaymentInfo = com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil.paymentInfo(getPaymentInfoDataRequest); + status = getPaymentInfo.getStatus(); + } + PayInfoData payInfoData = payInfo.getData(); + PaymentInfo paymentInfo = payInfoData.getPaymentInfos().get(0); + if(!"0".equals(status)) { + //支付成功,通知三方 + PaymentOrderRequest paymentOrderRequest = new PaymentOrderRequest(); + paymentOrderRequest.setPayItemId(paymentInfo.getPayItemId()); + paymentOrderRequest.setPaymentInfo(JSON.toJSONString(payInfoData.getPaymentInfos())); + paymentOrderRequest.setOrderId(tOrderPrivateCar.getTravelId()); + paymentOrderRequest.setCharge(tOrderPrivateCar.getOrderMoney()); + paymentOrderRequest.setPayTime(data.getPayTime()); + paymentOrderRequest.setPaymentSerialNumber(payInfoData.getPayId()); + OrderInfo orderInfo1 = OrderUtil.paymentOrder(paymentOrderRequest); + //中台修改订单状态 + ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest(); + request1.setOrderId(tOrderPrivateCar.getTravelId()); + request1.setStatus(9); + if (null != tOrderPrivateCar.getDriverId()) { + request1.setDriverId(driver.getEmpId().toString()); + request1.setSupplierShopId(company.getEnterCode()); + } + if (2 == tOrderPrivateCar.getPromotion()) { + TDriver driver2 = tDriverService.selectById(tOrderPrivateCar.getPromotionDriverId()); + request1.setPromoterId(driver2.getEmpId().toString()); + } + OrderUtil.modifyTravelItinerary(request1); + } + } + } if(type==2){ - TOrderCrossCity tOrderCrossCity = tOrderCrossCityService.selectOne(new EntityWrapper<TOrderCrossCity>().eq("orderNum", orderNum)); + TOrderCrossCity tOrderCrossCity = tOrderCrossCityService.selectOne(new EntityWrapper<TOrderCrossCity>().eq("id", orderNum)); userId = tOrderCrossCity.getUserId(); tOrderCrossCity.setResponsibilityType(responsibilityTypeVal); tOrderCrossCity.setAbnormalStatus(2); @@ -724,6 +803,8 @@ // 追偿订单记录表 TAbnormalPayOrder tAbnormalPayOrder = new TAbnormalPayOrder(); tAbnormalPayOrder.setOrderNum(orderNum); + + tAbnormalPayOrder.setOrderNo(tOrderCrossCity.getOrderNum()); tAbnormalPayOrder.setType(2); tAbnormalPayOrder.setUserId(tOrderCrossCity.getUserId()); tAbnormalPayOrder.setPayStatus(1); @@ -744,7 +825,7 @@ } if(type==3){ - TOrderTaxi tOrderTaxi = tOrderTaxiService.selectOne(new EntityWrapper<TOrderTaxi>().eq("orderNum", orderNum)); + TOrderTaxi tOrderTaxi = tOrderTaxiService.selectOne(new EntityWrapper<TOrderTaxi>().eq("id", orderNum)); userId = tOrderTaxi.getUserId(); tOrderTaxi.setResponsibilityType(responsibilityTypeVal); tOrderTaxi.setAbnormalStatus(2); @@ -756,6 +837,7 @@ // 追偿订单记录表 TAbnormalPayOrder tAbnormalPayOrder = new TAbnormalPayOrder(); tAbnormalPayOrder.setOrderNum(orderNum); + tAbnormalPayOrder.setOrderNo(tOrderTaxi.getOrderNum()); tAbnormalPayOrder.setType(3); tAbnormalPayOrder.setUserId(tOrderTaxi.getUserId()); tAbnormalPayOrder.setPayStatus(1); @@ -781,11 +863,13 @@ tSystemNotice.setType(2); tSystemNotice.setNoticeType(1); tSystemNotice.setUserType(1); + tSystemNotice.setUserId(userId); tSystemNotice.setContent("您提交的申诉平台已处理"); tSystemNotice.setRead(1); tSystemNotice.setInsertTime(new Date()); systemNoticeService.insert(tSystemNotice); return SUCCESS_TIP; + } -- Gitblit v1.7.1