| | |
| | | if(order.getPayType()==3){ |
| | | // 免密查询 如果成功则调用结算 |
| | | CreditOrderQueryDto dto = new CreditOrderQueryDto(); |
| | | dto.setBusinessOrderId(OrderCodeUtil.getOrderCode("MMZF")); |
| | | dto.setBusinessOrderId(order.getBusinessOrderId()); |
| | | dto.setAuthOrderId(order.getAuthOrderId()); |
| | | dto.setPayType("13"); |
| | | R<CreditOrderQueryVo> creditOrderQueryVoR = xpPayFrontClient.queryCreditOrder(dto); |
| | |
| | | |
| | | ArrayList<XpInvoiceVo> xpInvoiceVoList = new ArrayList<>(list.size()); |
| | | |
| | | R<List<XpVehicle>> r = xpVehicleClient.listByIds(list.stream().map(XpOrder::getVehicleId).collect(Collectors.toList())); |
| | | List<XpVehicle> vehicleList = r.getData(); |
| | | |
| | | // 数据组装 |
| | | for (XpOrder xpOrder : list) { |
| | | XpInvoiceVo xpInvoiceVo = new XpInvoiceVo(); |
| | | xpInvoiceVo.setUid(xpOrder.getAppUserId().toString()); |
| | | xpInvoiceVo.setOrderNo(xpOrder.getOrderNumber()); |
| | | xpInvoiceVo.setOrderTotalAmount(xpOrder.getOrderMoney()); |
| | | |
| | | BigDecimal orderMoney = xpOrder.getOrderMoney() == null ? BigDecimal.ZERO : xpOrder.getOrderMoney(); |
| | | XpInvoiceVo.GoodsDetail goodsDetail = new XpInvoiceVo.GoodsDetail(); |
| | | goodsDetail.setProductName("Robotaxi出行服务"); |
| | | goodsDetail.setProductCode(null); |
| | | goodsDetail.setProductSpecCode("XE2000398"); |
| | | goodsDetail.setProductSpec(null); |
| | | goodsDetail.setProductUnit("次"); |
| | | goodsDetail.setQuantity(1); |
| | | goodsDetail.setUnitPrice(orderMoney); |
| | | goodsDetail.setInTaxAmount(orderMoney); |
| | | goodsDetail.setTaxRate(null); |
| | | goodsDetail.setTaxAmount(null); |
| | | goodsDetail.setExTaxAmount(null); |
| | | goodsDetail.setItemId(xpOrder.getOrderNumber()); |
| | | goodsDetail.setCouponAmount(xpOrder.getCouponMoney()); |
| | | goodsDetail.setCompanyCode("8000"); |
| | | xpInvoiceVo.setGoodsDetail(JSON.toJSONString(goodsDetail)); |
| | | |
| | | xpInvoiceVo.setOrderTotalAmount(xpOrder.getPayMoney()); |
| | | xpInvoiceVo.setOrderBusAmount(xpOrder.getOrderMoney()); |
| | | |
| | | xpInvoiceVo.setOrderDiscountAmount(xpOrder.getCouponMoney()); |
| | | xpInvoiceVo.setOrderFinishTime(xpOrder.getTripEnd()!=null?String.valueOf(xpOrder.getTripEnd()):""); |
| | | |
| | | |
| | | JSONObject extData = new JSONObject(); |
| | | extData.put("companyCode", "8000"); |
| | | extData.put("realCompanyCode", null); |
| | | extData.put("siteName",null); |
| | | extData.put("pile", null); |
| | | extData.put("payFag", null); |
| | | extData.put("supplierCode", null); |
| | | xpInvoiceVo.setExtData(JSON.toJSONString(extData)); |
| | | |
| | | xpInvoiceVo.setXpInvoiceFlag(true); |
| | | xpInvoiceVo.setInvoiceStatus(xpOrder.getInvoiceStatus()); |
| | | XpInvoiceVo.Itinerary itinerary = new XpInvoiceVo.Itinerary(); |
| | |
| | | itinerary.setTripEndDate(xpOrder.getTripEnd()!=null?xpOrder.getTripEnd().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")):""); |
| | | |
| | | |
| | | XpVehicle xpVehicle = vehicleList.stream().filter(vehicle -> vehicle.getId().equals(xpOrder.getVehicleId())).findFirst().get(); |
| | | itinerary.setCarType(xpVehicle.getVehicleModel()); |
| | | itinerary.setTripStartDate(xpOrder.getBoardingTime()!=null?xpOrder.getBoardingTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")):""); |
| | | |
| | | itinerary.setCity(xpOrder.getCityName()); |
| | | itinerary.setStartPoint(xpOrder.getStartAddress()); |
| | | itinerary.setEndPoint(xpOrder.getEndAddress()); |
| | | itinerary.setMileage(xpOrder.getMileageKilometers()!=null ? xpOrder.getMileageKilometers().toString() :"0"); |
| | | itinerary.setAmount(xpOrder.getOrderMoney()); |
| | | |
| | | xpInvoiceVo.setItinerary(itinerary); |
| | | xpInvoiceVoList.add(xpInvoiceVo); |
| | |
| | | XpInvoiceVo xpInvoiceVo = new XpInvoiceVo(); |
| | | xpInvoiceVo.setUid(xpOrder.getAppUserId().toString()); |
| | | xpInvoiceVo.setOrderNo(xpOrder.getOrderNumber()); |
| | | xpInvoiceVo.setOrderTotalAmount(xpOrder.getOrderMoney()); |
| | | |
| | | BigDecimal orderMoney = xpOrder.getOrderMoney() == null ? BigDecimal.ZERO : xpOrder.getOrderMoney(); |
| | | XpInvoiceVo.GoodsDetail goodsDetail = new XpInvoiceVo.GoodsDetail(); |
| | | goodsDetail.setProductName("Robotaxi出行服务"); |
| | | goodsDetail.setProductCode(null); |
| | | goodsDetail.setProductSpecCode("XE2000398"); |
| | | goodsDetail.setProductSpec(null); |
| | | goodsDetail.setProductUnit("次"); |
| | | goodsDetail.setQuantity(1); |
| | | goodsDetail.setUnitPrice(orderMoney); |
| | | goodsDetail.setInTaxAmount(orderMoney); |
| | | goodsDetail.setTaxRate(null); |
| | | goodsDetail.setTaxAmount(null); |
| | | goodsDetail.setExTaxAmount(null); |
| | | goodsDetail.setItemId(xpOrder.getOrderNumber()); |
| | | goodsDetail.setCouponAmount(xpOrder.getCouponMoney()); |
| | | goodsDetail.setCompanyCode("8000"); |
| | | xpInvoiceVo.setGoodsDetail(JSON.toJSONString(goodsDetail)); |
| | | |
| | | xpInvoiceVo.setOrderTotalAmount(xpOrder.getPayMoney()); |
| | | xpInvoiceVo.setOrderBusAmount(xpOrder.getOrderMoney()); |
| | | |
| | | xpInvoiceVo.setOrderDiscountAmount(xpOrder.getCouponMoney()); |
| | | xpInvoiceVo.setOrderFinishTime(String.valueOf(xpOrder.getTripEnd())); |
| | | xpInvoiceVo.setOrderFinishTime(xpOrder.getTripEnd()!=null?String.valueOf(xpOrder.getTripEnd()):""); |
| | | |
| | | |
| | | JSONObject extData = new JSONObject(); |
| | | extData.put("companyCode", "8000"); |
| | | extData.put("realCompanyCode", null); |
| | | extData.put("siteName",null); |
| | | extData.put("pile", null); |
| | | extData.put("payFag", null); |
| | | extData.put("supplierCode", null); |
| | | xpInvoiceVo.setExtData(JSON.toJSONString(extData)); |
| | | |
| | | xpInvoiceVo.setXpInvoiceFlag(true); |
| | | xpInvoiceVo.setInvoiceStatus(xpOrder.getInvoiceStatus()); |
| | | XpInvoiceVo.Itinerary itinerary = new XpInvoiceVo.Itinerary(); |
| | | // yyyy-MM-dd格式 |
| | | itinerary.setTripStartDate(xpOrder.getAcceptanceTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); |
| | | itinerary.setTripEndDate(xpOrder.getTripEnd().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); |
| | | itinerary.setTripStartDate(xpOrder.getAcceptanceTime()!=null?xpOrder.getAcceptanceTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")):""); |
| | | itinerary.setTripEndDate(xpOrder.getTripEnd()!=null?xpOrder.getTripEnd().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")):""); |
| | | |
| | | |
| | | XpVehicle xpVehicle = vehicleList.stream().filter(vehicle -> vehicle.getId().equals(xpOrder.getVehicleId())).findFirst().get(); |
| | | itinerary.setCarType(xpVehicle.getVehicleModel()); |
| | | itinerary.setTripStartDate(xpOrder.getBoardingTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); |
| | | itinerary.setTripStartDate(xpOrder.getBoardingTime()!=null?xpOrder.getBoardingTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")):""); |
| | | |
| | | itinerary.setCity(xpOrder.getCityName()); |
| | | itinerary.setStartPoint(xpOrder.getStartAddress()); |
| | | itinerary.setEndPoint(xpOrder.getEndAddress()); |
| | | itinerary.setMileage(xpOrder.getMileageKilometers().toString()); |
| | | itinerary.setAmount(xpOrder.getOrderMoney()); |
| | | itinerary.setMileage(xpOrder.getMileageKilometers()!=null ? xpOrder.getMileageKilometers().toString() :"0"); |
| | | |
| | | xpInvoiceVo.setItinerary(itinerary); |
| | | xpInvoiceVoList.add(xpInvoiceVo); |