Pu Zhibing
4 天以前 8522e469e00e1cf6c0410165b0f76c806c13ca83
合并代码
37个文件已修改
3 文件已重命名
761 ■■■■■ 已修改文件
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/NettyServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/QianYunTongConfig.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/zhenglian/TokenUtil.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/zhenglian/ZhengLianUtil.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/config/QYTConfig.java 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/HomeController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/MerchantActivityGiveController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TEnterpriseWithdrawalController.java 115 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TAbnormalOrderCarController.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOrderPrivateCar.java 212 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TUser.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/OrderUtils.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/CreateEnterpriseRequest.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/EditStaffNodeRequest.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/QYTUserInfo.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/StaffNodeInfo.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/resources/application-prod.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
MessagePushTravel/pom.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MessagePushTravel/src/main/java/com/sinata/push/config/QYTConfig.java 66 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MessagePushTravel/src/main/java/com/sinata/push/util/echo/DiscardServerHandler.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MessagePushTravel/src/main/resources/application-prod.yml 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/resources/application-prod.yml 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/pom.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -485,7 +485,7 @@
        orderLogistics.setStartServiceTime(date);
        orderLogistics.setBoardingTime(date);
    
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + uid);
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + uid);
        if(ToolUtil.isNotEmpty(value)){
            String[] split = value.split(",");
            Map<String, String> geocode1 = gdMapGeocodingUtil.geocode(split[0], split[1]);
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -408,7 +408,7 @@
            if(order!=null){
                orders.addAll(order);
            }
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
            order = this.baseMapper.queryOrderInfo(orderId,5,value.split(",")[0],value.split(",")[1]);
            if(order!=null){
                orders.addAll(order);
@@ -423,7 +423,7 @@
            if(order!=null){
                orders.addAll(order);
            }
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
            order = this.baseMapper.queryOrderInfo(orderPrivateCar.getPid(),5,value.split(",")[0],value.split(",")[1]);
            if(order!=null){
                orders.addAll(order);
@@ -457,7 +457,7 @@
            orders.addAll(order);
        }
        OrderPrivateCar orderPrivateCar = this.baseMapper.selectById(orderId);
        String value = redisUtil.getValue("dache:DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
        String value = redisUtil.getValue("dache_DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
        order = this.baseMapper.queryOrderInfo(orderId,5,value.split(",")[0],value.split(",")[1]);
        if(order!=null){
            orders.addAll(order);
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -156,7 +156,7 @@
        List<Driver> drivers = driverMapper.queryIdleDriver(type, companyId);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driver.getId()));
            if(null != value){
                Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
@@ -173,7 +173,7 @@
        List<Driver> drivers = driverMapper.queryIdleDriver_(type, serverCarModelId, companyId);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driver.getId()));
            if(null != value){
                Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/NettyServiceImpl.java
@@ -108,7 +108,7 @@
        }
        //查看是否有可接单的数据
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(uid));
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(uid));
        if(ToolUtil.isNotEmpty(value)){
            String[] split = value.split(",");
            List<OrderStatusWarpper> list1 = this.searchOrder(split[0], split[1], uid);
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java
@@ -138,7 +138,7 @@
        OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
        Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
        Car car = carService.selectById(orderPrivateCar.getCarId());
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + orderPrivateCar.getDriverId());
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + orderPrivateCar.getDriverId());
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("Address", 450204);//发起地行政区划代码
        jsonObject.put("OrderId", orderPrivateCar.getOrderNum());//订单编号
