From cb7e84fe6e40f3ce3ed1fe3fb3b4c0da8c847793 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 27 八月 2025 23:51:22 +0800
Subject: [PATCH] 修改bug
---
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java | 120 ++++---
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java | 332 +++++++++++++----------
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml | 4
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java | 11
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java | 25 -
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java | 114 ++++++++
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java | 3
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java | 6
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java | 54 ++-
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java | 107 ++++---
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java | 5
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/dao/mapping/OrderTaxiMapper.xml | 4
12 files changed, 472 insertions(+), 313 deletions(-)
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
index 2578fde..de7aa4d 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -530,9 +530,11 @@
return ResultUtil.tokenErr();
}
Driver driver = driverService.selectById(uid);
- String areaCode = driver.getAreaCode();
+ String areaCode = driver.getPlaceOfEmployment();
TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>()
.eq("districtCode", areaCode)
+ .eq("state", 1)
+ .eq("remove", 0)
.eq("status", 2)
.last("LIMIT 1"));
if(tDriverPromotionActivity!=null){
@@ -565,8 +567,8 @@
accessToken = getAccessToken();
}
int index=0;
-
- if(ToolUtil.isEmpty(img)) {
+ String urlLink = driver.getShareLink();
+ if(ToolUtil.isEmpty(img) || ToolUtil.isEmpty(urlLink)) {
RestTemplate rest = new RestTemplate();
// String url = "https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=" + accessToken;
String url = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + accessToken;
@@ -574,7 +576,7 @@
param.put("page", "pages/home/home");
param.put("width", 430); //二维码尺寸
param.put("scene", "driverId=" + uid); //二维码尺寸
- param.put("env_version", "trial"); //二维码尺寸
+ param.put("env_version", "release"); //二维码尺寸
HttpRequest post = HttpUtil.createPost(url);
post.body(JSON.toJSONString(param));
@@ -584,7 +586,6 @@
redisTemplate.opsForValue().set("DRIVER_WX_IMG" + uid, img,30, TimeUnit.DAYS);
}
- String urlLink = driver.getShareLink();
if(ToolUtil.isEmpty(urlLink)) {
index=1;
String url1 = "https://api.weixin.qq.com/wxa/generate_urllink?access_token=" + accessToken;
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml
index 0a99479..a19f8f4 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml
@@ -260,7 +260,7 @@
payManner as payManner,
UNIX_TIMESTAMP(travelTime) as travelTime,
remark as remark
- from t_order_private_car where driverId = #{driverId}
+ from t_order_private_car where driverId = #{driverId} and recoveryOrder = 0
<if test="state == 1">
and state != 1
</if>
@@ -318,7 +318,7 @@
a.startLat as startLat,
a.endLon as endLon,
a.endLat as endLat,
- a.orderMoney as orderMoney,
+ if(a.abnormal = 2 and a.abnormalStatus = 2, a.responsibilityMoney, a.orderMoney) as orderMoney,
a.payManner as payManner,
a.thankYouFee,
a.trackId as trackId,
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java
index c99a141..309cfec 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java
@@ -445,6 +445,38 @@
private String promotionPhone;
private String travelId;
+ /**
+ * 是否异常订单 1否 2是
+ */
+ @TableField("abnormal")
+ private Integer abnormal;
+
+ private Long promotionActivityId;
+ /**
+ * 中台是否已创建订单(0=否,1=是)
+ */
+ private Integer isCreated;
+ /**
+ * 是否是追缴单(0=否,1=是)
+ */
+ private Integer recoveryOrder;
+ /**
+ * 是否生成追缴单(0=否,1=是)
+ */
+ private Integer isGenerateRecoveryOrder;
+ /**
+ * 原始订单id
+ */
+ private Integer oldOrderId;
+
+
+ private Integer abnormalStatus;
+
+ private Integer responsibilityType;
+
+ private BigDecimal responsibilityMoney;
+
+ private String abnormalRemark;
public String getPromotionUser() {
@@ -1206,7 +1238,87 @@
public void setTravelId(String travelId) {
this.travelId = travelId;
}
-
+
+ public Integer getAbnormal() {
+ return abnormal;
+ }
+
+ public void setAbnormal(Integer abnormal) {
+ this.abnormal = abnormal;
+ }
+
+ public Long getPromotionActivityId() {
+ return promotionActivityId;
+ }
+
+ public void setPromotionActivityId(Long promotionActivityId) {
+ this.promotionActivityId = promotionActivityId;
+ }
+
+ public Integer getIsCreated() {
+ return isCreated;
+ }
+
+ public void setIsCreated(Integer isCreated) {
+ this.isCreated = isCreated;
+ }
+
+ public Integer getRecoveryOrder() {
+ return recoveryOrder;
+ }
+
+ public void setRecoveryOrder(Integer recoveryOrder) {
+ this.recoveryOrder = recoveryOrder;
+ }
+
+ public Integer getIsGenerateRecoveryOrder() {
+ return isGenerateRecoveryOrder;
+ }
+
+ public void setIsGenerateRecoveryOrder(Integer isGenerateRecoveryOrder) {
+ this.isGenerateRecoveryOrder = isGenerateRecoveryOrder;
+ }
+
+ public Integer getOldOrderId() {
+ return oldOrderId;
+ }
+
+ public void setOldOrderId(Integer oldOrderId) {
+ this.oldOrderId = oldOrderId;
+ }
+
+ public Integer getAbnormalStatus() {
+ return abnormalStatus;
+ }
+
+ public void setAbnormalStatus(Integer abnormalStatus) {
+ this.abnormalStatus = abnormalStatus;
+ }
+
+ public Integer getResponsibilityType() {
+ return responsibilityType;
+ }
+
+ public void setResponsibilityType(Integer responsibilityType) {
+ this.responsibilityType = responsibilityType;
+ }
+
+ public BigDecimal getResponsibilityMoney() {
+ return responsibilityMoney;
+ }
+
+ public void setResponsibilityMoney(BigDecimal responsibilityMoney) {
+ this.responsibilityMoney = responsibilityMoney;
+ }
+
+ public String getAbnormalRemark() {
+ return abnormalRemark;
+ }
+
+ public void setAbnormalRemark(String abnormalRemark) {
+ this.abnormalRemark = abnormalRemark;
+ }
+
@Override
public String toString() {
return "OrderPrivateCar{" +
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index 14e5aee..97df78d 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -232,7 +232,6 @@
driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
orderPrivateCar.setState(2);
orderPrivateCar.setSnatchOrderTime(new Date());
-
//调用高德创建轨迹
// String s = gdFalconUtil.selectTerminal(driver.getPhone());
// String track = gdFalconUtil.createTrack(s);
@@ -248,7 +247,7 @@
// 是否推广订单
- Integer promotion = isPromotion(orderPrivateCar.getUserId());
+ Integer promotion = isPromotion(orderPrivateCar.getUserId(), driver.getPlaceOfEmployment());
if(null != promotion){
orderPrivateCar.setPromotion(2);
Driver driver1 = driverService.selectById(promotion);
@@ -277,18 +276,20 @@
orderPrivateCar.setTravelId(travelItinerary);
}else{
//改派抢单
- Company company1 = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
- request1.setOrderId(orderPrivateCar.getTravelId());
- request1.setStatus(orderPrivateCar.getState());
- request1.setDriverId(driver.getEmpId().toString());
- if(2 == orderPrivateCar.getPromotion()){
- Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
- request1.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderPrivateCar.getTravelId())){
+ Company company1 = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
+ request1.setOrderId(orderPrivateCar.getTravelId());
+ request1.setStatus(orderPrivateCar.getState());
+ request1.setDriverId(driver.getEmpId().toString());
+ if(2 == orderPrivateCar.getPromotion()){
+ Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
+ request1.setPromoterId(driver1.getEmpId().toString());
+ }
+ request1.setSupplierShopId(company1.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request1);
}
- request1.setSupplierShopId(company1.getEnterCode());
- OrderUtil.modifyTravelItinerary(request1);
}
this.updateById(orderPrivateCar);
@@ -375,11 +376,11 @@
}
- private Integer isPromotion(Integer userId){
+ private Integer isPromotion(Integer userId, String code){
UserInfo userInfo = userInfoMapper.selectById(userId);
if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()>System.currentTimeMillis()){
- String registAreaCode = userInfo.getRegistAreaCode();
- TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("state",1).eq("districtCode", registAreaCode).last(" and now() between startTime and endTime AND FIND_IN_SET(" + 1 + ", bizType) limit 1"));
+ TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("state",1)
+ .eq("districtCode", code).last(" and now() between startTime and endTime AND FIND_IN_SET(" + 1 + ", bizType) limit 1"));
if(tDriverPromotionActivity!=null){
return userInfo.getBindDriverId();
}
@@ -570,19 +571,21 @@
}
this.updateById(orderPrivateCar);
- Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
- Company company = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
- request.setOrderId(orderPrivateCar.getTravelId());
- request.setStatus(orderPrivateCar.getState());
- request.setDriverId(driver.getEmpId().toString());
- if(2 == orderPrivateCar.getPromotion()){
- Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
- request.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderPrivateCar.getTravelId())){
+ Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
+ Company company = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+ request.setOrderId(orderPrivateCar.getTravelId());
+ request.setStatus(orderPrivateCar.getState());
+ request.setDriverId(driver.getEmpId().toString());
+ if(2 == orderPrivateCar.getPromotion()){
+ Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
+ request.setPromoterId(driver1.getEmpId().toString());
+ }
+ request.setSupplierShopId(company.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request);
}
- request.setSupplierShopId(company.getEnterCode());
- OrderUtil.modifyTravelItinerary(request);
// TODO: 2020/6/5 推送状态
OrderPrivateCar finalOrderPrivateCar = orderPrivateCar;
@@ -652,18 +655,20 @@
this.updateById(orderPrivateCar);
Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
- Company company = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
- request.setOrderId(orderPrivateCar.getTravelId());
- request.setStatus(7);
- request.setDriverId(driver.getEmpId().toString());
- if(2 == orderPrivateCar.getPromotion()){
- Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
- request.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderPrivateCar.getTravelId())){
+ Company company = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+ request.setOrderId(orderPrivateCar.getTravelId());
+ request.setStatus(7);
+ request.setDriverId(driver.getEmpId().toString());
+ if(2 == orderPrivateCar.getPromotion()){
+ Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
+ request.setPromoterId(driver1.getEmpId().toString());
+ }
+ request.setSupplierShopId(company.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request);
}
- request.setSupplierShopId(company.getEnterCode());
- OrderUtil.modifyTravelItinerary(request);
pushUtil.removeTask(orderId, 1);//删除定时任务,结束推送数据
@@ -832,6 +837,9 @@
JSONObject jsonObject = jsonArray.getJSONObject(i);
Integer id = jsonObject.getInteger("id");
Double amount = jsonObject.getDouble("amount");
+ if(amount == 0){
+ continue;
+ }
OrderAdditionalFee orderAdditionalFee = new OrderAdditionalFee();
orderAdditionalFee.setOrderType(1);
orderAdditionalFee.setOrderId(orderId);
@@ -846,18 +854,20 @@
this.updateById(orderPrivateCar);
Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
- Company company1 = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
- request1.setOrderId(orderPrivateCar.getTravelId());
- request1.setStatus(orderPrivateCar.getState());
- request1.setDriverId(driver.getEmpId().toString());
- if(2 == orderPrivateCar.getPromotion()){
- Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
- request1.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderPrivateCar.getTravelId())){
+ Company company1 = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
+ request1.setOrderId(orderPrivateCar.getTravelId());
+ request1.setStatus(orderPrivateCar.getState());
+ request1.setDriverId(driver.getEmpId().toString());
+ if(2 == orderPrivateCar.getPromotion()){
+ Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
+ request1.setPromoterId(driver1.getEmpId().toString());
+ }
+ request1.setSupplierShopId(company1.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request1);
}
- request1.setSupplierShopId(company1.getEnterCode());
- OrderUtil.modifyTravelItinerary(request1);
pushUtil.removeTask(orderId, 1);//删除定时任务,结束推送数据
systemNoticeService.addSystemNotice(1, "司机已结束本次行程,谢谢使用", orderPrivateCar.getUserId(), 1);
@@ -933,7 +943,15 @@
}
Map<String, Object> map = new HashMap<>();
- map.put("orderMoney", orderPrivateCar.getOrderMoney()==null?0:orderPrivateCar.getOrderMoney());//订单金额
+ if(orderPrivateCar.getState() == 5){
+ map.put("orderMoney", orderPrivateCar.getOrderMoney()==null?0:orderPrivateCar.getOrderMoney());//订单金额
+ }else{
+ if(orderPrivateCar.getAbnormal() == 2 && orderPrivateCar.getResponsibilityType() > 2 && orderPrivateCar.getAbnormalStatus() == 2){
+ map.put("orderMoney", orderPrivateCar.getResponsibilityMoney());
+ }else{
+ map.put("orderMoney", orderPrivateCar.getOrderMoney()==null?0:orderPrivateCar.getOrderMoney());//订单金额
+ }
+ }
map.put("startMileage", orderPrivateCar.getStartMileage());//起步价
map.put("startMoney", orderPrivateCar.getStartMoney());//起步价
map.put("mileageKilometers", orderPrivateCar.getMileageKilometers());//里程费
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java
index 8554b90..6d2d64a 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java
@@ -132,19 +132,14 @@
*/
@TableField("state")
private Integer state;
-
-
-
/**
* 绑定的司机id
*/
@TableField("bindDriverId")
private Integer bindDriverId;
-
/**
* 绑定司机有效期
*/
-
private Date bindExpireDate;
/**
* 中台用户ID
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
index 9e470c0..15f0717 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -412,26 +412,6 @@
if(registeredWarpper.getCompanyId()==null){
return ResultUtil.error("请选择服务商");
}
-
- String code = registeredWarpper.getPlaceOfEmployment();
- Company query = companyCityService.query(code);
- if(null == query){
- return ResultUtil.error("选择从业地暂未开通业务");
- }
- if(null != query){
- switch (query.getType()){
- case 1://平台
- driver.setCompanyId(query.getId());
- break;
- case 2://分公司
- driver.setCompanyId(query.getId());
- break;
- case 3://加盟商
- driver.setCompanyId(query.getSuperiorId());
- driver.setFranchiseeId(query.getId());
- break;
- }
- }
driver.setHeadImgUrl(registeredWarpper.getHeadImgUrl());
driver.setIdCardImgUrl1(registeredWarpper.getIdCardImgUrl1());
driver.setIdCardImgUrl2(registeredWarpper.getIdCardImgUrl2());
@@ -658,7 +638,10 @@
return ResultUtil.error("车辆正在使用中");
}
}
-
+ //专车业务需要校验
+// if(0 == driver.getIsSynchronous() && type.contains("1")){
+// return ResultUtil.error("请先开通钱包");
+// }
//判断车辆是否正在使用中
Car car = carService.selectById(driver.getCarId());
if(car.getUseDriverId() != null && !car.getUseDriverId().equals(uid)){
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
index 7517822..6142adf 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
@@ -387,7 +387,7 @@
break;
case 2://出租
OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
- if(null != orderTaxi && orderTaxi.getType() == 2){
+ if((null != orderTaxi && orderTaxi.getType() == 2) || (null != orderTaxi && orderTaxi.getState() == 11)){
map = orderTaxiService.queryPushOrder(orderId);
}else{
OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
@@ -1232,19 +1232,21 @@
orderPrivateCar.setState(8);
orderPrivateCarService.updateById(orderPrivateCar);
- Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
- Company company1 = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
- request1.setOrderId(orderPrivateCar.getTravelId());
- request1.setStatus(orderPrivateCar.getState());
- request1.setDriverId(driver.getEmpId().toString());
- if(2 == orderPrivateCar.getPromotion()){
- Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
- request1.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderPrivateCar.getTravelId())){
+ Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
+ Company company1 = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
+ request1.setOrderId(orderPrivateCar.getTravelId());
+ request1.setStatus(orderPrivateCar.getState());
+ request1.setDriverId(driver.getEmpId().toString());
+ if(2 == orderPrivateCar.getPromotion()){
+ Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
+ request1.setPromoterId(driver1.getEmpId().toString());
+ }
+ request1.setSupplierShopId(company1.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request1);
}
- request1.setSupplierShopId(company1.getEnterCode());
- OrderUtil.modifyTravelItinerary(request1);
userId = orderPrivateCar.getUserId();
driverId = orderPrivateCar.getDriverId();
@@ -1276,19 +1278,21 @@
orderTaxi.setState(8);
orderTaxiService.updateById(orderTaxi);
- Driver driver1 = driverService.selectById(orderTaxi.getDriverId());
- Company company = companyService.selectById(driver1.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
- request.setOrderId(orderTaxi.getTravelId());
- request.setStatus(orderTaxi.getState());
- request.setDriverId(driver1.getEmpId().toString());
- if(2 == orderTaxi.getPromotion()){
- Driver driver2 = driverService.selectById(orderTaxi.getPromotionDriverId());
- request.setPromoterId(driver2.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderTaxi.getTravelId())){
+ Driver driver1 = driverService.selectById(orderTaxi.getDriverId());
+ Company company = companyService.selectById(driver1.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+ request.setOrderId(orderTaxi.getTravelId());
+ request.setStatus(orderTaxi.getState());
+ request.setDriverId(driver1.getEmpId().toString());
+ if(2 == orderTaxi.getPromotion()){
+ Driver driver2 = driverService.selectById(orderTaxi.getPromotionDriverId());
+ request.setPromoterId(driver2.getEmpId().toString());
+ }
+ request.setSupplierShopId(company.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request);
}
- request.setSupplierShopId(company.getEnterCode());
- OrderUtil.modifyTravelItinerary(request);
userId = orderTaxi.getUserId();
driverId = orderTaxi.getDriverId();
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
index 6eef1c7..41a37b6 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
@@ -193,20 +193,23 @@
orderPrivateCar.setOldState(orderPrivateCar.getState());
orderPrivateCar.setState(11);
orderPrivateCar.setReassignNotice(2);
+ orderPrivateCar.setIsReassign(2);
orderPrivateCarService.updateById(orderPrivateCar);
- Company company = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
- request.setOrderId(orderPrivateCar.getTravelId());
- request.setStatus(orderPrivateCar.getState());
- request.setDriverId(driver.getEmpId().toString());
- if (2 == orderPrivateCar.getPromotion()) {
- Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
- request.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderPrivateCar.getTravelId())){
+ Company company = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+ request.setOrderId(orderPrivateCar.getTravelId());
+ request.setStatus(orderPrivateCar.getState());
+ request.setDriverId(driver.getEmpId().toString());
+ if (2 == orderPrivateCar.getPromotion()) {
+ Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
+ request.setPromoterId(driver1.getEmpId().toString());
+ }
+ request.setSupplierShopId(company.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request);
}
- request.setSupplierShopId(company.getEnterCode());
- OrderUtil.modifyTravelItinerary(request);
//添加已收入明细
@@ -219,20 +222,23 @@
orderTaxi.setOldState(orderTaxi.getState());
orderTaxi.setState(11);
orderTaxi.setReassignNotice(2);
+ orderTaxi.setIsReassign(2);
orderTaxiService.updateById(orderTaxi);
- Company company1 = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
- request1.setOrderId(orderTaxi.getTravelId());
- request1.setStatus(orderTaxi.getState());
- request1.setDriverId(driver.getEmpId().toString());
- if (2 == orderTaxi.getPromotion()) {
- Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
- request1.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderTaxi.getTravelId())){
+ Company company1 = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
+ request1.setOrderId(orderTaxi.getTravelId());
+ request1.setStatus(orderTaxi.getState());
+ request1.setDriverId(driver.getEmpId().toString());
+ if (2 == orderTaxi.getPromotion()) {
+ Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
+ request1.setPromoterId(driver1.getEmpId().toString());
+ }
+ request1.setSupplierShopId(company1.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request1);
}
- request1.setSupplierShopId(company1.getEnterCode());
- OrderUtil.modifyTravelItinerary(request1);
//添加已收入明细
// incomeService.saveData(1, orderTaxi.getCompanyId(), 4, orderTaxi.getId(), 2, reassign.getMoney());
@@ -245,6 +251,7 @@
orderLogistics.setOldState(orderLogistics.getState());
orderLogistics.setState(11);
orderLogistics.setReassignNotice(2);
+ orderLogistics.setIsReassign(2);
orderLogisticsService.updateById(orderLogistics);
//添加已收入明细
@@ -255,6 +262,7 @@
orderLogistics1.setOldState(orderLogistics1.getState());
orderLogistics1.setState(11);
orderLogistics1.setReassignNotice(2);
+ orderLogistics1.setIsReassign(2);
orderLogisticsService.updateById(orderLogistics1);
//添加已收入明细
@@ -298,18 +306,20 @@
orderPrivateCar.setReassignNotice(0);
orderPrivateCarService.updateById(orderPrivateCar);
- Company company = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
- request.setOrderId(orderPrivateCar.getTravelId());
- request.setStatus(orderPrivateCar.getState());
- request.setDriverId(driver.getEmpId().toString());
- if (2 == orderPrivateCar.getPromotion()) {
- Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
- request.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderPrivateCar.getTravelId())){
+ Company company = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+ request.setOrderId(orderPrivateCar.getTravelId());
+ request.setStatus(orderPrivateCar.getState());
+ request.setDriverId(driver.getEmpId().toString());
+ if (2 == orderPrivateCar.getPromotion()) {
+ Driver driver1 = driverService.selectById(orderPrivateCar.getPromotionDriverId());
+ request.setPromoterId(driver1.getEmpId().toString());
+ }
+ request.setSupplierShopId(company.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request);
}
- request.setSupplierShopId(company.getEnterCode());
- OrderUtil.modifyTravelItinerary(request);
break;
case 2:
OrderTaxi orderTaxi = orderTaxiService.selectById(reassign.getOrderId());
@@ -319,18 +329,20 @@
orderTaxi.setState(orderTaxi.getOldState());
orderTaxi.setReassignNotice(0);
orderTaxiService.updateById(orderTaxi);
- Company company1 = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
- request1.setOrderId(orderTaxi.getTravelId());
- request1.setStatus(orderTaxi.getState());
- request1.setDriverId(driver.getEmpId().toString());
- if (2 == orderTaxi.getPromotion()) {
- Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
- request1.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderTaxi.getTravelId())){
+ Company company1 = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
+ request1.setOrderId(orderTaxi.getTravelId());
+ request1.setStatus(orderTaxi.getState());
+ request1.setDriverId(driver.getEmpId().toString());
+ if (2 == orderTaxi.getPromotion()) {
+ Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
+ request1.setPromoterId(driver1.getEmpId().toString());
+ }
+ request1.setSupplierShopId(company1.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request1);
}
- request1.setSupplierShopId(company1.getEnterCode());
- OrderUtil.modifyTravelItinerary(request1);
break;
}
reassignMapper.delete(new EntityWrapper<Reassign>().eq("orderId",reassign.getOrderId()).eq("orderType",reassign.getOrderType()));
@@ -541,6 +553,7 @@
orderCrossCity.setOldState(orderCrossCity.getState());
orderCrossCity.setState(11);
orderCrossCity.setReassignNotice(2);
+ orderCrossCity.setIsReassign(2);
orderCrossCityService.updateById(orderCrossCity);
//添加已收入明细
@@ -548,13 +561,13 @@
}
systemNoticeService.addSystemNotice(2, "您已使用余额成功支付改派申请费用!", uid, 1);
//开始推送调度单
- Map<String, String> map = new HashMap<>();
- map.put("orderId", reassign.getOrderId().toString());
- map.put("orderType", reassign.getOrderType().toString());
- List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
- for (Dispatch dispatch : dispatches) {
- jgPushUtil.push(2, "有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
- }
+// Map<String, String> map = new HashMap<>();
+// map.put("orderId", reassign.getOrderId().toString());
+// map.put("orderType", reassign.getOrderType().toString());
+// List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
+// for (Dispatch dispatch : dispatches) {
+// jgPushUtil.push(2, "有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
+// }
}
if (reassign.getPayType() == 4) {
@@ -619,14 +632,14 @@
reassign.setPayOrder(order_id);
reassign.setPayTime(new Date());
this.updateById(reassign);
- //开始推送调度单
- Map<String, String> map = new HashMap<>();
- map.put("orderId", reassign.getOrderId().toString());
- map.put("orderType", reassign.getOrderType().toString());
- List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
- for (Dispatch dispatch : dispatches) {
- jgPushUtil.push(2, "有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
- }
+// //开始推送调度单
+// Map<String, String> map = new HashMap<>();
+// map.put("orderId", reassign.getOrderId().toString());
+// map.put("orderType", reassign.getOrderType().toString());
+// List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
+// for (Dispatch dispatch : dispatches) {
+// jgPushUtil.push(2, "有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
+// }
}
query.setState(2);
query.setCode(order_id);
@@ -638,6 +651,7 @@
orderCrossCity1.setOldState(orderCrossCity1.getState());
orderCrossCity1.setState(11);
orderCrossCity1.setReassignNotice(2);
+ orderCrossCity1.setIsReassign(2);
orderCrossCityService.updateById(orderCrossCity1);
System.out.println("==============跨城修改改派通知状态完毕===================" + orderCrossCity1);
@@ -683,6 +697,7 @@
orderPrivateCar.setOldState(orderPrivateCar.getState());
orderPrivateCar.setState(11);
orderPrivateCar.setReassignNotice(2);
+ orderPrivateCar.setIsReassign(2);
orderPrivateCarService.updateById(orderPrivateCar);
//添加已收入明细
@@ -694,6 +709,7 @@
orderTaxi.setOldState(orderTaxi.getState());
orderTaxi.setState(11);
orderTaxi.setReassignNotice(2);
+ orderTaxi.setIsReassign(2);
orderTaxiService.updateById(orderTaxi);
//添加已收入明细
@@ -705,6 +721,7 @@
orderLogistics.setOldState(orderLogistics.getState());
orderLogistics.setState(11);
orderLogistics.setReassignNotice(2);
+ orderLogistics.setIsReassign(2);
orderLogisticsService.updateById(orderLogistics);
//添加已收入明细
@@ -716,6 +733,7 @@
orderLogistics1.setOldState(orderLogistics1.getState());
orderLogistics1.setState(11);
orderLogistics1.setReassignNotice(2);
+ orderLogistics1.setIsReassign(2);
orderLogisticsService.updateById(orderLogistics1);
//添加已收入明细
@@ -724,14 +742,14 @@
break;
}
systemNoticeService.addSystemNotice(2, "您已使用" + (type == 1 ? "微信" : (type == 2 ? "支付宝" : "云闪付")) + "成功支付改派申请费用!", reassign.getOriginalDriverId(), 1);
- //开始推送调度单
- Map<String, String> map = new HashMap<>();
- map.put("orderId", reassign.getOrderId().toString());
- map.put("orderType", reassign.getOrderType().toString());
- List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
- for (Dispatch dispatch : dispatches) {
- jgPushUtil.push(2, "有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
- }
+// //开始推送调度单
+// Map<String, String> map = new HashMap<>();
+// map.put("orderId", reassign.getOrderId().toString());
+// map.put("orderType", reassign.getOrderType().toString());
+// List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
+// for (Dispatch dispatch : dispatches) {
+// jgPushUtil.push(2, "有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
+// }
System.out.println("==============其他订单完毕===================");
} else {
System.err.println("预支付数据异常(orderId = " + id + ")");
@@ -771,50 +789,58 @@
}
OpenCity openCity = openCityService.openCity1(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
List<PushOrder> querys = pushOrderService.querys(null, 2, openCity.getId());//获取需要推送的次数
- int size=18;
- for (int i = 1; i <= size; i++) {
- int finalI = i;
- PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
- System.out.println("pushOrder:" + pushOrder);
- //获取空闲司机
- List<Driver> list = driverService.queryIdleDriver(2, orderTaxi.getStartLon(), orderTaxi.getStartLat(), pushOrder.getPushDistance(), null);//所有附近空闲司机
- list = list.stream().filter(e -> e.getId() != uid).collect(Collectors.toList());
- OrderTaxi orderTaxi1 = orderTaxiService.selectById(orderTaxi.getId());
- if (list.size() > 0) {
- double driverProportion = pushOrder.getDriverProportion() / 100;//推送占比计算成小数
- int lastIndex = Double.valueOf(list.size() * driverProportion).intValue();//计算占比转成整数(下标截取)
- lastIndex = lastIndex == 0 ? list.size() : lastIndex;
- list = list.subList(0, lastIndex);//获取空闲司机中占比数据
- for (Driver driver : list) {//开始进行推送
- //查询是否在限制推单范围内
- boolean bo = false;
- for (Integer integer : integers) {
- if (integer.compareTo(driver.getId()) == 0) {
- bo = true;
- break;
+ int num = 0;
+ for (int j = 0; j < 6; j++) {
+ Boolean push = false;
+ for (int i = 1; i <= querys.size(); i++) {
+ int finalI = i;
+ PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
+ System.out.println("pushOrder:" + pushOrder);
+ //获取空闲司机
+ List<Driver> list = driverService.queryIdleDriver(2, orderTaxi.getStartLon(), orderTaxi.getStartLat(), pushOrder.getPushDistance(), null);//所有附近空闲司机
+ list = list.stream().filter(e -> e.getId() != uid).collect(Collectors.toList());
+ OrderTaxi orderTaxi1 = orderTaxiService.selectById(orderTaxi.getId());
+ if (list.size() > 0) {
+ double driverProportion = pushOrder.getDriverProportion() / 100;//推送占比计算成小数
+ int lastIndex = Double.valueOf(list.size() * driverProportion).intValue();//计算占比转成整数(下标截取)
+ lastIndex = lastIndex == 0 ? list.size() : lastIndex;
+ list = list.subList(0, lastIndex);//获取空闲司机中占比数据
+ for (Driver driver : list) {//开始进行推送
+ //查询是否在限制推单范围内
+ boolean bo = false;
+ for (Integer integer : integers) {
+ if (integer.compareTo(driver.getId()) == 0) {
+ bo = true;
+ break;
+ }
}
+ if (bo) {
+ continue;
+ }
+ pushUtil.pushOrderState(2, driver.getId(), orderTaxi.getId(), 2, orderTaxi.getState(), pushOrder.getPushTime());
}
- if (bo) {
- continue;
- }
- pushUtil.pushOrderState(2, driver.getId(), orderTaxi.getId(), 2, orderTaxi.getState(), pushOrder.getPushTime());
+ }
+ Thread.sleep(pushOrder.getPushTime() * 1000);//设置等待时间
+ Integer state = orderTaxi1.getState();
+ if (state != 1 || state!= 11) {
+ orderIds.remove(orderTaxi.getId());
+ push = true;
+ break;
+ }
+ if (num == 18 && (state == 1 || state==11)) {
+ System.err.println("结束改派退单-------------修改订单为取消状态");
+ pushUtil.pushEndPush(1, orderTaxi.getUserId(), orderTaxi.getId(), 2, 11);
+ pushUtil.pushOrderState(2, orderTaxi.getDriverId(), orderTaxi.getId(), 2, 10);
+ orderTaxi1.setState(10);
+ orderTaxiService.updateById(orderTaxi1);
+ orderIds.remove(orderTaxi.getId());
}
}
- Thread.sleep(pushOrder.getPushTime() * 1000);//设置等待时间
- Integer state = orderTaxi1.getState();
- if (state != 1 || state!= 11) {
- orderIds.remove(orderTaxi.getId());
+ if(push){
break;
}
- if (i == 18 && (state == 1 || state==11)) {
- System.err.println("结束改派退单-------------修改订单为取消状态");
- pushUtil.pushEndPush(1, orderTaxi.getUserId(), orderTaxi.getId(), 2);
- pushUtil.pushOrderState(2, orderTaxi.getDriverId(), orderTaxi.getId(), 2, 10);
- orderTaxi1.setState(10);
- orderTaxiService.updateById(orderTaxi1);
- orderIds.remove(orderTaxi.getId());
- }
}
+
} catch (Exception e) {
e.printStackTrace();
}
@@ -843,57 +869,67 @@
}
OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//获取需要推送的次数
- int size=18;
- for (int i = 1; i <= size; i++) {
- OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(id);
- if (null == orderPrivateCar || (orderPrivateCar.getState() > 1 && orderPrivateCar.getState() != 11)) {
- break;
- }
- int finalI = i;
- PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
- System.out.println("pushOrder:" + pushOrder);
+ int num = 0;
+ for (int j = 0; j < 6; j++) {
+ Boolean push = false;
+ for (int i = 1; i <= querys.size(); i++) {
+ num++;
+ OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(id);
+ if (null == orderPrivateCar || (orderPrivateCar.getState() > 1 && orderPrivateCar.getState() != 11)) {
+ push = true;
+ break;
+ }
+ int finalI = i;
+ PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
+ System.out.println("pushOrder:" + pushOrder);
- if (orderPrivateCar.getState() > 1 && orderPrivateCar.getState() != 11) {
- break;
- }
- //获取空闲司机
- List<Driver> list = driverService.queryIdleDriver(orderType, orderPrivateCar.getServerCarModelId(), orderPrivateCar.getStartLon(), orderPrivateCar.getStartLat(), pushOrder.getPushDistance(), null);//所有附近空闲司机
- list = list.stream().filter(e -> !e.getId().equals(uid)).collect(Collectors.toList());
- if (list.size() > 0) {
- double driverProportion = pushOrder.getDriverProportion() / 100;//推送占比计算成小数
- int lastIndex = Double.valueOf(list.size() * driverProportion).intValue();//计算占比转成整数(下标截取)
- lastIndex = lastIndex == 0 ? list.size() : lastIndex;
- list = list.subList(0, lastIndex);//获取空闲司机中占比数据
- for (Driver driver : list) {//开始进行推送
- boolean bo = false;
- for (Integer integer : integers) {
- if (integer.compareTo(driver.getId()) == 0) {
- bo = true;
- break;
+ if (orderPrivateCar.getState() > 1 && orderPrivateCar.getState() != 11) {
+ push = true;
+ break;
+ }
+ //获取空闲司机
+ List<Driver> list = driverService.queryIdleDriver(orderType, orderPrivateCar.getServerCarModelId(), orderPrivateCar.getStartLon(), orderPrivateCar.getStartLat(), pushOrder.getPushDistance(), null);//所有附近空闲司机
+ list = list.stream().filter(e -> !e.getId().equals(uid)).collect(Collectors.toList());
+ if (list.size() > 0) {
+ double driverProportion = pushOrder.getDriverProportion() / 100;//推送占比计算成小数
+ int lastIndex = Double.valueOf(list.size() * driverProportion).intValue();//计算占比转成整数(下标截取)
+ lastIndex = lastIndex == 0 ? list.size() : lastIndex;
+ list = list.subList(0, lastIndex);//获取空闲司机中占比数据
+ for (Driver driver : list) {//开始进行推送
+ boolean bo = false;
+ for (Integer integer : integers) {
+ if (integer.compareTo(driver.getId()) == 0) {
+ bo = true;
+ break;
+ }
}
+ if (bo) {
+ continue;
+ }
+ pushUtil.pushOrderState(2, driver.getId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), pushOrder.getPushTime());
}
- if (bo) {
- continue;
- }
- pushUtil.pushOrderState(2, driver.getId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), pushOrder.getPushTime());
+ }
+ Thread.sleep(pushOrder.getPushTime() * 1000);//设置等待时间
+ Integer state = orderPrivateCar.getState();
+ if (state > 1 && state != 11) {
+ orderIds.remove(orderPrivateCar.getId());
+ push = true;
+ return;
+ }
+ if (num == 18 && (state == 1 || state==11)) {
+ System.err.println("结束改派退单-------------修改订单为取消状态");
+ pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, 11);
+ pushUtil.pushReassignEndCancel(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, 10);
+ orderPrivateCar.setState(10);
+ orderPrivateCarService.updateById(orderPrivateCar);
+ orderIds.remove(orderPrivateCar.getId());
}
}
- Thread.sleep(pushOrder.getPushTime() * 1000);//设置等待时间
- Integer state = orderPrivateCar.getState();
- if (state > 1 && state != 11) {
- orderIds.remove(orderPrivateCar.getId());
- return;
+ if(push){
+ break;
}
- if (i == 18 && (state == 1 || state==11)) {
- System.err.println("结束改派退单-------------修改订单为取消状态");
- pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1);
- pushUtil.pushReassignEndCancel(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, 10);
- orderPrivateCar.setState(10);
- orderPrivateCarService.updateById(orderPrivateCar);
- orderIds.remove(orderPrivateCar.getId());
- }
-
}
+
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
index 8393e30..19e7c69 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
@@ -109,7 +109,7 @@
* @param orderId
* @param orderType
*/
- public void pushEndPush(Integer type, Integer uid, Integer orderId, Integer orderType) {
+ public void pushEndPush(Integer type, Integer uid, Integer orderId, Integer orderType, Integer state) {
JSONObject jsonObject = new JSONObject();
jsonObject.put("code", 200);
jsonObject.put("msg", "SUCCESS");
@@ -117,6 +117,7 @@
Map<String, Object> map = new HashMap<>();
map.put("orderId", orderId);
map.put("orderType", orderType);
+ map.put("state", state);
jsonObject.put("data", map);
//调用推送
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
index b16392a..7d4447d 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
@@ -528,9 +528,9 @@
tradePayOffData.setPaymentInfos(paymentInfoRequests);
List<GoodsInfo> goodsInfo = new ArrayList<>();
GoodsInfo goodsInfo1 = new GoodsInfo();
- goodsInfo1.setMerchantCode("B00000905");
- goodsInfo1.setCustId("CB0000004686");
- goodsInfo1.setCustName("证联消费平台交易客户");
+ goodsInfo1.setMerchantCode("prod".equals(qianYunTongConfig.getActiveProfile()) ? "B00001404" : "B00000905");
+ goodsInfo1.setCustId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "CB0000004853" : "CB0000004686");
+ goodsInfo1.setCustName("prod".equals(qianYunTongConfig.getActiveProfile()) ? "黔南云码通数字产业运营有限公司" : "证联消费平台交易客户");
goodsInfo1.setBusinessType("10408");
goodsInfo1.setAgreementNo("prod".equals(qianYunTongConfig.getActiveProfile()) ? "00000402485377063581755054680461" : "00000000468618354161754464398681");
goodsInfo1.setProfitSharing("1");
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/dao/mapping/OrderTaxiMapper.xml b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/dao/mapping/OrderTaxiMapper.xml
index b321971..e4421af 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/dao/mapping/OrderTaxiMapper.xml
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/dao/mapping/OrderTaxiMapper.xml
@@ -148,7 +148,7 @@
payManner as payManner,
UNIX_TIMESTAMP(travelTime) as travelTime,
remark as remark
- from t_order_taxi where driverId = #{driverId}
+ from t_order_taxi where driverId = #{driverId} and recoveryOrder = 0
<if test="state == 1">
and state != 1
</if>
@@ -275,7 +275,7 @@
a.startLat as startLat,
a.endLon as endLon,
a.endLat as endLat,
- a.orderMoney as orderMoney,
+ if(a.abnormal = 2 and a.abnormalStatus = 2, a.responsibilityMoney, a.orderMoney) as orderMoney,
a.payManner as payManner,
a.thankYouFee,
a.trackId as trackId,
diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
index 9d06f60..bc3a9eb 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
@@ -222,7 +222,7 @@
// }
// 是否推广订单
- Integer promotion = isPromotion(orderTaxi.getUserId());
+ Integer promotion = isPromotion(orderTaxi.getUserId(), driver.getPlaceOfEmployment());
if(promotion!=null){
orderTaxi.setPromotion(2);
Driver driver1 = driverService.selectById(promotion);
@@ -251,18 +251,20 @@
orderTaxi.setTravelId(travelItinerary);
}else{
//改派抢单
- Company company1 = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
- request1.setOrderId(orderTaxi.getTravelId());
- request1.setStatus(orderTaxi.getState());
- request1.setDriverId(driver.getEmpId().toString());
- if(2 == orderTaxi.getPromotion()){
- Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
- request1.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderTaxi.getTravelId())){
+ Company company1 = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
+ request1.setOrderId(orderTaxi.getTravelId());
+ request1.setStatus(orderTaxi.getState());
+ request1.setDriverId(driver.getEmpId().toString());
+ if(2 == orderTaxi.getPromotion()){
+ Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
+ request1.setPromoterId(driver1.getEmpId().toString());
+ }
+ request1.setSupplierShopId(company1.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request1);
}
- request1.setSupplierShopId(company1.getEnterCode());
- OrderUtil.modifyTravelItinerary(request1);
}
this.updateById(orderTaxi);
@@ -336,11 +338,11 @@
return ResultUtil.success(orderTaxi.getId());
}
- private Integer isPromotion(Integer userId){
+ private Integer isPromotion(Integer userId, String code){
UserInfo userInfo = userInfoMapper.selectById(userId);
if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){
- String registAreaCode = userInfo.getRegistAreaCode();
- TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("state",1).eq("districtCode", registAreaCode).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 2 + ", bizType) limit 1"));
+ TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("state",1)
+ .eq("districtCode", code).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 2 + ", bizType) limit 1"));
if(tDriverPromotionActivity!=null){
return userInfo.getBindDriverId();
}
@@ -379,6 +381,7 @@
orderTaxi.setOrderType(orderPrivateCar.getOrderType());
orderTaxi.setOrderSource(orderPrivateCar.getOrderSource());
orderTaxi.setIsDelete(1);
+ orderTaxi.setIsReassign(1);
return orderTaxi;
}
@@ -531,19 +534,21 @@
}
this.updateById(orderTaxi);
- Driver driver = driverService.selectById(orderTaxi.getDriverId());
- Company company = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
- request.setOrderId(orderTaxi.getTravelId());
- request.setStatus(orderTaxi.getState());
- request.setDriverId(driver.getEmpId().toString());
- if(2 == orderTaxi.getPromotion()){
- Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
- request.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderTaxi.getTravelId())){
+ Driver driver = driverService.selectById(orderTaxi.getDriverId());
+ Company company = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+ request.setOrderId(orderTaxi.getTravelId());
+ request.setStatus(orderTaxi.getState());
+ request.setDriverId(driver.getEmpId().toString());
+ if(2 == orderTaxi.getPromotion()){
+ Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
+ request.setPromoterId(driver1.getEmpId().toString());
+ }
+ request.setSupplierShopId(company.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request);
}
- request.setSupplierShopId(company.getEnterCode());
- OrderUtil.modifyTravelItinerary(request);
// TODO: 2020/6/5 推送状态
new Thread(new Runnable() {
@@ -589,18 +594,20 @@
this.updateById(orderTaxi);
Driver driver = driverService.selectById(orderTaxi.getDriverId());
- Company company = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
- request.setOrderId(orderTaxi.getTravelId());
- request.setStatus(orderTaxi.getState());
- request.setDriverId(driver.getEmpId().toString());
- if(2 == orderTaxi.getPromotion()){
- Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
- request.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderTaxi.getTravelId())){
+ Company company = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+ request.setOrderId(orderTaxi.getTravelId());
+ request.setStatus(orderTaxi.getState());
+ request.setDriverId(driver.getEmpId().toString());
+ if(2 == orderTaxi.getPromotion()){
+ Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
+ request.setPromoterId(driver1.getEmpId().toString());
+ }
+ request.setSupplierShopId(company.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request);
}
- request.setSupplierShopId(company.getEnterCode());
- OrderUtil.modifyTravelItinerary(request);
//回滚司机状态为空闲
driver.setState(2);
@@ -642,18 +649,20 @@
this.updateById(orderTaxi);
Driver driver = driverService.selectById(orderTaxi.getDriverId());
- Company company1 = companyService.selectById(driver.getCompanyId());
- //中台修改订单状态
- ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
- request1.setOrderId(orderTaxi.getTravelId());
- request1.setStatus(orderTaxi.getState());
- request1.setDriverId(driver.getEmpId().toString());
- if(2 == orderTaxi.getPromotion()){
- Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
- request1.setPromoterId(driver1.getEmpId().toString());
+ if(ToolUtil.isNotEmpty(orderTaxi.getTravelId())){
+ Company company1 = companyService.selectById(driver.getCompanyId());
+ //中台修改订单状态
+ ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
+ request1.setOrderId(orderTaxi.getTravelId());
+ request1.setStatus(orderTaxi.getState());
+ request1.setDriverId(driver.getEmpId().toString());
+ if(2 == orderTaxi.getPromotion()){
+ Driver driver1 = driverService.selectById(orderTaxi.getPromotionDriverId());
+ request1.setPromoterId(driver1.getEmpId().toString());
+ }
+ request1.setSupplierShopId(company1.getEnterCode());
+ OrderUtil.modifyTravelItinerary(request1);
}
- request1.setSupplierShopId(company1.getEnterCode());
- OrderUtil.modifyTravelItinerary(request1);
//回滚司机状态为空闲
driver.setState(2);
--
Gitblit v1.7.1