| | |
| | | String app = type == 1 ? "APP" : "JSAPI"; |
| | | resultUtil = payMoneyUtil.weixinpay("完成订单", "", orderId + "_3_" + UUIDUtil.getRandomCode(5), orderMoney.toString(), "/base/wxPayOrderTaxi", app, userInfo.getAppletsOpenId()); |
| | | |
| | | //创建订单并拉起支付(这里不需要创建行程单,由三方处理) |
| | | Driver driver = driverService.selectById(orderCrossCity.getDriverId()); |
| | | // if(null == orderCrossCity.getIsCreated() || 0 == orderCrossCity.getIsCreated()){ |
| | | // //调用中台创建订单及拉起支付接口 |
| | | // TradeOrderCreateData tradeOrderCreateData = new TradeOrderCreateData(); |
| | | // tradeOrderCreateData.setTreatShopId(driver.getEmpId().toString()); |
| | | // //追缴单不要分账 |
| | | // if(0 == orderCrossCity.getRecoveryOrder()){ |
| | | // tradeOrderCreateData.setField1("{\"profitSharing\":\"1\",\"isCompensate\":\"0\",\"isPromote\":\"" + (orderCrossCity.getPromotion() == 2 ? 1 : 0) + "\"}"); |
| | | // }else{ |
| | | // tradeOrderCreateData.setField1("{\"profitSharing\":\"0\",\"isCompensate\":\"1\",\"isPromote\":\"0\"}"); |
| | | // } |
| | | // tradeOrderCreateData.setCharge(new BigDecimal(orderMoney).setScale(2, RoundingMode.HALF_EVEN)); |
| | | // tradeOrderCreateData.setOrderNo("CC" + orderCrossCity.getId()); |
| | | // tradeOrderCreateData.setCustomerId(userInfo.getOnconUUID()); |
| | | // tradeOrderCreateData.setPartnerPayId(orderCrossCity.getTravelId()); |
| | | // tradeOrderCreateData.setTotalFee(Double.valueOf(orderMoney * 100).intValue() + ""); |
| | | // tradeOrderCreateData.setOrderDesc("完成订单"); |
| | | // tradeOrderCreateData.setRetUrl(path); |
| | | // tradeOrderCreateData.setClientIp(ip); |
| | | // tradeOrderCreateData.setServiceType(3); |
| | | // if(null != orderCrossCity.getPromotionDriverId()){ |
| | | // Driver driver1 = driverService.selectById(orderCrossCity.getPromotionDriverId()); |
| | | // Company company = companyService.selectById(driver1.getCompanyId()); |
| | | // tradeOrderCreateData.setPromoterId(driver1.getEmpId().toString()); |
| | | // tradeOrderCreateData.setSupplierShopId(company.getEnterCode()); |
| | | // } |
| | | // |
| | | // List<GoodsInfoRequest> goodsInfo = new ArrayList<>(); |
| | | // GoodsInfoRequest goodsInfoRequest = new GoodsInfoRequest(); |
| | | // goodsInfoRequest.setSubOpenId(appletsOpenId); |
| | | // if(0 == orderCrossCity.getRecoveryOrder()){ |
| | | // goodsInfoRequest.setProfitSharing("1"); |
| | | // |
| | | // }else{ |
| | | // goodsInfoRequest.setProfitSharing("0"); |
| | | // goodsInfoRequest.setSettleDate(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"))); |
| | | // } |
| | | // goodsInfo.add(goodsInfoRequest); |
| | | // tradeOrderCreateData.setGoodsInfo(goodsInfo); |
| | | // TradeOrderCreate tradeOrderCreate = OrderUtil.tradeOrderCreate1(tradeOrderCreateData, orderCrossCity.getRecoveryOrder()); |
| | | // PayInfo payInfo = tradeOrderCreate.getPayInfo(); |
| | | // if(!"000000".equals(payInfo.getRetCode())){ |
| | | // return ResultUtil.error(payInfo.getRetMsg()); |
| | | // } |
| | | // orderCrossCity.setIsCreated(1); |
| | | // orderCrossCity.setTravelId(tradeOrderCreate.getOrderInfo().getOrderId()); |
| | | // resultUtil = ResultUtil.success(payInfo.getData().getRedirectUrl()); |
| | | // }else{ |
| | | // //拉起支付 |
| | | // List<GoodsInfoRequest> goodsInfo = new ArrayList<>(); |
| | | // GoodsInfoRequest goodsInfoRequest = new GoodsInfoRequest(); |
| | | // goodsInfoRequest.setSubOpenId(appletsOpenId); |
| | | // if(0 == orderCrossCity.getRecoveryOrder()){ |
| | | // goodsInfoRequest.setProfitSharing("1"); |
| | | // }else{ |
| | | // goodsInfoRequest.setProfitSharing("0"); |
| | | // goodsInfoRequest.setSettleDate(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"))); |
| | | // } |
| | | // goodsInfo.add(goodsInfoRequest); |
| | | // resultUtil = ResultUtil.success(payInfo.getData().getRedirectUrl()); |
| | | // } |
| | | this.updateById(orderCrossCity); |
| | | paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, "", 1);//添加预支付数据 |
| | | |
| | | //创建定时任务查询订单支付状态 |
| | | ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); |
| | | threadPoolExecutor.execute(()->{ |
| | | try { |
| | | int num = 1; |
| | | int wait = 0; |
| | | while (num <= 13) { |
| | | int min = 5000; |
| | | wait += (min * num); |
| | | OrderCrossCity orderCrossCity1 = this.selectById(orderCrossCity.getId()); |
| | | if (orderCrossCity1.getState() != 7) { |
| | | break; |
| | | } |
| | | // GetTravelItineraryListRequest request = new GetTravelItineraryListRequest(); |
| | | // request.setCustomerId(userInfo.getOnconUUID()); |
| | | // request.setOrderNo("CC" + orderCrossCity1.getId()); |
| | | // request.setDriverId(driver.getEmpId().toString()); |
| | | // ListPage<List<TravelItinerary>> travelItineraryList = OrderUtil.getTravelItineraryList(request); |
| | | // TravelItinerary travelItinerary = travelItineraryList.getList().get(0); |
| | | // if(travelItinerary.getStatus() != 7 || Arrays.asList(3, 11).contains(travelItinerary.getOrderStatus())){ |
| | | // GetPaymentInfoDataRequest getPaymentInfoDataRequest1 = new GetPaymentInfoDataRequest(); |
| | | // getPaymentInfoDataRequest1.setPartnerPayId(orderCrossCity.getTravelId()); |
| | | // GetPaymentInfo getPaymentInfo1 = OrderUtil.paymentInfo(getPaymentInfoDataRequest1); |
| | | // payOrderCrossCityCallback(orderCrossCity1.getId(), getPaymentInfo1.getPayId(), 1, null); |
| | | // break; |
| | | // } |
| | | Thread.sleep(wait); |
| | | num++; |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | }finally { |
| | | threadPoolExecutor.shutdown(); |
| | | } |
| | | |
| | | }); |
| | | } |
| | | if (payType == 2) {//支付宝支付 |
| | | if (orderMoney == 0) { |