@@ -170,7 +170,7 @@
    public void operateLogin(Integer driverId){
        Driver driver = driverService.selectById(driverId);
        Car car = carService.selectById(driver.getCarId());
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + driverId);
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + driverId);
        if(ToolUtil.isNotEmpty(value)){
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证号
@@ -201,7 +201,7 @@
    public void operateLogout(Integer driverId){
        Driver driver = driverService.selectById(driverId);
        Car car = carService.selectById(driver.getCarId());
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + driverId);
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + driverId);
        if(ToolUtil.isNotEmpty(value)){
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证号
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
@@ -368,7 +368,7 @@
            return;
        }
        //计算预计距离和剩余时间
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driverId));
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driverId));
        if(null == value || "".equals(value)){
            return;
        }
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/QianYunTongConfig.java
@@ -99,7 +99,7 @@
        }
        if("prod".equals(activeProfile)){
            this.setAppkey("10001104");
            this.setPrivateKeyPath("/root/server/app/key/private_key.pem");
            this.setPrivateKeyPath("/etraffic/server/private_key.pem");
            this.setUserName("xiwang");
            this.setStatus("1");
            this.setApiUrl("http://jjzhongtai.stqcloud.com:10010");
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/zhenglian/TokenUtil.java
@@ -30,7 +30,7 @@
        Map<String,String> headerMap = new HashMap<String,String>();
        MessageBody body = new MessageBody();
        headerMap.put("msgId", UUIDUtil.getRandomCode());
        headerMap.put("merchNo", "B00000871");
        headerMap.put("merchNo", zhengLianConfig.getMerchNo());
        headerMap.put("txCode", "ZLPAY.ACC.T0001");
        headerMap.put("version", "1.0.1");
        headerMap.put("signa", "1");
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/zhenglian/ZhengLianUtil.java
@@ -44,11 +44,12 @@
     * @throws Exception
     */
    public static ZLUserInfo getUserInfo(String appUserId, TradeTerminalInfo tradeTerminalInfo) throws Exception {
        log.info("正联配置信息:{}", JSON.toJSONString(zhengLianConfig));
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
        Map<String,String> headerMap = new HashMap<String,String>();
        MessageBody body = new MessageBody();
        headerMap.put("msgId", UUIDUtil.getRandomCode());
        headerMap.put("merchNo", "B00000871");
        headerMap.put("merchNo", zhengLianConfig.getMerchNo());
        headerMap.put("txCode", "ZLPAY.ACC.T0009");
        headerMap.put("version", "1.0.1");
        headerMap.put("signa", "1");
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
@@ -410,7 +410,7 @@
        orderTaxi.setStartServiceTime(date);
        orderTaxi.setBoardingTime(date);
    
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + uid);
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + uid);
        if (ToolUtil.isNotEmpty(value)) {
            String[] split = value.split(",");
            Map<String, String> geocode1 = gdMapGeocodingUtil.geocode(split[0], split[1]);
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/config/QYTConfig.java
@@ -1,32 +1,32 @@
package com.stylefeng.guns.config;
import com.stylefeng.guns.modular.system.util.PushURL;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import javax.annotation.PostConstruct;
/**
 * @author zhibing.pu
 * @Date 2025/8/12 13:58
 */
@Data
@Configuration
@ConfigurationProperties(prefix = "qyt")
public class QYTConfig {
    /**
     * 出行网关接口地址
     */
    private String chuxingUrl;
    /**
     * 代驾网关接口地址
     */
    private String daijiaUrl;
    @PostConstruct
    public void init() {
        PushURL.setQytConfig(this);
    }
}
//package com.stylefeng.guns.config;
//
//import com.stylefeng.guns.modular.system.util.PushURL;
//import lombok.Data;
//import org.springframework.boot.context.properties.ConfigurationProperties;
//import org.springframework.context.annotation.Configuration;
//
//import javax.annotation.PostConstruct;
//
///**
// * @author zhibing.pu
// * @Date 2025/8/12 13:58
// */
//@Data
//@Configuration
//@ConfigurationProperties(prefix = "qyt")
//public class QYTConfig {
//    /**
//     * 出行网关接口地址
//     */
//    private String chuxingUrl;
//    /**
//     * 代驾网关接口地址
//     */
//    private String daijiaUrl;
//
//
//    @PostConstruct
//    public void init() {
//        PushURL.setQytConfig(this);
//    }
//}
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/HomeController.java
@@ -399,7 +399,7 @@
        System.out.println(tDrivers.toString());
        for (TDriver tDriver : tDrivers) {
            Map<String, Object> d = new HashMap<>();
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + tDriver.getId());
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + tDriver.getId());
            System.out.println(value);
            if (ToolUtil.isEmpty(value)) {
                continue;
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/MerchantActivityGiveController.java
@@ -17,7 +17,7 @@
import com.stylefeng.guns.modular.system.response.MerchantActivityVo;
import com.stylefeng.guns.modular.system.response.UserRequest;
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.util.OrderUtil;
import com.stylefeng.guns.modular.system.util.OrderUtils;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -280,7 +280,7 @@
                    UserMerchantCoupon userMerchantCoupon = new UserMerchantCoupon();
                    userMerchantCoupon.setUserId(two.getUserId());
                    userMerchantCoupon.setUserType(two.getType());
                    userMerchantCoupon.setCode(OrderUtil.getRandomCode(16));
                    userMerchantCoupon.setCode(OrderUtils.getRandomCode(16));
                    userMerchantCoupon.setMerchantActivityId(merchantActivity.getId());
                    userMerchantCoupon.setMerchantCouponId(activitySlave.getMerchantCouponId());
                    userMerchantCoupon.setStatus(1);
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TEnterpriseWithdrawalController.java
@@ -37,21 +37,21 @@
@Controller
@RequestMapping("/tEnterpriseWithdrawal")
public class TEnterpriseWithdrawalController extends BaseController {
    private String PREFIX = "/system/tEnterpriseWithdrawal/";
    @Autowired
    private ITEnterpriseWithdrawalService tEnterpriseWithdrawalService;
    @Autowired
    private ITBankService bankService;
    @Autowired
    private ITBankNextService bankNextService;
    @Autowired
    private ShiroExtUtil shiroExtUtil;
    /**
     * 跳转到首页
     */
@@ -77,22 +77,22 @@
            if ("auditing".equals(companyId.getApplicationStatus()) || "".equals(companyId.getApplicationStatus())) {
                return PREFIX + "tEnterpriseWithdrawal_detail.html";
            } else if ("account_need_verify".equals(companyId.getApplicationStatus())) {
                model.addAttribute("bank",bankService.selectList(null));
                model.addAttribute("bankOne",bankNextService.selectList(null));
                model.addAttribute("bank", bankService.selectList(null));
                model.addAttribute("bankOne", bankNextService.selectList(null));
                return PREFIX + "tEnterpriseWithdrawal_edit.html";
            }else if("succeeded".equals(companyId.getApplicationStatus())){
                model.addAttribute("bank",bankService.selectList(null));
                model.addAttribute("bankOne",bankNextService.selectList(null));
                model.addAttribute("type",3);
            } else if ("succeeded".equals(companyId.getApplicationStatus())) {
                model.addAttribute("bank", bankService.selectList(null));
                model.addAttribute("bankOne", bankNextService.selectList(null));
                model.addAttribute("type", 3);
                return PREFIX + "tEnterpriseWithdrawal_edit.html";
            }else {
                model.addAttribute("bankOne",bankNextService.selectList(null));
                model.addAttribute("bank",bankService.selectList(null));
            } else {
                model.addAttribute("bankOne", bankNextService.selectList(null));
                model.addAttribute("bank", bankService.selectList(null));
                return PREFIX + "tEnterpriseWithdrawal_fail.html";
            }
        }else {
            model.addAttribute("item",new TEnterpriseWithdrawal());
            model.addAttribute("bank",bankService.selectList(null));
        } else {
            model.addAttribute("item", new TEnterpriseWithdrawal());
            model.addAttribute("bank", bankService.selectList(null));
            return PREFIX + "tEnterpriseWithdrawal_add.html";
        }
@@ -112,7 +112,7 @@
    @RequestMapping("/tEnterpriseWithdrawal_update/{tEnterpriseWithdrawalId}")
    public String tEnterpriseWithdrawalUpdate(@PathVariable Integer tEnterpriseWithdrawalId, Model model) {
        TEnterpriseWithdrawal tEnterpriseWithdrawal = tEnterpriseWithdrawalService.selectById(tEnterpriseWithdrawalId);
        model.addAttribute("item",tEnterpriseWithdrawal);
        model.addAttribute("item", tEnterpriseWithdrawal);
        LogObjectHolder.me().set(tEnterpriseWithdrawal);
        return PREFIX + "tEnterpriseWithdrawal_edit.html";
    }
@@ -125,42 +125,45 @@
    public Object list(String condition) {
        return tEnterpriseWithdrawalService.selectList(null);
    }
    @RequestMapping(value = "/cityList")
    @ResponseBody
    public Object cityList(String code,String name) {
       return bankNextService.selectList(new EntityWrapper<TBankNext>().eq("drecCode",code).like("bankName",name));
    public Object cityList(String code, String name) {
        return bankNextService.selectList(new EntityWrapper<TBankNext>().eq("drecCode", code).like("bankName", name));
    }
@Resource
private ITImgMidService itImgMidService;
    @Resource
    private ITImgMidService itImgMidService;
    /**
     * 新增
     */
    @RequestMapping(value = "/add")
    @ResponseBody
    @Transactional(readOnly = false,propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
    public Object add(TEnterpriseWithdrawal tEnterpriseWithdrawal,Integer accountType,String code,String businessExpireTimeOne,String unifiedSocialCreditCodeExpireTimeOne,String certificateExpireTimeOne) {
    @Transactional(readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
    public Object add(TEnterpriseWithdrawal tEnterpriseWithdrawal, Integer accountType, String code, String businessExpireTimeOne, String unifiedSocialCreditCodeExpireTimeOne, String certificateExpireTimeOne) {
        tEnterpriseWithdrawal.setCode(code);
        List<TEnterpriseWithdrawal> companyId = tEnterpriseWithdrawalService.selectList(new EntityWrapper<TEnterpriseWithdrawal>().eq("companyId", shiroExtUtil.getUser().getObjectId()));
        if(companyId.size()>0){
        if (companyId.size() > 0) {
            return "5001";
        }
        if(ToolUtil.isNotEmpty(businessExpireTimeOne)){
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime()+","+businessExpireTimeOne);
        }else {
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime()+",长期");
        if (ToolUtil.isNotEmpty(businessExpireTimeOne)) {
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + "," + businessExpireTimeOne);
        } else {
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + ",长期");
        }
        if(ToolUtil.isNotEmpty(unifiedSocialCreditCodeExpireTimeOne)){
        if (ToolUtil.isNotEmpty(unifiedSocialCreditCodeExpireTimeOne)) {
            tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + "," + unifiedSocialCreditCodeExpireTimeOne);
        } else {
            tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + ",长期");
        }
        if (ToolUtil.isNotEmpty(certificateExpireTimeOne)) {
            tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + "," + certificateExpireTimeOne);
        } else {
            tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + ",长期");
        }
        tEnterpriseWithdrawal.setIsAudit(1);
        tEnterpriseWithdrawal.setCompanyId(shiroExtUtil.getUser().getObjectId());
        tEnterpriseWithdrawal.setAccountType(accountType);
@@ -174,12 +177,12 @@
            TBankNext tBankNext = bankNextService.selectById(depositBank);
            tEnterpriseWithdrawal.setBankCode(tBankNext.getDrecCode());
            tEnterpriseWithdrawal.setBankBranchCode(tBankNext.getBankCode());
            tEnterpriseWithdrawal.setCopy1(itImgMidService.selectOne(new EntityWrapper<TImgMid>().eq("url",tEnterpriseWithdrawal.getBusinessLicense())).getMid());
            tEnterpriseWithdrawal.setCopy2(itImgMidService.selectOne(new EntityWrapper<TImgMid>().eq("url",tEnterpriseWithdrawal.getCorporateIdCardFrontPicture())).getMid());
            tEnterpriseWithdrawal.setCopy3(itImgMidService.selectOne(new EntityWrapper<TImgMid>().eq("url",tEnterpriseWithdrawal.getCorporateIdCardReversePicture())).getMid());
            System.out.println("----------"+"进件gogogo"+"----------");
            tEnterpriseWithdrawal.setCopy1(itImgMidService.selectOne(new EntityWrapper<TImgMid>().eq("url", tEnterpriseWithdrawal.getBusinessLicense())).getMid());
            tEnterpriseWithdrawal.setCopy2(itImgMidService.selectOne(new EntityWrapper<TImgMid>().eq("url", tEnterpriseWithdrawal.getCorporateIdCardFrontPicture())).getMid());
            tEnterpriseWithdrawal.setCopy3(itImgMidService.selectOne(new EntityWrapper<TImgMid>().eq("url", tEnterpriseWithdrawal.getCorporateIdCardReversePicture())).getMid());
            System.out.println("----------" + "进件gogogo" + "----------");
            tEnterpriseWithdrawal.setTransactionAuthorizationCode(Base64Util.encode(tEnterpriseWithdrawal.getTransactionAuthorizationCode()));
            tEnterpriseWithdrawal.setBusinessLicense(tEnterpriseWithdrawal.getBusinessLicense());
            tEnterpriseWithdrawal.setCorporateIdCardFrontPicture(tEnterpriseWithdrawal.getCorporateIdCardFrontPicture());
@@ -209,32 +212,32 @@
     */
    @RequestMapping(value = "/update")
    @ResponseBody
    public Object update(TEnterpriseWithdrawal tEnterpriseWithdrawal,Integer accountType,String businessExpireTimeOne,String unifiedSocialCreditCodeExpireTimeOne,String certificateExpireTimeOne) {
    public Object update(TEnterpriseWithdrawal tEnterpriseWithdrawal, Integer accountType, String businessExpireTimeOne, String unifiedSocialCreditCodeExpireTimeOne, String certificateExpireTimeOne) {
        tEnterpriseWithdrawal.setIsAudit(1);
        tEnterpriseWithdrawal.setAccountType(accountType);
        if(tEnterpriseWithdrawal.getEnterpriseType()==1){
        if (tEnterpriseWithdrawal.getEnterpriseType() == 1) {
            tEnterpriseWithdrawal.setAccountType(2);
        }
        if(ToolUtil.isNotEmpty(businessExpireTimeOne)){
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime()+","+businessExpireTimeOne);
        }else {
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime()+",长期");
        if (ToolUtil.isNotEmpty(businessExpireTimeOne)) {
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + "," + businessExpireTimeOne);
        } else {
            tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + ",长期");
        }
        if(ToolUtil.isNotEmpty(unifiedSocialCreditCodeExpireTimeOne)){
            tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime()+","+unifiedSocialCreditCodeExpireTimeOne);
        }else {
            tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime()+",长期");
        if (ToolUtil.isNotEmpty(unifiedSocialCreditCodeExpireTimeOne)) {
            tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + "," + unifiedSocialCreditCodeExpireTimeOne);
        } else {
            tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + ",长期");
        }
        if(ToolUtil.isNotEmpty(certificateExpireTimeOne)){
            tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime()+","+certificateExpireTimeOne);
        }else {
            tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime()+",长期");
        if (ToolUtil.isNotEmpty(certificateExpireTimeOne)) {
            tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + "," + certificateExpireTimeOne);
        } else {
            tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + ",长期");
        }
        try {
            TEnterpriseWithdrawal enterpriseWithdrawal = tEnterpriseWithdrawalService.selectById(tEnterpriseWithdrawal.getId());
            if(enterpriseWithdrawal.getMchId()!=null){
            if (enterpriseWithdrawal.getMchId() != null) {
                tEnterpriseWithdrawal.setMchId(enterpriseWithdrawal.getMchId());
            }
            tEnterpriseWithdrawal.setOutRequestNo(ToolUtil.getRandomString(32));
@@ -253,9 +256,9 @@
            tEnterpriseWithdrawalService.updateById(tEnterpriseWithdrawal);
            return SUCCESS_TIP;
        }catch (Exception e){
        } catch (Exception e) {
            e.printStackTrace();
            return  ERROR;
            return ERROR;
        }
    }
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TAbnormalOrderCarController.java
@@ -1,5 +1,6 @@
package com.stylefeng.guns.modular.system.controller.specialTrain;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
@@ -10,9 +11,13 @@
import com.stylefeng.guns.core.util.SinataUtil;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.dao.OrderCancelMapper;
import com.stylefeng.guns.modular.system.dao.TCompanyMapper;
import com.stylefeng.guns.modular.system.model.*;
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.util.*;
import com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil;
import com.stylefeng.guns.modular.system.util.qianyuntong.model.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.Sort;
@@ -35,6 +40,7 @@
 * @author fengshuonan
 * @Date 2020-09-02 17:28:59
 */
