DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java
@@ -445,6 +445,8 @@ private String promotionPhone; private String travelId; private Date abnormalTime; /** * 是否异常订单 1否 2是 */ @@ -1319,6 +1321,14 @@ this.abnormalRemark = abnormalRemark; } public Date getAbnormalTime() { return abnormalTime; } public void setAbnormalTime(Date abnormalTime) { this.abnormalTime = abnormalTime; } @Override public String toString() { return "OrderPrivateCar{" + ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java
@@ -349,21 +349,18 @@ return "统一社会信用代码不能为空"; } //调用中台接口创建企业 // CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(tCompany.getName()); CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterExistByEnterIdCardNo(tCompany.getIdentifier()); String enterCode = ""; Integer enterNew = null; Long empId = null; Integer empnew = null; ShiroUser user1 = shiroExtUtil.getUser(); User user2 = userService.selectById(user1.getId()); //企业未注册,进行注册 if (null == checkEnterExist || "0".equals(checkEnterExist.getIsReg())) { CreateEnterpriseRequest request = new CreateEnterpriseRequest(); request.setName(tCompany.getName()); request.setNickName(tCompany.getName()); request.setUscc(tCompany.getIdentifier()); request.setIndustry_code("123456"); request.setIndustry_code("292"); request.setMobile(account); CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request); enterCode = enterprise.getIdCode(); @@ -621,7 +618,7 @@ request.setName(tCompany.getName()); request.setNickName(tCompany.getName()); request.setUscc(tCompany.getIdentifier()); request.setIndustry_code("123456"); request.setIndustry_code("292"); request.setMobile(account); CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request); enterCode = enterprise.getIdCode(); UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/dao/mapping/OrderCrossCityMapper.xml
@@ -356,7 +356,8 @@ a.abnormalIntro as abnormalIntro, a.abnormalImg as abnormalImg, a.companyId as companyId, a.travelMode a.travelMode, 0 as appealButton from t_order_cross_city a left join t_driver b on (a.driverId = b.id) left join t_car c on (a.carId = c.id) UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -798,7 +798,9 @@ userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); OpenCity openCity = openCityService.openCity1(orderCrossCity.getStartLon().toString(), orderCrossCity.getStartLat().toString()); SysIntegral query1 = sysIntegralMapper.query(openCity.getId()); userInfo.setIntegral(userInfo.getIntegral() + (orderMoney.intValue() * query1.getIntegral()));//积分 if(null != query1){ userInfo.setIntegral(userInfo.getIntegral() + (orderMoney.intValue() * query1.getIntegral()));//积分 } //添加交易明细 transactionDetailsService.saveData(uid, "跨城出行订单", orderMoney, 2, 1, 1, 3, orderId); @@ -1446,9 +1448,8 @@ if(Integer.valueOf(String.valueOf(map.get("state"))) ==7 && (map.get("responsibilityType")==null || Integer.valueOf(String.valueOf(map.get("responsibilityType")))<4)){ map.put("appealButton", 1); } if(map.get("abnormalIntro")!=null){ map.put("appealStatus", 1); } //跨城不需要申诉 map.put("appealStatus", 0); if(map.get("travelMode")!=null &&map.get("travelMode").toString().equals("2") ){ map.put("zwNum", 1); }else { UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -1982,6 +1982,16 @@ if (orderPrivateCar.getState() != 7) { return ResultUtil.error("订单不在待支付状态,不允许支付", new ArrayList<>()); } //查询支付信息 GetPaymentInfoDataRequest getPaymentInfoDataRequest = new GetPaymentInfoDataRequest(); getPaymentInfoDataRequest.setPartnerPayId(orderPrivateCar.getTravelId()); GetPaymentInfo getPaymentInfo = OrderUtil.paymentInfo(getPaymentInfoDataRequest); String status = getPaymentInfo.getStatus(); if("1".equals(status) || "2".equals(status)){ payOrderPrivateCarCallback(orderPrivateCar.getId(), getPaymentInfo.getPayId(), 1); return ResultUtil.error("订单已完成支付,不允许重复支付", new ArrayList<>()); } Integer uid = orderPrivateCar.getUserId(); Double orderMoney = (2 == orderPrivateCar.getAbnormal() && 2 == orderPrivateCar.getAbnormalStatus() ? orderPrivateCar.getResponsibilityMoney().doubleValue() : orderPrivateCar.getOrderMoney()); UserInfo userInfo = userInfoService.selectById(uid); @@ -2271,10 +2281,10 @@ ListPage<List<TravelItinerary>> travelItineraryList = OrderUtil.getTravelItineraryList(request); TravelItinerary travelItinerary = travelItineraryList.getList().get(0); if(travelItinerary.getStatus() != 7 || travelItinerary.getOrderStatus() == 11){ GetPaymentInfoDataRequest getPaymentInfoDataRequest = new GetPaymentInfoDataRequest(); getPaymentInfoDataRequest.setPartnerPayId(orderPrivateCar1.getTravelId()); GetPaymentInfo getPaymentInfo = OrderUtil.paymentInfo(getPaymentInfoDataRequest); payOrderPrivateCarCallback(orderPrivateCar1.getId(), getPaymentInfo.getPayId(), 1); GetPaymentInfoDataRequest getPaymentInfoDataRequest1 = new GetPaymentInfoDataRequest(); getPaymentInfoDataRequest1.setPartnerPayId(orderPrivateCar1.getTravelId()); GetPaymentInfo getPaymentInfo1 = OrderUtil.paymentInfo(getPaymentInfoDataRequest1); payOrderPrivateCarCallback(orderPrivateCar1.getId(), getPaymentInfo1.getPayId(), 1); break; } Thread.sleep(wait); UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java
@@ -138,11 +138,11 @@ /** * 大于24小时未支付的订单 * 大于72小时未支付的订单 */ public void timoutNoPayment() { List<OrderPrivateCar> orderPrivateCars = orderPrivateCarService.selectList(new EntityWrapper<OrderPrivateCar>().eq("state", 7) .eq("isDelete", 1).eq("recoveryOrder", 0).eq("abnormal", 1).last(" and now() >= DATE_ADD(insertTime, INTERVAL 10 MINUTE)")); .eq("isDelete", 1).eq("recoveryOrder", 0).eq("abnormal", 1).last(" and now() >= DATE_ADD(getoffTime, INTERVAL 10 MINUTE)")); List<OrderPrivateCar> orderPrivateCars1 = orderPrivateCarService.selectList(new EntityWrapper<OrderPrivateCar>().eq("state", 7) .eq("isDelete", 1).eq("recoveryOrder", 0).eq("abnormal", 2).last(" and now() >= DATE_ADD(abnormalTime, INTERVAL 10 MINUTE)")); orderPrivateCars.addAll(orderPrivateCars1); @@ -270,141 +270,6 @@ modifyTravelItineraryRequest.setSupplierShopId(company1.getEnterCode()); if (2 == orderPrivateCar1.getPromotion()) { Driver driver2 = driverService.selectById(orderPrivateCar1.getPromotionDriverId()); modifyTravelItineraryRequest.setPromoterId(driver2.getEmpId().toString()); } OrderUtil.modifyTravelItinerary(modifyTravelItineraryRequest); } } catch (Exception e) { e.printStackTrace(); } } //出租车 List<OrderTaxi> orderTaxis = orderTaxiService.selectList(new EntityWrapper<OrderTaxi>().eq("state", 7) .eq("isDelete", 1).eq("recoveryOrder", 0).eq("abnormal", 1).last(" and now() >= DATE_ADD(insertTime, INTERVAL 10 MINUTE)")); List<OrderTaxi> orderTaxis1 = orderTaxiService.selectList(new EntityWrapper<OrderTaxi>().eq("state", 7) .eq("isDelete", 1).eq("recoveryOrder", 0).eq("abnormal", 2).last(" and now() >= DATE_ADD(abnormalTime, INTERVAL 10 MINUTE)")); orderTaxis.addAll(orderTaxis1); for (OrderTaxi orderTaxi : orderTaxis) { try { Driver driver = driverService.selectById(orderTaxi.getDriverId()); Company company = companyService.selectById(driver.getCompanyId()); UserInfo userInfo = userInfoService.selectById(orderTaxi.getUserId()); Double orderMoney = (2 == orderTaxi.getAbnormal() && 2 == orderTaxi.getAbnormalStatus() ? orderTaxi.getResponsibilityMoney().doubleValue() : orderTaxi.getOrderMoney()); if(null == orderTaxi.getIsCreated()){ //先调中台创建订单 CreateOrderRequest createOrderRequest = new CreateOrderRequest(); createOrderRequest.setTreatShopId(driver.getEmpId().toString()); createOrderRequest.setField1("{\"profitSharing\":\"1\",\"isCompensate\":\"0\",\"isPromote\":\"" + (orderTaxi.getPromotion() == 2 ? 1 : 0) + "\"}"); createOrderRequest.setCharge(new BigDecimal(orderMoney)); createOrderRequest.setOrderNo("TA" + orderTaxi.getId()); createOrderRequest.setOrderId(orderTaxi.getTravelId()); createOrderRequest.setCustomerId(userInfo.getOnconUUID()); OrderInfo orderInfo = OrderUtil.tradeOrderCreate(createOrderRequest); orderTaxi.setIsCreated(1); orderTaxi.setTravelId(orderInfo.getOrderId()); orderTaxiService.updateById(orderTaxi); } //使用备付金进行支付订单 TradePayOffData tradePayOffData = new TradePayOffData(); tradePayOffData.setPartnerPayId(orderTaxi.getTravelId()); tradePayOffData.setTotalFee(Double.valueOf(orderMoney * 100).intValue() + ""); tradePayOffData.setOrderDesc("完成订单"); PayInfo payInfo = OrderUtil.tradePayOff(tradePayOffData); String retCode = payInfo.getRetCode(); if (!"000000".equals(retCode)) { log.error("备付金支付失败:{}", payInfo.getRetMsg()); return; } PayInfoData data = payInfo.getData(); String status = data.getStatus(); if ("3".equals(status)) { log.error("备付金支付失败:{}", payInfo.getRetMsg()); return; } if("0".equals(status)){ //查询支付信息 GetPaymentInfoDataRequest getPaymentInfoDataRequest = new GetPaymentInfoDataRequest(); getPaymentInfoDataRequest.setPartnerPayId(orderTaxi.getTravelId()); GetPaymentInfo getPaymentInfo = 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(orderTaxi.getTravelId()); paymentOrderRequest.setCharge(BigDecimal.valueOf(orderMoney)); paymentOrderRequest.setPayTime(data.getPayTime()); paymentOrderRequest.setPaymentSerialNumber(payInfoData.getPayId()); OrderInfo orderInfo1 = OrderUtil.paymentOrder(paymentOrderRequest); //中台修改订单状态 ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest(); request1.setOrderId(orderTaxi.getTravelId()); request1.setStatus(9); if (null != orderTaxi.getDriverId()) { request1.setDriverId(driver.getEmpId().toString()); request1.setSupplierShopId(company.getEnterCode()); } if (2 == orderTaxi.getPromotion()) { Driver driver2 = driverService.selectById(orderTaxi.getPromotionDriverId()); request1.setPromoterId(driver2.getEmpId().toString()); } OrderUtil.modifyTravelItinerary(request1); String payId = payInfo.getData().getPayId(); //copy原始订单后生成追缴单 OrderTaxi orderTaxi1 = new OrderTaxi(); BeanUtils.copyProperties(orderTaxi, orderTaxi1); orderTaxi1.setId(null); orderTaxi1.setRecoveryOrder(1); orderTaxi1.setIsGenerateRecoveryOrder(0); orderTaxi1.setOldOrderId(orderTaxi.getId()); orderTaxi1.setRecoveryOrderCreateDate(new Date()); //修改原始订单为支付状态 orderTaxi.setState(9); orderTaxi.setPayType(5); orderTaxi.setPayMoney(orderMoney); orderTaxi.setPayTime(new Date()); orderTaxi.setIsGenerateRecoveryOrder(1); orderTaxiService.updateById(orderTaxi); //保存追缴单 orderTaxiService.insert(orderTaxi1); //添加三方支付记录 try { paymentRecordService.saveData(1, orderTaxi.getUserId(), 1, orderTaxi.getId(), 2, 3, orderMoney, payId, 2); } catch (Exception e) { throw new RuntimeException(e); } Driver driver1 = driverService.selectById(orderTaxi1.getDriverId()); UserInfo userInfo1 = userInfoService.selectById(orderTaxi1.getUserId()); Company company1 = companyService.selectById(driver1.getCompanyId()); //调三方订单中心创建行程单 CreateTravelItineraryRequest request = new CreateTravelItineraryRequest(); request.setOrderNo("TA" + orderTaxi1.getId()); request.setCustomerId(userInfo1.getOnconUUID()); request.setDriverId(driver1.getEmpId().toString()); request.setSupplierShopId(company1.getEnterCode()); request.setServiceType(1); String travelItinerary = OrderUtil.createTravelItinerary(request); orderTaxi1.setTravelId(travelItinerary); orderTaxi1.setIsCreated(0); orderTaxiService.updateById(orderTaxi1); //修改订单状态为待支付 ModifyTravelItineraryRequest modifyTravelItineraryRequest = new ModifyTravelItineraryRequest(); modifyTravelItineraryRequest.setOrderId(orderTaxi1.getTravelId()); modifyTravelItineraryRequest.setStatus(orderTaxi1.getState()); modifyTravelItineraryRequest.setDriverId(driver1.getEmpId().toString()); modifyTravelItineraryRequest.setSupplierShopId(company1.getEnterCode()); if (2 == orderTaxi1.getPromotion()) { Driver driver2 = driverService.selectById(orderTaxi1.getPromotionDriverId()); modifyTravelItineraryRequest.setPromoterId(driver2.getEmpId().toString()); } OrderUtil.modifyTravelItinerary(modifyTravelItineraryRequest); UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/dao/mapping/OrderTaxiMapper.xml
@@ -265,7 +265,7 @@ a.abnormalIntro, a.abnormalImg, a.companyId, IF((a.abnormalIntro is null and a.recoveryOrder = 1) or (a.state in (8, 9) and null = a.abnormal), 0, 1) as appealButton 0 as appealButton from t_order_taxi a left join t_driver b on (a.driverId = b.id) left join t_car c on (a.carId = c.id) UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/model/OrderTaxi.java
@@ -436,6 +436,10 @@ private Date recoveryOrderCreateDate; private Date payTime; /** * 异常单审核时间 */ private Date abnormalTime; public Date getSuccessTime() { @@ -1176,6 +1180,14 @@ this.abnormalRemark = abnormalRemark; } public Date getAbnormalTime() { return abnormalTime; } public void setAbnormalTime(Date abnormalTime) { this.abnormalTime = abnormalTime; } @Override public String toString() { return "OrderTaxi{" + UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
@@ -1902,10 +1902,8 @@ if (Integer.valueOf(String.valueOf(map.get("state"))) == 11) { map.put("state", map.get("oldState")); } if (map.get("abnormalIntro") != null) { map.put("appealStatus", 1); } //出租车不需要申诉 map.put("appealStatus", 0); String driverId = (String) redisTemplate.opsForValue().get("DEVICE_" + map.get("driverId")); map.put("device", ToolUtil.isNotEmpty(driverId) ? 2 : 1); map.put("orderType", 2);