liujie
2023-08-16 9d5309c820d525b46e65490475957b641707db51
Merge remote-tracking branch 'origin/master'
9个文件已修改
1个文件已添加
154 ■■■■■ 已修改文件
driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderPositionServiceImpl.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/util/PushUtil.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/PushOrderInfoWarpper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/PushOrderInfoWarpper.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/OrderServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/warpper/PushOrderInfoWarpper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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);
    }
}
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;
        }
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"));
        }
    }
}
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;
}
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;
    }
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;
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";
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/PushOrderInfoWarpper.java
New file
@@ -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;
}
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");
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;
}