From 9d5309c820d525b46e65490475957b641707db51 Mon Sep 17 00:00:00 2001 From: liujie <liujie> Date: 星期三, 16 八月 2023 15:57:05 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/warpper/PushOrderInfoWarpper.java | 2 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/util/PushUtil.java | 32 ++++++++++ management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/PushOrderInfoWarpper.java | 26 ++++++++ driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java | 17 +++++ management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java | 2 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderPositionServiceImpl.java | 15 +++++ management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java | 30 ++++++++- driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/PushOrderInfoWarpper.java | 2 user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/OrderServiceImpl.java | 1 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java | 27 +++++++++ 10 files changed, 149 insertions(+), 5 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..c49b452 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,36 @@ System.err.println(jsonObject1.getString("msg")); } } + + + /** + * 提醒开始服务推送 + * @param id + * @param type + */ + public void pushStartServer(Integer id, Integer type){ + Map<String, Object> map = new HashMap<>(); + JSONObject msg = new JSONObject(); + msg.put("code", 200); + msg.put("msg", "SUCCESS"); + msg.put("method", "START_SERVER"); + msg.put("data", map); + + //调用推送 + 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; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java index 764e5ff..0ae9820 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java @@ -2,6 +2,7 @@ import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.base.controller.BaseController; @@ -21,8 +22,11 @@ import com.stylefeng.guns.modular.system.service.ITCancelOrderService; import com.stylefeng.guns.modular.system.service.ITDriverService; import com.stylefeng.guns.modular.system.service.ITOrderService; +import com.stylefeng.guns.modular.system.util.HttpRequestUtil; +import com.stylefeng.guns.modular.system.util.PushURL; import com.stylefeng.guns.modular.system.util.RedisUtil; import com.stylefeng.guns.modular.system.util.ResultUtil; +import com.stylefeng.guns.modular.system.warpper.PushOrderInfoWarpper; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; @@ -42,10 +46,7 @@ import java.math.BigDecimal; import java.text.DateFormat; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; /** * 控制器 @@ -291,6 +292,27 @@ tDriver.setServerStatus(1); driverService.updateById(tDriver); } + + Map<String, String> map = new HashMap<>(); + map.put("id", tOrder.getUserId().toString()); + map.put("type", "1"); + PushOrderInfoWarpper pushOrderInfoWarpper = new PushOrderInfoWarpper(); + pushOrderInfoWarpper.setId(tOrder.getId().longValue()); + pushOrderInfoWarpper.setState(tOrder.getState()); + pushOrderInfoWarpper.setCancelObject(3); + map.put("pushOrderInfoWarpper", JSON.toJSONString(pushOrderInfoWarpper)); + String result = HttpRequestUtil.postRequest(PushURL.order_push_url, map); + if(null != tOrder.getDriverId()){ + map = new HashMap<>(); + map.put("id", tOrder.getDriverId().toString()); + map.put("type", "1"); + PushOrderInfoWarpper pushOrderInfoWarpper1 = new PushOrderInfoWarpper(); + pushOrderInfoWarpper1.setId(tOrder.getId().longValue()); + pushOrderInfoWarpper1.setState(tOrder.getState()); + pushOrderInfoWarpper1.setCancelObject(3); + map.put("pushOrderInfoWarpper", JSON.toJSONString(pushOrderInfoWarpper1)); + result = HttpRequestUtil.postRequest(PushURL.order_push_url, map); + } redisUtil.setStrValue("cancelOrder", "true"); return SUCCESS_TIP; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java index 8d3090d..db8e4b7 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java @@ -31,46 +31,57 @@ /** * 负责人姓名 */ + @TableField(value = "principal") private String principal; /** * 负责人电话 */ + @TableField(value = "principalPhone") private String principalPhone; /** * 邮箱 */ + @TableField(value = "email") private String email; /** * 代理区域省编号 */ + @TableField(value = "provinceCode") private String provinceCode; /** * 代理区域省名称 */ + @TableField(value = "provinceName") private String provinceName; /** * 代理区域市编号 */ + @TableField(value = "cityCode") private String cityCode; /** * 代理区域市名称 */ + @TableField(value = "cityName") private String cityName; /** * 代理区域区编号 */ + @TableField(value = "districtCode") private String districtCode; /** * 代理区域区名称 */ + @TableField(value = "districtName") private String districtName; /** * 状态(1=正常,2=冻结,3=删除) */ + @TableField(value = "status") private Integer status; /** * 添加时间 */ + @TableField(value = "createTime") private Date createTime; @TableField(value = "serviceCalls") @ApiModelProperty(value = "客服电话") @@ -539,6 +550,22 @@ this.bankStatus = bankStatus; } + public String getDistrictCode() { + return districtCode; + } + + public void setDistrictCode(String districtCode) { + this.districtCode = districtCode; + } + + public String getDistrictName() { + return districtName; + } + + public void setDistrictName(String districtName) { + this.districtName = districtName; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java index fac63ae..f8e1dfa 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java @@ -3,7 +3,7 @@ public class PushURL { // public static String zull_user_url = "http://127.0.0.1:81"; public static String zull_user_url = "https://okyueche.com:443"; - public static String order_push_url = zull_user_url + "/driver/base/order/pushOrderState"; + public static String order_push_url = zull_user_url + "/driver/base/order/pushOrderInfo"; public static String driver_auth_url = zull_user_url + "/driver/base/driver/sendsms"; public static String withdraw_auth_url = zull_user_url + "/driver/base/withdrawal/withdrawalAudit"; public static String cancel_order_url = zull_user_url + "/user/base/order/sendOrderState"; diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/PushOrderInfoWarpper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/PushOrderInfoWarpper.java new file mode 100644 index 0000000..9a04ab6 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/PushOrderInfoWarpper.java @@ -0,0 +1,26 @@ +package com.stylefeng.guns.modular.system.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class PushOrderInfoWarpper { + @ApiModelProperty("订单id") + private Long id; + @ApiModelProperty("司机纬度") + private String driverLat; + @ApiModelProperty("司机经度") + private String driverLng; + @ApiModelProperty("等待时长(分钟)") + private String waitTime; + @ApiModelProperty("行驶里程(公里)") + private Double actualMileage; + @ApiModelProperty("行驶时间(分钟)") + 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; +} diff --git a/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/OrderServiceImpl.java b/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/OrderServiceImpl.java index ec5e03e..02a3d6b 100644 --- a/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/OrderServiceImpl.java +++ b/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/OrderServiceImpl.java @@ -816,6 +816,7 @@ PushOrderInfoWarpper pushOrderInfoWarpper = new PushOrderInfoWarpper(); pushOrderInfoWarpper.setId(order.getId()); pushOrderInfoWarpper.setState(order.getState()); + pushOrderInfoWarpper.setCancelObject(1); pushUtil.pushOrderInfo(order.getDriverId(), 2, pushOrderInfoWarpper); } redisUtil.setStrValue("cancelOrder", "true"); diff --git a/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/warpper/PushOrderInfoWarpper.java b/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/warpper/PushOrderInfoWarpper.java index dc76e72..7500e1c 100644 --- a/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/warpper/PushOrderInfoWarpper.java +++ b/user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/warpper/PushOrderInfoWarpper.java @@ -27,4 +27,6 @@ private String endLng; @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