@Slf4j
@Controller
@RequestMapping("/abnormal")
public class TAbnormalOrderCarController extends BaseController {
@@ -84,8 +90,10 @@
    @Autowired
    private ITSystemNoticeService systemNoticeService;
    @Autowired
    private TCompanyMapper tCompanyMapper;
    /**
     * 跳转到快车订单首页
     */
@@ -710,8 +718,78 @@
            }
            tOrderPrivateCar.setAbnormalRemark(remark);
            tOrderPrivateCarService.updateById(tOrderPrivateCar);
        }
            //平台全责和司机全责需要调起备付金支付
            if(9 == tOrderPrivateCar.getState()){
                TDriver driver = tDriverService.selectById(tOrderPrivateCar.getDriverId());
                TCompany company = tCompanyMapper.selectById(driver.getCompanyId());
                TUser userInfo = userService.selectById(tOrderPrivateCar.getUserId());
                if(null == tOrderPrivateCar.getIsCreated()){
                    //先调中台创建订单
                    CreateOrderRequest createOrderRequest = new CreateOrderRequest();
                    createOrderRequest.setTreatShopId(driver.getEmpId().toString());
                    createOrderRequest.setField1("{\"profitSharing\":\"1\",\"isPromote\":\"" + (tOrderPrivateCar.getPromotion() == 2 ? 1 : 0) + "\"}");
                    createOrderRequest.setCharge(tOrderPrivateCar.getOrderMoney());
                    createOrderRequest.setOrderNo("PR" + tOrderPrivateCar.getId());
                    createOrderRequest.setOrderId(tOrderPrivateCar.getTravelId());
                    createOrderRequest.setCustomerId(userInfo.getOnconUUID());
                    OrderInfo orderInfo = com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil.tradeOrderCreate(createOrderRequest);
                    tOrderPrivateCar.setIsCreated(1);
                    tOrderPrivateCar.setTravelId(orderInfo.getOrderId());
                    tOrderPrivateCarService.updateById(tOrderPrivateCar);
                }
                //使用备付金进行支付订单
                TradePayOffData tradePayOffData = new TradePayOffData();
                tradePayOffData.setPartnerPayId(tOrderPrivateCar.getTravelId());
                tradePayOffData.setTotalFee(tOrderPrivateCar.getOrderMoney().multiply(new BigDecimal(100)).toString());
                tradePayOffData.setOrderDesc("完成订单");
                PayInfo payInfo = com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil.tradePayOff(tradePayOffData);
                String retCode = payInfo.getRetCode();
                if (!"000000".equals(retCode)) {
                    log.error("备付金支付失败:{}", payInfo.getRetMsg());
                    return "备付金支付失败:" + payInfo.getRetMsg();
                }
                PayInfoData data = payInfo.getData();
                String status = data.getStatus();
                if ("3".equals(status)) {
                    log.error("备付金支付失败:{}", payInfo.getRetMsg());
                    return "备付金支付失败:" + payInfo.getRetMsg();
                }
                if("0".equals(status)){
                    //查询支付信息
                    GetPaymentInfoDataRequest getPaymentInfoDataRequest = new GetPaymentInfoDataRequest();
                    getPaymentInfoDataRequest.setPartnerPayId(tOrderPrivateCar.getTravelId());
                    GetPaymentInfo getPaymentInfo = com.stylefeng.guns.modular.system.util.qianyuntong.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(tOrderPrivateCar.getTravelId());
                    paymentOrderRequest.setCharge(tOrderPrivateCar.getOrderMoney());
                    paymentOrderRequest.setPayTime(data.getPayTime());
                    paymentOrderRequest.setPaymentSerialNumber(payInfoData.getPayId());
                    OrderInfo orderInfo1 = OrderUtil.paymentOrder(paymentOrderRequest);
                    //中台修改订单状态
                    ModifyTravelItineraryRequest request1 = new ModifyTravelItineraryRequest();
                    request1.setOrderId(tOrderPrivateCar.getTravelId());
                    request1.setStatus(9);
                    if (null != tOrderPrivateCar.getDriverId()) {
                        request1.setDriverId(driver.getEmpId().toString());
                        request1.setSupplierShopId(company.getEnterCode());
                    }
                    if (2 == tOrderPrivateCar.getPromotion()) {
                        TDriver driver2 = tDriverService.selectById(tOrderPrivateCar.getPromotionDriverId());
                        request1.setPromoterId(driver2.getEmpId().toString());
                    }
                    OrderUtil.modifyTravelItinerary(request1);
                }
            }
        }
        if(type==2){
            TOrderCrossCity tOrderCrossCity = tOrderCrossCityService.selectOne(new EntityWrapper<TOrderCrossCity>().eq("id", orderNum));
            userId = tOrderCrossCity.getUserId();
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOrderPrivateCar.java
@@ -1,5 +1,6 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.IdType;
import java.math.BigDecimal;
import java.util.Date;
@@ -353,6 +354,73 @@
    private String voice;
    private Date voiceTime;
    /**
     * 是否异常订单 1否 2是
     */
    @TableField("abnormal")
    private Integer abnormal;
    /**
     * 推广订单 1否 2是
     */
    @TableField("promotion")
    private Integer promotion;
    private Date successTime;
    private String promotionUser;
    private String promotionPhone;
    /**
     * 乘客反馈情况
     */
    @TableField("abnormalIntro")
    private String abnormalIntro;
    /**
     * 乘客反馈图片
     */
    @TableField("abnormalImg")
    private String abnormalImg;
    private Integer totalPeopleNum;
    /**
     * 预估里程(米)
     */
    private Double estimateMileage;
    private Double estimateTime;
    private Integer spellSuccess;
    private String splitAllocation;
    private Long promotionActivityId;
    /**
     * 中台行程id
     */
    private String travelId;
    /**
     * 中台是否已创建订单(0=否,1=是)
     */
    private Integer isCreated;
    /**
     * 是否是追缴单(0=否,1=是)
     */
    private Integer recoveryOrder;
    /**
     * 是否生成追缴单(0=否,1=是)
     */
    private Integer isGenerateRecoveryOrder;
    /**
     * 原始订单id
     */
    private Integer oldOrderId;
    public String getVoice() {
        return voice;
@@ -1042,6 +1110,150 @@
        this.bindId = bindId;
    }
    public String getTravelId() {
        return travelId;
    }
    public void setTravelId(String travelId) {
        this.travelId = travelId;
    }
    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 getAbnormal() {
        return abnormal;
    }
    public void setAbnormal(Integer abnormal) {
        this.abnormal = abnormal;
    }
    public Integer getPromotion() {
        return promotion;
    }
    public void setPromotion(Integer promotion) {
        this.promotion = promotion;
    }
    public Date getSuccessTime() {
        return successTime;
    }
    public void setSuccessTime(Date successTime) {
        this.successTime = successTime;
    }
    public String getPromotionUser() {
        return promotionUser;
    }
    public void setPromotionUser(String promotionUser) {
        this.promotionUser = promotionUser;
    }
    public String getPromotionPhone() {
        return promotionPhone;
    }
    public void setPromotionPhone(String promotionPhone) {
        this.promotionPhone = promotionPhone;
    }
    public String getAbnormalIntro() {
        return abnormalIntro;
    }
    public void setAbnormalIntro(String abnormalIntro) {
        this.abnormalIntro = abnormalIntro;
    }
    public String getAbnormalImg() {
        return abnormalImg;
    }
    public void setAbnormalImg(String abnormalImg) {
        this.abnormalImg = abnormalImg;
    }
    public Integer getTotalPeopleNum() {
        return totalPeopleNum;
    }
    public void setTotalPeopleNum(Integer totalPeopleNum) {
        this.totalPeopleNum = totalPeopleNum;
    }
    public Double getEstimateMileage() {
        return estimateMileage;
    }
    public void setEstimateMileage(Double estimateMileage) {
        this.estimateMileage = estimateMileage;
    }
    public Double getEstimateTime() {
        return estimateTime;
    }
    public void setEstimateTime(Double estimateTime) {
        this.estimateTime = estimateTime;
    }
    public Integer getSpellSuccess() {
        return spellSuccess;
    }
    public void setSpellSuccess(Integer spellSuccess) {
        this.spellSuccess = spellSuccess;
    }
    public String getSplitAllocation() {
        return splitAllocation;
    }
    public void setSplitAllocation(String splitAllocation) {
        this.splitAllocation = splitAllocation;
    }
    public Long getPromotionActivityId() {
        return promotionActivityId;
    }
    public void setPromotionActivityId(Long promotionActivityId) {
        this.promotionActivityId = promotionActivityId;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TUser.java
@@ -1,6 +1,7 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
@@ -145,6 +146,11 @@
    private Date bindDate;
    private Date bindExpireDate;
    /**
     * 中台用户ID
     */
    @TableField("onconUUID")
    private String onconUUID;
    public Date getBindDate() {
        return bindDate;
@@ -425,7 +431,15 @@
    public void setCertificationImg(String certificationImg) {
        this.certificationImg = certificationImg;
    }
    public String getOnconUUID() {
        return onconUUID;
    }
    public void setOnconUUID(String onconUUID) {
        this.onconUUID = onconUUID;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/OrderUtils.java
File was renamed from ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/OrderUtil.java
@@ -10,7 +10,7 @@
 * @createDate 2016年5月27日
 * @version 1.0
 */
public class OrderUtil {
public class OrderUtils {
    
    /* 订单号 */
    private static long orderNum = 0l;
@@ -31,7 +31,7 @@
     * @return
     */
    public static String getRandomCode(){
        return OrderUtil.getNativeUUID().replaceAll("-", "");
        return OrderUtils.getNativeUUID().replaceAll("-", "");
    }
    /**
@@ -82,19 +82,19 @@
                Integer l = num % 32;
                StringBuffer sb = new StringBuffer();
                for(int i = 0; i < s; i++){
                    sb.append(OrderUtil.getRandomCode());
                    sb.append(OrderUtils.getRandomCode());
                }
                sb.append(OrderUtil.getRandomCode().substring(0, l));
                sb.append(OrderUtils.getRandomCode().substring(0, l));
                str = sb.toString();
            }else if(num % 32 == 0){
                Integer s = num / 32;
                StringBuffer sb = new StringBuffer();
                for(int i = 0; i < s; i++){
                    sb.append(OrderUtil.getRandomCode());
                    sb.append(OrderUtils.getRandomCode());
                }
                str = sb.toString();
            }else{
                str = OrderUtil.getRandomCode().substring(0, num);
                str = OrderUtils.getRandomCode().substring(0, num);
            }
        }
        return str;
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushURL.java
@@ -1,11 +1,11 @@
package com.stylefeng.guns.modular.system.util;
import com.stylefeng.guns.config.QYTConfig;
//import com.stylefeng.guns.config.QYTConfig;
public class PushURL {
    public static QYTConfig qytConfig;
    public static String zull_user_url = qytConfig.getChuxingUrl();
//    public static QYTConfig qytConfig;
    public static String zull_user_url = "http://10.31.182.11:8010/chuxing";
    public static String order_push_url = zull_user_url + "/driver-server/base/order/pushOrderState";
    public static String driver_auth_url = zull_user_url + "/driver-server/base/driver/sendsms";
    public static String withdraw_auth_url = zull_user_url + "/driver-server/base/withdrawal/withdrawalAudit";
@@ -17,7 +17,7 @@
    public static String ministry_of_transport_ftp = "http://120.77.11.218:8868/ftp";
    public static void setQytConfig(QYTConfig qytConfig) {
        PushURL.qytConfig = qytConfig;
    }
//    public static void setQytConfig(QYTConfig qytConfig) {
//        PushURL.qytConfig = qytConfig;
//    }
}
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/CreateEnterpriseRequest.java
@@ -17,7 +17,7 @@
     */
    private String nickName;
    /**
     * 统一社会信用代码
     * 社会信用代码
     */
    private String uscc;
    /**
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/EditStaffNodeRequest.java
@@ -11,7 +11,7 @@
    /**
     * 人员ID
     */
    private Long empId;
    private Integer empId;
    /**
     * 操作人手机号
     */
@@ -51,7 +51,7 @@
    /**
     * 员工所属部门ID多个部门英文; 分割
     */
    private String deptIds;
    private Integer deptId;
    /**
     * 员工职务ID
     */
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/QYTUserInfo.java
@@ -10,35 +10,28 @@
@Data
public class QYTUserInfo {
    /**
     * 员工名称
     */
    private String empName;
    /**
     * 企业编号
     */
    private String enterNum;
    /**
     * 节点路径
     */
    private String nodePath;
    /**
     * 员工昵称
     */
    private String nickName;
    /**
     * 员工编号
     * 用户id
     */
    private Long empId;
    /**
     * 手机号码
     */
    private String mphone;
    private String mobile;
    /**
     * 员工在企业内部的编号
     * 用户昵称
     */
    private String loginNo;
    private String nickname;
    /**
     * 部门ID
     * 小头像url
     */
    private Long deptId;
    private String photoUrl;
    /**
     * 大头像url
     */
    private String photoUrlBig;
    /**
     * 企业名称
     */
    private String enterName;
}
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/model/StaffNodeInfo.java
@@ -11,7 +11,7 @@
    /**
     * 人员ID
     */
    private Long empId;
    private Integer empId;
    /**
     * 主要号码
     */
ManagementQYTTravel/guns-admin/src/main/resources/application-prod.yml
@@ -35,7 +35,7 @@
    database: 0
    timeout: 1000
    cluster:
      nodes: 10.31.1.219:6410,10.31.1.30:6410,10.31.1.97:6410
      nodes: 10.31.1.219:6410,10.31.1.30:6410,10.31.1.97:6411
mybatis-plus:
  type-aliases-package: com.stylefeng.guns.modular
MessagePushTravel/pom.xml
@@ -110,9 +110,9 @@
            </properties>
        </profile>
        <profile>
            <id>produce</id>
            <id>prod</id>
            <properties>
                <spring.active>produce</spring.active>
                <spring.active>prod</spring.active>
            </properties>
        </profile>
    </profiles>
MessagePushTravel/src/main/java/com/sinata/push/config/QYTConfig.java
@@ -1,33 +1,33 @@
package com.sinata.push.config;
import com.sinata.push.util.echo.NettyServerController;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
/**
 * @author zhibing.pu
 * @Date 2025/8/12 13:58
 */
@Data
@Configuration
@ConfigurationProperties(prefix = "qyt")
public class QYTConfig {
    /**
     * 出行网关接口地址
     */
    private String chuxingUrl;
    /**
     * 代驾网关接口地址
     */
    private String daijiaurl;
    @PostConstruct
    public void init() {
        NettyServerController.setQytConfig(this);
    }
}
//package com.sinata.push.config;
//
//import com.sinata.push.util.echo.NettyServerController;
//import lombok.Data;
//import org.springframework.boot.context.properties.ConfigurationProperties;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.stereotype.Component;
//
//import javax.annotation.PostConstruct;
//
///**
// * @author zhibing.pu
// * @Date 2025/8/12 13:58
// */
//@Data
//@Configuration
//@ConfigurationProperties(prefix = "qyt")
//public class QYTConfig {
//    /**
//     * 出行网关接口地址
//     */
//    private String chuxingUrl;
//    /**
//     * 代驾网关接口地址
//     */
//    private String daijiaurl;
//
//
//    @PostConstruct
//    public void init() {
//        NettyServerController.setQytConfig(this);
//    }
//}
MessagePushTravel/src/main/java/com/sinata/push/util/echo/DiscardServerHandler.java
@@ -21,7 +21,7 @@
    public void channelRead(ChannelHandlerContext ctx, Object msg) {
        InetSocketAddress insocket = (InetSocketAddress) ctx.channel().remoteAddress();
        if(isdebug) {
//            System.err.println(insocket.getAddress() + ": 收到客户端数据.......");
            System.err.println(insocket.getAddress() + ": 收到客户端数据.......");
        }
        try {
            // 调用service
@@ -37,7 +37,7 @@
    protected void channelRead0(ChannelHandlerContext ctx, String msg) throws Exception {
        InetSocketAddress insocket = (InetSocketAddress) ctx.channel().remoteAddress();
        if(isdebug) {
//            System.err.println(insocket.getAddress() + ": 收到客户端数据.......");
            System.err.println(insocket.getAddress() + ": 收到客户端数据.......");
        }
        try {
            // 调用service
@@ -68,7 +68,7 @@
    public void channelActive(final ChannelHandlerContext ctx) throws Exception {
        InetSocketAddress insocket = (InetSocketAddress) ctx.channel().remoteAddress();
        if(isdebug) {
//            System.err.println(insocket.getAddress() + ": Connect successful......");
            System.err.println(insocket.getAddress() + ": Connect successful......");
        }
    }
@@ -90,7 +90,7 @@
                String msg = NettyMsg.setMsg(Method.ok, new HashMap<String, Object>());
                if(ctx != null && ctx.channel().isActive()) {
                    ctx.writeAndFlush(Unpooled.copiedBuffer((msg).getBytes()));
//                    System.err.println(msg);
                    System.err.println(msg);
                }
            }
        }
@@ -101,11 +101,11 @@
    public void channelInactive(ChannelHandlerContext ctx) throws Exception {
        if(isdebug) {
            InetSocketAddress insocket = (InetSocketAddress) ctx.channel().remoteAddress();
//            System.err.println(insocket.getAddress() + ": Disconnect connection......");
            System.err.println(insocket.getAddress() + ": Disconnect connection......");
        }
        NettyChannelMap.remove(ctx);
//        System.err.println("清除通道" + ctx);
//        super.channelInactive(ctx);
        System.err.println("清除通道" + ctx);
        super.channelInactive(ctx);
    }
    public void channelReadComplete(ChannelHandlerContext ctx) throws Exception {
MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java
@@ -5,7 +5,7 @@
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.sinata.push.config.QYTConfig;
//import com.sinata.push.config.QYTConfig;
import com.sinata.push.util.*;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
@@ -35,7 +35,7 @@
    public static Hashtable<String,String> table;
    
    public static QYTConfig qytConfig;
//    public static QYTConfig qytConfig;
    private RedisUtil redisUtil = SpringUtil.getObject(RedisUtil.class);
@@ -51,9 +51,9 @@
    }
    
    
    public static void setQytConfig(QYTConfig qytConfig) {
        NettyServerController.qytConfig = qytConfig;
    }
//    public static void setQytConfig(QYTConfig qytConfig) {
//        NettyServerController.qytConfig = qytConfig;
//    }
    
    public static boolean isdebug = false;
    public static int i = 0;
@@ -82,9 +82,7 @@
            if(msgStr.indexOf("{") == -1 || msgStr.indexOf("}") == -1 || msgStr.indexOf("code") == -1 || msgStr.indexOf("msg") == -1 || msgStr.indexOf("data") == -1 || msgStr.indexOf("method") == -1) {
                return;
            }
            if(isdebug) {
//                System.out.println("<<<--receive-->>>" + msg);
            }
            System.out.println("<<<--receive-->>>" + msg);
            
            // 获取socket信息,保存相应的socket
            JSONObject jsonMsg = JSONObject.parseObject(msg.toString());
@@ -209,7 +207,7 @@
                                params.put("lat", String.valueOf(lat));
                                params.put("directionAngle", String.valueOf(computeAzimuth));
                                params.put("altitude", String.valueOf(altitude));
                                HttpRequest post = HttpUtil.createPost(qytConfig.getChuxingUrl() + "/driver-server/base/savePosition");
                                HttpRequest post = HttpUtil.createPost("http://10.31.182.11:8010/chuxing/driver-server/base/savePosition");
                                post.contentType(MediaType.APPLICATION_FORM_URLENCODED_VALUE);
                                post.form(params);
                                HttpResponse execute = post.execute();
@@ -236,7 +234,7 @@
                            params.put("lat", String.valueOf(lat));
                            params.put("directionAngle", String.valueOf(computeAzimuth));
                            params.put("altitude", String.valueOf(altitude));
                            HttpRequest post = HttpUtil.createPost(qytConfig.getDaijiaurl() + "/driver-server/base/driver/addDriverPosition");
                            HttpRequest post = HttpUtil.createPost("http://10.31.182.11:8010/daijia/driver-server/base/driver/addDriverPosition");
                            post.contentType(MediaType.APPLICATION_FORM_URLENCODED_VALUE);
                            post.form(params);
                            HttpResponse execute = post.execute();
@@ -249,7 +247,7 @@
                            }
                        }
                        
                        redisUtil.setStrValue(business + ":DRIVER" + driverId, lon + "," + lat, 30);//实时位置存入redis中
                        redisUtil.setStrValue(business + "_DRIVER" + driverId, lon + "," + lat, 30);//实时位置存入redis中
                    }else{
                        this.sendMsgToClient(ctx, "__error__" + msg.toString());
                    }
MessagePushTravel/src/main/resources/application-prod.yml
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -158,7 +158,7 @@
            List<Driver> drivers = driverService.selectList(new EntityWrapper<Driver>().in("id", driverIds)
                    .eq("authState", 2).eq("state", 2));
            collect = drivers.stream().map(driver -> {
                String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
                String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driver.getId()));
                if(ToolUtil.isNotEmpty(value)){
                    Optional<DriverPosition> driverPosition = driverPositions.stream().filter(position -> position.getDriverId().equals(driver.getId())).findFirst();
                    Map<String, Object> map = new HashMap<>();
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -526,7 +526,7 @@
                }
                orderList = orderPrivateCarService.queryOrderInfo2(orderId, 6, null, null);
                if (orderInfoWarpper.getState() > 1 && orderInfoWarpper.getDriverId() != 0) {
                    String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(orderInfoWarpper.getDriverId()));
                    String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(orderInfoWarpper.getDriverId()));
                    if (value == null || value.equals("")) {
                        if (orderList.isEmpty()) {
                            orderList = orderPrivateCarService.queryOrderInfo2(orderId, 5, "0", "0");
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -2119,7 +2119,7 @@
        OrderCrossCity orderCrossCity = this.selectById(orderId);
        if(null != orderCrossCity){
            //计算预计距离和剩余时间
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(orderCrossCity.getDriverId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(orderCrossCity.getDriverId()));
            if (null == value || "".equals(value)) {
                System.err.println("司机没有上传位置信息");
                
@@ -2436,7 +2436,7 @@
                            OrderPrivateCarServiceImpl.orderIds.add(orderPrivateCar.getId());//添加记录,防止调用接口重复提醒无人接单
                            OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
                            List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//获取需要推送的次数
                            for (int i = 1; i <= querys.size() + 5; i++) {
                            for (int i = 1; i <= querys.size() + 15; i++) {
                                //订单被抢后的处理
                                Integer state = orderPrivateCarMapper.selectById(orderId).getState();
                                if (state != 1) {
@@ -2491,7 +2491,7 @@
                                
                                //所有推送完后的处理
                                Boolean b = pushEndMap.get(orderPrivateCar.getCrossCityOrderId());
                                if (i == querys.size() + 5 && state == 1 && (null != b && !b.booleanValue())) {
                                if (i == querys.size() + 15 && state == 1 && (null != b && !b.booleanValue())) {
                                    pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1);
                                    OrderPrivateCarServiceImpl.orderIds.remove(orderPrivateCar.getId());
                                    pushEndMap.put(orderPrivateCar.getCrossCityOrderId(), Boolean.TRUE);//推送后添加标识
@@ -2506,7 +2506,7 @@
                            OrderTaxiServiceImpl.orderIds.add(orderTaxi.getId());//添加记录,防止调用接口重复提醒无人接单
                            OpenCity openCity = openCityService.openCity1(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
                            List<PushOrder> querys = pushOrderService.querys(null, 2, openCity.getId());//获取需要推送的次数
                            for (int i = 1; i <= querys.size() + 5; i++) {
                            for (int i = 1; i <= querys.size() + 15; i++) {
                                //处理订单被抢
                                Integer state = orderTaxiMapper.selectById(orderId).getState();
                                if (state != 1) {
@@ -2563,7 +2563,7 @@
                                
                                //所有推送完后的处理
                                Boolean b = pushEndMap.get(orderTaxi.getCrossCityOrderId());
                                if (i == querys.size() + 5 && state == 1 && (null != b && !b.booleanValue())) {
                                if (i == querys.size() + 15 && state == 1 && (null != b && !b.booleanValue())) {
                                    pushUtil.pushEndPush(1, orderTaxi.getUserId(), orderTaxi.getId(), 2);
                                    OrderTaxiServiceImpl.orderIds.remove(orderTaxi.getId());
                                    pushEndMap.put(orderTaxi.getCrossCityOrderId(), Boolean.TRUE);//推送后添加标识
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -572,7 +572,7 @@
                    }
                    OpenCity openCity = openCityService.openCity1(orderLogistics.getStartLon().toString(), orderLogistics.getStartLat().toString());
                    List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//用专车的推单配置
                    for(int i = 1; i <= querys.size() + 5; i++){
                    for(int i = 1; i <= querys.size() + 15; i++){
//                        OrderLogistics orderLogistics = orderLogisticsMapper.selectById(id);
//                        if (null == orderLogistics || orderLogistics.getState() > 1) {
//                            break;
@@ -616,7 +616,7 @@
                                orderIds.remove(orderLogistics.getId());
                                return;
                            }
                            if (i == querys.size() + 5 && state == 1) {
                            if (i == querys.size() + 15 && state == 1) {
                                orderIds.remove(orderLogistics.getId());
                            }
                        }
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -398,7 +398,7 @@
                                JSONObject jsonObject = JSONObject.parseObject(spellOrderRule.getContent());
                                //判断时间
                                if (travelTime.getTime() >= order.getTravelTime().getTime() - jsonObject.getInteger("num5") * 60000L && travelTime.getTime() <= order.getTravelTime().getTime() + jsonObject.getInteger("num6") * 60000L) {
                                    String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(order.getDriverId()));
                                    String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(order.getDriverId()));
                                    //                            Double dis1 = Double.valueOf(gdMapElectricFenceUtil.getDistance(orderPrivateCar.getStartLon() + "," + orderPrivateCar.getStartLat(), value, 1).get("distance").toString());
                                    //                            Double dis2 = Double.valueOf(gdMapElectricFenceUtil.getDistance(orderPrivateCar.getEndLon() + "," + orderPrivateCar.getEndLat(), order.getEndLon() + "," + order.getEndLat(), 1).get("distance").toString());
                                    
@@ -668,7 +668,7 @@
                                    JSONObject jsonObject = JSONObject.parseObject(spellOrderRule.getContent());
                                    //判断时间
                                    if (travelTime.getTime() >= order.getTravelTime().getTime() - jsonObject.getInteger("num5") * 60000L && travelTime.getTime() <= order.getTravelTime().getTime() + jsonObject.getInteger("num6") * 60000L) {
                                        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(order.getDriverId()));
                                        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(order.getDriverId()));
                                        //                            Double dis1 = Double.valueOf(gdMapElectricFenceUtil.getDistance(orderPrivateCar.getStartLon() + "," + orderPrivateCar.getStartLat(), value, 1).get("distance").toString());
                                        //                            Double dis2 = Double.valueOf(gdMapElectricFenceUtil.getDistance(orderPrivateCar.getEndLon() + "," + orderPrivateCar.getEndLat(), order.getEndLon() + "," + order.getEndLat(), 1).get("distance").toString());
                                        
@@ -869,7 +869,7 @@
                            JSONObject jsonObject = JSONObject.parseObject(spellOrderRule.getContent());
                            //判断时间
                            if (orderPrivateCar.getTravelTime().getTime() >= order.getTravelTime().getTime() - jsonObject.getInteger("num5") * 60000L && orderPrivateCar.getTravelTime().getTime() <= order.getTravelTime().getTime() + jsonObject.getInteger("num6") * 60000L) {
                                String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(order.getDriverId()));
                                String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(order.getDriverId()));
//                                Double dis1 = Double.valueOf(gdMapElectricFenceUtil.getDistance(orderPrivateCar.getStartLon() + "," + orderPrivateCar.getStartLat(), value, 1).get("distance").toString());
//                                Double dis2 = Double.valueOf(gdMapElectricFenceUtil.getDistance(orderPrivateCar.getEndLon() + "," + orderPrivateCar.getEndLat(), order.getEndLon() + "," + order.getEndLat(), 1).get("distance").toString());
                                // TODO: 2023/11/4 已改成计算直线距离
@@ -1311,7 +1311,7 @@
            return orderTaxiService.queryOrderServer(orderId, uid);
        }
        //计算预计距离和剩余时间
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
        if(null == value || "".equals(value)){
            System.err.println("司机没有上传位置信息");
            
@@ -2677,7 +2677,7 @@
                OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
                List<PushOrder> querys = pushOrderService.querys(null, 2, openCity.getId());//获取需要推送的次数
                int time = 0;
                for (int i = 1; i <= querys.size() + 5; i++) {
                for (int i = 1; i <= querys.size() + 15; i++) {
                    int finalI = i;
                    PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
                    time += pushOrder.getPushTime() * 1000;
@@ -2841,7 +2841,7 @@
                    OpenCity openCity = openCityService.openCity1(startLon.toString(), startLat.toString());
                    List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//获取需要推送的次数
                    //整轮派单结束,若无司机接单,系统自动增加派单5轮,若增加5轮后任无司机接单,则系统结束派单,乘客端显示无司机接单、是否再次打车
                    for (int i = 1; i <= querys.size() + 5; i++) {
                    for (int i = 1; i <= querys.size() + 15; i++) {
                        OrderPrivateCar orderPrivateCar = orderPrivateCarMapper.selectById(id);
                        if (null == orderPrivateCar || orderPrivateCar.getState() > 1) {
                            break;
@@ -2879,7 +2879,7 @@
                            orderIds.remove(orderPrivateCar.getId());
                            break;
                        }
                        if (i == querys.size() + 5) {
                        if (i == querys.size() + 15) {
                            pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1);
                            orderIds.remove(orderPrivateCar.getId());
                        }
@@ -2912,7 +2912,7 @@
                    }
                    OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
                    List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//获取需要推送的次数
                    for (int i = 1; i <= querys.size() + 5; i++) {
                    for (int i = 1; i <= querys.size() + 15; i++) {
                        OrderPrivateCar orderPrivateCar = orderPrivateCarMapper.selectById(id);
                        if (null == orderPrivateCar || orderPrivateCar.getState() > 1) {
                            break;
@@ -2955,7 +2955,7 @@
                                orderIds.remove(orderPrivateCar.getId());
                                return;
                            }
                            if (i == querys.size() + 5 && state == 1) {
                            if (i == querys.size() + 15 && state == 1) {
                                pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1);
                                orderIds.remove(orderPrivateCar.getId());
                            }
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -54,7 +54,7 @@
        List<Driver> drivers = driverMapper.queryIdleDriver(type, companyId);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driver.getId()));
            if(null != value){
                Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
@@ -83,7 +83,7 @@
        List<Driver> drivers = driverMapper.queryIdleDriver_(type, serverCarModelId, companyId);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driver.getId()));
            if(null != value){
                Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
@@ -100,7 +100,7 @@
        List<Driver> drivers = driverMapper.queryIdleDriver1(type, companyId);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
            String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driver.getId()));
            if(null != value){
                Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java
@@ -134,10 +134,12 @@
        String districtCode = geocode.get("districtCode");
        //获取匹配的城市价格配置
        SystemPriceCity systemPriceCity = systemPriceCityService.queryOne(provinceCode, cityCode, districtCode);
        System.err.println("获取匹配的城市价格配置:" + systemPriceCity);
        if (null == systemPriceCity) {
            return new ArrayList<>();
        }
        List<Map<String, Object>> list = serverCarModelMapper.queryServerCarModel(type);
        System.err.println("获取匹配的城市价格配置111:" + list);
        List<ServerCarModelWarpper> data = new ArrayList<>();
        for (Map<String, Object> map : list) {
            Map<String, Object> query1 = systemPriceMapper.query(companyId, type, Integer.valueOf(map.get("id").toString()), systemPriceCity.getId());
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
@@ -248,7 +248,7 @@
        }
        
        //计算预计距离和剩余时间
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driverId));
        String value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + String.valueOf(driverId));
        if (null == value || "".equals(value)) {
            return;
        }
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
@@ -1929,7 +1929,7 @@
                OpenCity openCity = openCityService.openCity1(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
                List<PushOrder> querys = pushOrderService.querys(null, 2, openCity.getId());//获取需要推送的次数
                int time = 0;
                for (int i = 1; i <= querys.size() + 5; i++) {
                for (int i = 1; i <= querys.size() + 15; i++) {
                    int finalI = i;
                    PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
                    time += pushOrder.getPushTime() * 1000;
@@ -1962,7 +1962,7 @@
        //计算预计距离和剩余时间
        String value = null;
        if (null != orderTaxi.getDriverId()) {
            value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + orderTaxi.getDriverId());
            value = (String) redisTemplate.opsForValue().get("dache_DRIVER" + orderTaxi.getDriverId());
            if (null == value || "".equals(value)) {
                System.err.println("司机没有上传位置信息");
                
@@ -2313,7 +2313,7 @@
                    OpenCity openCity = openCityService.openCity1(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
                    List<PushOrder> querys = pushOrderService.querys(null, 2, openCity.getId());//获取需要推送的次数
                    //整轮派单结束,若无司机接单,系统自动增加派单5轮,若增加5轮后任无司机接单,则系统结束派单,乘客端显示无司机接单、是否再次打车
                    for (int i = 1; i <= querys.size() + 5; i++) {
                    for (int i = 1; i <= querys.size() + 15; i++) {
                        int finalI = i;
                        PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
                        System.out.println("pushOrder:" + pushOrder);
@@ -2345,7 +2345,7 @@
                        if (state != 1) {
                            break;
                        }
                        if (i == querys.size() + 5 && state == 1) {
                        if (i == querys.size() + 15 && state == 1) {
                            pushUtil.pushEndPush(1, orderTaxi.getUserId(), orderTaxi.getId(), 2);
                            orderIds.remove(orderTaxi.getId());
                        }
UserQYTTravel/guns-admin/src/main/resources/application-prod.yml
UserQYTTravel/pom.xml
@@ -236,9 +236,9 @@
            </properties>
        </profile>
        <profile>
            <id>produce</id>
            <id>prod</id>
            <properties>
                <spring.active>produce</spring.active>
                <spring.active>prod</spring.active>
            </properties>
        </profile>
    </profiles>