From 8911724ef0dad89ca1d5705dd4fb7ee0ca860f2a Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 16 八月 2023 15:36:53 +0800 Subject: [PATCH] 合并代码 --- driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/util/PushUtil.java | 31 +++++++++++++++ driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java | 17 ++++++++ driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderPositionServiceImpl.java | 15 +++++++ driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/PushOrderInfoWarpper.java | 2 + 4 files changed, 65 insertions(+), 0 deletions(-) diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java index 78592c1..29c57b5 100644 --- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java +++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java @@ -12,6 +12,7 @@ import com.supersavedriving.driver.modular.system.util.MallBook.model.ReceiveUser; import com.supersavedriving.driver.modular.system.util.MallBook.util.RSASignature; import com.supersavedriving.driver.modular.system.util.MallBook.util.TrhRequest; +import com.supersavedriving.driver.modular.system.util.PushUtil; import com.supersavedriving.driver.modular.system.util.rongyun.RongYunUtil; import com.supersavedriving.driver.modular.system.util.rongyun.model.CloudRecordingCallback; import com.supersavedriving.driver.modular.system.warpper.*; @@ -62,6 +63,9 @@ @Autowired private IDivisionRecordService divisionRecordService; + + @Autowired + private PushUtil pushUtil; @@ -644,4 +648,17 @@ e.printStackTrace(); } } + + + /** + * 管理后台调用推送 + * @param id + * @param type + * @param pushOrderInfoWarpper + */ + @ResponseBody + @PostMapping("/base/order/pushOrderInfo") + public void pushOrderInfo(Integer id, Integer type, PushOrderInfoWarpper pushOrderInfoWarpper){ + pushUtil.pushOrderInfo(id, type, pushOrderInfoWarpper); + } } diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderPositionServiceImpl.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderPositionServiceImpl.java index 00b1cd2..4ee5ef9 100644 --- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderPositionServiceImpl.java +++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderPositionServiceImpl.java @@ -7,6 +7,7 @@ import com.supersavedriving.driver.modular.system.model.Order; import com.supersavedriving.driver.modular.system.service.IOrderService; import com.supersavedriving.driver.modular.system.util.GeodesyUtil; +import com.supersavedriving.driver.modular.system.util.PushUtil; import com.supersavedriving.driver.modular.system.util.RedisUtil; import com.supersavedriving.driver.modular.system.warpper.DriverPositionWarpper; import com.supersavedriving.driver.modular.system.warpper.OrderPositionWarpper; @@ -34,6 +35,9 @@ @Autowired private IOrderService orderService; + @Autowired + private PushUtil pushUtil; + private Map<String, Integer> map = new HashMap<>(); @@ -53,6 +57,17 @@ if(null == order.getDriverId() || order.getDriverId().compareTo(driverId) != 0){ return; } + //开始服务提醒 + if(order.getState() == 104){ + String fromLonLat = order.getStartLng() + "," + order.getStartLat(); + String toLonLat = driverPositionWarpper.getLon() + "," + driverPositionWarpper.getLat(); + Map<String, Double> distance = GeodesyUtil.getDistance(fromLonLat, toLonLat); + Double wgs84 = distance.get("WGS84"); + if(wgs84.compareTo(200D) >= 0){ + pushUtil.pushStartServer(2, driverId); + } + } + if(order.getState() != 105 && order.getState() != 401){ return; } diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/util/PushUtil.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/util/PushUtil.java index 78fa9da..1da7bbc 100644 --- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/util/PushUtil.java +++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/util/PushUtil.java @@ -265,4 +265,35 @@ System.err.println(jsonObject1.getString("msg")); } } + + + /** + * 提醒开始服务推送 + * @param id + * @param type + */ + public void pushStartServer(Integer id, Integer type){ + JSONObject msg = new JSONObject(); + msg.put("code", 200); + msg.put("msg", "SUCCESS"); + msg.put("method", "START_SERVER"); + msg.put("data", ""); + + //调用推送 + HttpHeaders headers = new HttpHeaders(); + // 以表单的方式提交 + headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); + //将请求头部和参数合成一个请求 + MultiValueMap<String, Object> params = new LinkedMultiValueMap<>(); + params.add("msg", msg.toJSONString()); + params.add("id", id.toString()); + params.add("type", type.toString()); + HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers); + String s = internalRestTemplate.postForObject("http://zuul-gateway/netty/sendMsgToClient",requestEntity , String.class); + JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class); + if(jsonObject1.getIntValue("code") != 200){ + logger.debug(jsonObject1.getString("msg")); + System.err.println(jsonObject1.getString("msg")); + } + } } diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/PushOrderInfoWarpper.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/PushOrderInfoWarpper.java index c280051..29b8571 100644 --- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/PushOrderInfoWarpper.java +++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/PushOrderInfoWarpper.java @@ -21,4 +21,6 @@ private String travelTime; @ApiModelProperty("101=待接单,102=已接单,103=前往预约点,104=到达预约点,105=开始服务,106=到达目的地,107=待支付,108=待评价,109=已完成,201=转单中,301=已取消,401=等待中") private Integer state; + @ApiModelProperty("取消方(1=用户,2=司机,3=平台)") + private Integer cancelObject; } -- Gitblit v1.7.1