| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | * @author fengshuonan |
| | | * @Date 2020-09-02 17:28:59 |
| | | */ |
| | | @Slf4j |
| | | @Controller |
| | | @RequestMapping("/abnormal") |
| | | public class TAbnormalOrderCarController extends BaseController { |
| | |
| | | |
| | | @Autowired |
| | | private TAbnormalPayOrderService tAbnormalPayOrderService; |
| | | |
| | | |
| | | |
| | | |
| | | @Autowired |
| | | private ITSystemNoticeService systemNoticeService; |
| | | @Autowired |
| | | private TCompanyMapper tCompanyMapper; |
| | | |
| | | |
| | | /** |
| | | * 跳转到快车订单首页 |
| | | */ |
| | |
| | | @RequestMapping(value = "/save") |
| | | @ResponseBody |
| | | 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); |
| | | if(responsibilityTypeVal>3){ |
| | |
| | | // 追偿订单记录表 |
| | | TAbnormalPayOrder tAbnormalPayOrder = new TAbnormalPayOrder(); |
| | | tAbnormalPayOrder.setOrderNum(orderNum); |
| | | tAbnormalPayOrder.setOrderNo(tOrderPrivateCar.getOrderNum()); |
| | | tAbnormalPayOrder.setType(1); |
| | | tAbnormalPayOrder.setUserId(tOrderPrivateCar.getUserId()); |
| | | tAbnormalPayOrder.setPayStatus(1); |
| | |
| | | } |
| | | 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); |
| | | if(responsibilityTypeVal>3) { |
| | |
| | | // 追偿订单记录表 |
| | | TAbnormalPayOrder tAbnormalPayOrder = new TAbnormalPayOrder(); |
| | | tAbnormalPayOrder.setOrderNum(orderNum); |
| | | |
| | | tAbnormalPayOrder.setOrderNo(tOrderCrossCity.getOrderNum()); |
| | | tAbnormalPayOrder.setType(2); |
| | | tAbnormalPayOrder.setUserId(tOrderCrossCity.getUserId()); |
| | | tAbnormalPayOrder.setPayStatus(1); |
| | |
| | | |
| | | } |
| | | 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); |
| | | if(responsibilityTypeVal>3) { |
| | |
| | | // 追偿订单记录表 |
| | | TAbnormalPayOrder tAbnormalPayOrder = new TAbnormalPayOrder(); |
| | | tAbnormalPayOrder.setOrderNum(orderNum); |
| | | tAbnormalPayOrder.setOrderNo(tOrderTaxi.getOrderNum()); |
| | | tAbnormalPayOrder.setType(3); |
| | | tAbnormalPayOrder.setUserId(tOrderTaxi.getUserId()); |
| | | tAbnormalPayOrder.setPayStatus(1); |
| | |
| | | tOrderTaxi.setAbnormalRemark(remark); |
| | | tOrderTaxiService.updateById(tOrderTaxi); |
| | | } |
| | | |
| | | |
| | | TSystemNotice tSystemNotice = new TSystemNotice(); |
| | | 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; |
| | | |
| | | } |
| | | |
| | | |