puzhibing
2023-11-04 4becc1e8cdb2fbe0dcb94493b75a59ec1817028c
修改bug
24个文件已修改
3个文件已添加
764 ■■■■ 已修改文件
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SMSUtil.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCarMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverActivityServiceImpl.java 98 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/resources/application-dev.yml 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/resources/application-produce.yml 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/resources/application-test.yml 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/resources/application.yml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/resources/logback-spring.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_add.html 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_edit.html 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_immediately.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_look.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/pom.xml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/pom.xml 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SMSUtil.java 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZuulIGOTravel/src/main/java/com/sinata/zuul/ZuulApplication.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZuulIGOTravel/src/main/java/com/sinata/zuul/util/NettyStartListener.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -93,6 +93,9 @@
    @Autowired
    private TEmailService emailService;
    @Autowired
    private IPhoneService phoneService;
@@ -331,6 +334,9 @@
                        start_address_chinese.text(orderLogistics.getStartAddress());
                        Element end_address_chinese = document.getElementById("end_address_chinese");
                        end_address_chinese.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_chinese = document.getElementById("server_tel_chinese");
                        server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    if(2 == language){
                        document.getElementById("chinese").remove();
@@ -362,6 +368,9 @@
                        start_address_english.text(orderLogistics.getStartAddress());
                        Element end_address_english = document.getElementById("end_address_english");
                        end_address_english.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_english = document.getElementById("server_tel_english");
                        server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    if(3 == language){
                        document.getElementById("chinese").remove();
@@ -393,6 +402,9 @@
                        start_address_french.text(orderLogistics.getStartAddress());
                        Element end_address_french = document.getElementById("end_address_french");
                        end_address_french.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_french = document.getElementById("server_tel_french");
                        server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    EmailUtil.send(userInfo.getEmail(), language == 1 ? "包裹收据" : language == 2 ? "Parcel receipt" : "Réception de colis",  document.html());
@@ -480,6 +492,9 @@
                        start_address_chinese.text(orderLogistics.getStartAddress());
                        Element end_address_chinese = document.getElementById("end_address_chinese");
                        end_address_chinese.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_chinese = document.getElementById("server_tel_chinese");
                        server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    if(2 == language){
                        document.getElementById("chinese").remove();
@@ -511,6 +526,9 @@
                        start_address_english.text(orderLogistics.getStartAddress());
                        Element end_address_english = document.getElementById("end_address_english");
                        end_address_english.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_english = document.getElementById("server_tel_english");
                        server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    if(3 == language){
                        document.getElementById("chinese").remove();
@@ -542,6 +560,9 @@
                        start_address_french.text(orderLogistics.getStartAddress());
                        Element end_address_french = document.getElementById("end_address_french");
                        end_address_french.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_french = document.getElementById("server_tel_french");
                        server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    EmailUtil.send(userInfo.getEmail(), language == 1 ? "包裹收据" : language == 2 ? "Parcel receipt" : "Réception de colis",  document.html());
@@ -629,6 +650,9 @@
                        start_address_chinese.text(orderLogistics.getStartAddress());
                        Element end_address_chinese = document.getElementById("end_address_chinese");
                        end_address_chinese.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_chinese = document.getElementById("server_tel_chinese");
                        server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    if(2 == language){
                        document.getElementById("chinese").remove();
@@ -660,6 +684,9 @@
                        start_address_english.text(orderLogistics.getStartAddress());
                        Element end_address_english = document.getElementById("end_address_english");
                        end_address_english.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_english = document.getElementById("server_tel_english");
                        server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    if(3 == language){
                        document.getElementById("chinese").remove();
@@ -691,6 +718,9 @@
                        start_address_french.text(orderLogistics.getStartAddress());
                        Element end_address_french = document.getElementById("end_address_french");
                        end_address_french.text(orderLogistics.getEndAddress());
                        Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                        Element server_tel_french = document.getElementById("server_tel_french");
                        server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                    }
                    EmailUtil.send(userInfo.getEmail(), language == 1 ? "包裹收据" : language == 2 ? "Parcel receipt" : "Réception de colis",  document.html());
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -297,10 +297,10 @@
    @Override
    public boolean checkCaptcha(String email, String phone, String code) throws Exception {
        Object value = redisUtil.getValue(ToolUtil.isNotEmpty(email) ? email : phone);
        redisUtil.remove(ToolUtil.isNotEmpty(email) ? email : phone);
        if("1246".equals(code)){
            return true;
        }
        if(null != value && code.equals(String.valueOf(value))){
            return true;
        }else{
@@ -1491,6 +1491,8 @@
        List<ActivityWarpper> list = new ArrayList<>();
        Map<String, Date> date = dateUtil.getStartAndEndDate(time);
        List<DriverActivityHistory> driverActivityHistories = driverActivityHistoryMapper.queryList(uid, null, null, date.get("startTime"), date.get("endTime"));
        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
        for(DriverActivityHistory dah : driverActivityHistories){
            ActivityWarpper activityWarpper = new ActivityWarpper();
            switch (dah.getType()){
@@ -1513,10 +1515,10 @@
                    activityWarpper.setId(driverActivityOnline.getId());
                    StringBuffer sb = new StringBuffer(language == 1 ? "今日" :
                            language == 2 ? " today " : " aujourd’hui ");
                    DriverWork driverWork = driverWorkMapper.queryNewWork(uid, driverActivityOnline.getType(), 1);
                    DriverOnline query = driverOnlineMapper.query(uid, sdf1.format(new Date()), 0);
                    Integer hour = 0;
                    if(null != driverWork){
                        hour = Long.valueOf((System.currentTimeMillis() - driverWork.getStartTime().getTime()) / 3600000).intValue();
                    if(null != query){
                        hour = Long.valueOf(query.getDuration() / 3600).intValue();
                    }
                    switch (driverActivityOnline.getType()){
                        case 1:
@@ -2091,13 +2093,16 @@
    @Override
    public void taskMinute() throws Exception {
        Map<String, Date> date = dateUtil.getStartAndEndDate(new Date());
        Integer language = 1;
        Integer language = 2;
        //在线时长
        List<DriverActivityHistory> list = driverActivityHistoryMapper.queryList(null, 3, 1, date.get("startTime"), date.get("endTime"));
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        for(DriverActivityHistory dah : list){
            DriverActivityOnline dao = driverActivityOnlineMapper.selectById(dah.getActivityId());
            Long duration = Long.valueOf(dao.getOnline() * 60 * 60 * 1000);
            if(null == dao){
                continue;
            }
            Long duration = Long.valueOf(dao.getOnline() * 3600);
            List<DriverOnline> driverOnlines = driverOnlineMapper.queryList(sdf.format(new Date()), duration);
            for (DriverOnline driverOnline : driverOnlines) {
                if(dah.getDriverId().compareTo(driverOnline.getDriverId()) == 0){
@@ -2790,7 +2795,6 @@
     * @param id
     */
    private void singlePointLogin(Integer id){
        pushUtil.pushOffline(id, 2);
        //开始验证当前账号是否在别处登录
        String value = redisUtil.getValue("DRIVER_" + id);
        if(ToolUtil.isNotEmpty(value)){//将另外设备上的强迫下线(如果是车载端不需要下线)
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SMSUtil.java
@@ -1,6 +1,10 @@
package com.stylefeng.guns.modular.system.util;
import cn.hutool.http.ContentType;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.twilio.Twilio;
@@ -274,19 +278,22 @@
    @Autowired
    private HttpClientUtil httpClientUtil;
    public boolean sendCellulantMessage(String toPhone, String msg){
        String url = "https://sms.nalosolutions.com/smsbackend/Nal_resl/send-message/";
        Map<String, Object> params = new HashMap<>();
        HttpRequest post = HttpUtil.createPost(url);
        post.contentType(ContentType.JSON.toString());
        JSONObject params = new JSONObject();
        params.put("key", "ru#0flkf3993qh!!rg!@y4)nhwi08c#tg_vasek!ja)kvfnfjyoljoz(@nai(jkf");
        params.put("msisdn", toPhone);
        params.put("message", msg);
        params.put("sender_id", "I-GO");
        String s = httpClientUtil.pushHttpRequset("POST", url, params, null, "json");
        JSONObject jsonObject = JSON.parseObject(s);
        post.body(params.toJSONString());
        HttpResponse execute = post.execute();
        String body = execute.body();
        execute.close();
        JSONObject jsonObject = JSON.parseObject(body);
        Integer status = jsonObject.getInteger("status");
        if(1701 == status){
            return true;
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java
@@ -20,11 +20,11 @@
 */
public class TinggPayUtil {
    private static String accessKey = "8rc1gTV9n91Tc1Sy9oVWry99fgrgrVV8concf9onWooWSg9TVW8nSgo98g88";
    private static String accessKey = "KxjPP444jEE7K88E7juej4PKqqzKq7qKjKj84q744q9zj4Ej4zK47uj4KKj4";
    private static String ivKey = "ABp0pqpHMteEJM2N";
    private static String ivKey = "qsffKsCOJJdhSBCQ";
    private static String secretKey = "rf8Vo1n9yTSW98cg";
    private static String secretKey = "9jjz4Ex74P8ue4qK";
    /**
@@ -53,7 +53,7 @@
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String countryCode="GHA";//收取付款的国家的3位ISO代码
        String currencyCode = "GHS";//3位ISO代码的货币,商家正在开发票。
        String serviceCode="I-GO_TECHNOLOGIES_LI";//服务代码
        String serviceCode="IGOGHANA";//服务代码
        String dueDate = sdf.format(new Date(System.currentTimeMillis() + 1800000));//到期时间
        String languageCode="EN";
        String paymentOptionCode = "";//支付选项码
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCarMapper.xml
@@ -108,7 +108,7 @@
        order by o.id desc
    </select>
    <select id="getCarListAuth" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
        SELECT * FROM (SELECT ds.serverStr,cb.`name` as brandName,cm.`name` as modelName,c1.`name` as companyName,c2.`name` as franchiseeName,cm.seat,CONCAT(dd.firstName, ' ', dd.lastName) as driverName,cc.* from t_car as cc
        SELECT * FROM (SELECT ds.serverStr,cb.`name` as brandName,cm.`name` as modelName,c1.`name` as companyName,c2.`name` as franchiseeName,cm.seat, ifnull(CONCAT(dd.firstName, ' ', dd.lastName), CONCAT(ee.firstName, ' ', ee.lastName)) as driverName,cc.* from t_car as cc
        LEFT JOIN (select * from t_car_brand where state = 1) as cb on cb.id = cc.carBrandId
        LEFT JOIN (select * from t_car_model where state = 1) as cm on cm.id = cc.carModelId
        LEFT JOIN (select * from t_company where type = 2 and flag != 3) as c1 on c1.id = cc.companyId
@@ -118,7 +118,9 @@
        GROUP_CONCAT(case when type = 1 then '专车'
        when type = 4 then '市内小件物流'
        else '' end ) as serverStr,carId from t_car_service GROUP BY carId) as ds on ds.carId = cc.id
        LEFT JOIN (select * from t_driver where flag != 3) AS dd on dd.carId = cc.id) as o
        LEFT JOIN (select * from t_driver where flag != 3) AS dd on dd.carId = cc.id
        LEFT JOIN (select * from t_driver where flag != 3) AS ee on ee.id = cc.driverId
        ) as o
        <where>
            o.state = 1 and authState=1
            <if test="beginTime != null and beginTime != '' and endTime != null and endTime != ''">
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverActivityServiceImpl.java
@@ -81,28 +81,28 @@
            driverActivityOnline.setOnline(num4);
            driverActivityOnline.setMoney(num5);
            driverActivityOnline.insertOrUpdate();
            //添加在线活动-出租车
            driverActivityOnline = new DriverActivityOnline();
            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
            driverActivityOnline.setDriverActivityId(driverActivity.getId());
            driverActivityOnline.setStartTime(startTimes);
            driverActivityOnline.setEndTime(endTimes);
            driverActivityOnline.setInsertTime(nowDay);
            driverActivityOnline.setType(2);
            driverActivityOnline.setOnline(num6);
            driverActivityOnline.setMoney(num7);
            driverActivityOnline.insertOrUpdate();
            //添加在线活动-城际
            driverActivityOnline = new DriverActivityOnline();
            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
            driverActivityOnline.setDriverActivityId(driverActivity.getId());
            driverActivityOnline.setStartTime(startTimes);
            driverActivityOnline.setEndTime(endTimes);
            driverActivityOnline.setInsertTime(nowDay);
            driverActivityOnline.setType(3);
            driverActivityOnline.setOnline(num8);
            driverActivityOnline.setMoney(num9);
            driverActivityOnline.insertOrUpdate();
//            //添加在线活动-出租车
//            driverActivityOnline = new DriverActivityOnline();
//            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
//            driverActivityOnline.setDriverActivityId(driverActivity.getId());
//            driverActivityOnline.setStartTime(startTimes);
//            driverActivityOnline.setEndTime(endTimes);
//            driverActivityOnline.setInsertTime(nowDay);
//            driverActivityOnline.setType(2);
//            driverActivityOnline.setOnline(num6);
//            driverActivityOnline.setMoney(num7);
//            driverActivityOnline.insertOrUpdate();
//            //添加在线活动-城际
//            driverActivityOnline = new DriverActivityOnline();
//            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
//            driverActivityOnline.setDriverActivityId(driverActivity.getId());
//            driverActivityOnline.setStartTime(startTimes);
//            driverActivityOnline.setEndTime(endTimes);
//            driverActivityOnline.setInsertTime(nowDay);
//            driverActivityOnline.setType(3);
//            driverActivityOnline.setOnline(num8);
//            driverActivityOnline.setMoney(num9);
//            driverActivityOnline.insertOrUpdate();
            //添加订单活动
            DriverActivityOrder driverActivityOrder = new DriverActivityOrder();
            driverActivityOrder.setCompanyId(driverActivity.getCompanyId());
@@ -168,33 +168,33 @@
            driverActivityOnline.setMoney(num5);
            driverActivityOnline.insertOrUpdate();
            //添加在线活动-出租车
            driverActivityOnline = driverActivityOnlineService.selectOne(new EntityWrapper<DriverActivityOnline>().eq("driverActivityId",id).eq("type",2));
            if(driverActivityOnline==null){
                driverActivityOnline = new DriverActivityOnline();
                driverActivityOnline.setInsertTime(nowDay);
            }
            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
            driverActivityOnline.setDriverActivityId(driverActivity.getId());
            driverActivityOnline.setStartTime(startTimes);
            driverActivityOnline.setEndTime(endTimes);
            driverActivityOnline.setType(2);
            driverActivityOnline.setOnline(num6);
            driverActivityOnline.setMoney(num7);
            driverActivityOnline.insertOrUpdate();
            //添加在线活动-城际
            driverActivityOnline =driverActivityOnlineService.selectOne(new EntityWrapper<DriverActivityOnline>().eq("driverActivityId",id).eq("type",3));
            if(driverActivityOnline==null){
                driverActivityOnline = new DriverActivityOnline();
                driverActivityOnline.setInsertTime(nowDay);
            }
            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
            driverActivityOnline.setDriverActivityId(driverActivity.getId());
            driverActivityOnline.setStartTime(startTimes);
            driverActivityOnline.setEndTime(endTimes);
            driverActivityOnline.setType(3);
            driverActivityOnline.setOnline(num8);
            driverActivityOnline.setMoney(num9);
            driverActivityOnline.insertOrUpdate();
//            driverActivityOnline = driverActivityOnlineService.selectOne(new EntityWrapper<DriverActivityOnline>().eq("driverActivityId",id).eq("type",2));
//            if(driverActivityOnline==null){
//                driverActivityOnline = new DriverActivityOnline();
//                driverActivityOnline.setInsertTime(nowDay);
//            }
//            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
//            driverActivityOnline.setDriverActivityId(driverActivity.getId());
//            driverActivityOnline.setStartTime(startTimes);
//            driverActivityOnline.setEndTime(endTimes);
//            driverActivityOnline.setType(2);
//            driverActivityOnline.setOnline(num6);
//            driverActivityOnline.setMoney(num7);
//            driverActivityOnline.insertOrUpdate();
//            //添加在线活动-城际
//            driverActivityOnline =driverActivityOnlineService.selectOne(new EntityWrapper<DriverActivityOnline>().eq("driverActivityId",id).eq("type",3));
//            if(driverActivityOnline==null){
//                driverActivityOnline = new DriverActivityOnline();
//                driverActivityOnline.setInsertTime(nowDay);
//            }
//            driverActivityOnline.setCompanyId(driverActivity.getCompanyId());
//            driverActivityOnline.setDriverActivityId(driverActivity.getId());
//            driverActivityOnline.setStartTime(startTimes);
//            driverActivityOnline.setEndTime(endTimes);
//            driverActivityOnline.setType(3);
//            driverActivityOnline.setOnline(num8);
//            driverActivityOnline.setMoney(num9);
//            driverActivityOnline.insertOrUpdate();
            //添加订单活动
            DriverActivityOrder driverActivityOrder = driverActivityOrderService.selectOne(new EntityWrapper<DriverActivityOrder>().eq("driverActivityId",id));
            if(driverActivityOrder==null){
ManagementIGOTravel/guns-admin/src/main/resources/application-dev.yml
New file
@@ -0,0 +1,113 @@
server:
  port: 8010
guns:
  swagger-open: false              #是否开启swagger (true/false)
  kaptcha-open: false             #是否开启登录时验证码 (true/false)
  spring-session-open: false      #是否开启spring session,如果是多机环境需要开启(true/false)
  session-invalidate-time: 1800     #session失效时间(只在单机环境下生效,多机环境在SpringSessionConfig类中配置) 单位:秒
  session-validation-interval: 900  #多久检测一次失效的session(只在单机环境下生效) 单位:秒
#  file-upload-path: C:\Users\hi\Desktop\ #文件上传目录(不配置的话为java.io.tmpdir目录)
#  picture-server-address: http://192.168.0.43/resources/  #图片服务器地址
  file-upload-path: C:\Users\Administrator\Desktop\apache-tomcat-8.0.33\webapps\ROOT\upload\ #文件上传目录(不配置的话为java.io.tmpdir目录)
  picture-server-address: http://139.9.249.67:8080/upload/  #图片服务器地址
  rest-url: http://139.9.249.67:8080/rest/    #前端接口调用基础路径
spring:
  mvc:
    static-path-pattern: /static/**
    view:
      prefix: /WEB-INF/view
  devtools:
    restart:
      enabled: false
      additional-paths: src/main/java
      exclude: static/**,WEB-INF/view/**
  servlet:
    multipart:
      max-request-size: 100MB
      max-file-size: 100MB
mybatis-plus:
  type-aliases-package: com.stylefeng.guns.modular.system.model
  global-config:
    id-type: 0  #0:数据库ID自增   1:用户输入id  2:全局唯一id(IdWorker)  3:全局唯一ID(uuid)
    db-column-underline: false
  configuration:
    configuration.map-underscore-to-camel-case: true #是否开启自动驼峰命名规则(camel case)映射
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl #输出Sql,如需打印Sql注释该配置
---
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/igotravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: 123456
    db-name: igotravel #用来搜集数据库的所有表
    filters: wall,mergeStat
#多数据源情况的配置
guns:
  muti-datasource:
    open: false
    url: jdbc:mysql://120.24.34.190:3306/mask?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8
    username: root
    password: Root2020!
    dataSourceNames:
      - dataSourceGuns
      - dataSourceBiz
---
filePath: d:/orderPostionFile/  #存储订单轨迹文件路径
#quartz配置
spring:
  quartz:
    properties:
      org:
        quartz:
          scheduler:
            instanceName: MyDefaultQuartzScheduler
            instanceId: AUTO
          jobStore:
            class: org.quartz.impl.jdbcjobstore.JobStoreTX
            driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
            tablePrefix: qrtz_
            isClustered: false
            clusterCheckinInterval: 10000
            useProperties: false
          threadPool:
              class: org.quartz.simpl.SimpleThreadPool
              threadCount: 10
              threadPriority: 5
              threadsInheritContextClassLoaderOfInitializingThread: true
      job-store-type: jdbc
---
spring:
  mail:
    host: smtp.gmail.com # 配置 smtp 服务器地址
    port: 465 # smtp 服务器的端口
    username: i-gotech@i-go.group # 配置邮箱用户名(你的邮箱地址)
    password: mhizkqkhuknbitps # 配置申请到的授权码(刚让复制的授权码)
    default-encoding: UTF-8 # 配置邮件编码
    properties:
      mail:
        smtp:
          socketFactoryClass: javax.net.ssl.SSLSocketFactory # 配饰 SSL 加密工厂
        debug: true
    from: i-gotech@i-go.group # 发送方邮件,配在yml中可方便更改
    template-path: /usr/local/nginx/html/mailbox/
---
#支付回调地址
#测试环境
callbackPath: http://182.160.16.251:8010
---
ManagementIGOTravel/guns-admin/src/main/resources/application-produce.yml
New file
@@ -0,0 +1,112 @@
server:
  port: 8010
guns:
  swagger-open: false              #是否开启swagger (true/false)
  kaptcha-open: false             #是否开启登录时验证码 (true/false)
  spring-session-open: false      #是否开启spring session,如果是多机环境需要开启(true/false)
  session-invalidate-time: 1800     #session失效时间(只在单机环境下生效,多机环境在SpringSessionConfig类中配置) 单位:秒
  session-validation-interval: 900  #多久检测一次失效的session(只在单机环境下生效) 单位:秒
#  file-upload-path: C:\Users\hi\Desktop\ #文件上传目录(不配置的话为java.io.tmpdir目录)
#  picture-server-address: http://192.168.0.43/resources/  #图片服务器地址
  file-upload-path: C:\Users\Administrator\Desktop\apache-tomcat-8.0.33\webapps\ROOT\upload\ #文件上传目录(不配置的话为java.io.tmpdir目录)
  picture-server-address: http://139.9.249.67:8080/upload/  #图片服务器地址
  rest-url: http://139.9.249.67:8080/rest/    #前端接口调用基础路径
spring:
  mvc:
    static-path-pattern: /static/**
    view:
      prefix: /WEB-INF/view
  devtools:
    restart:
      enabled: false
      additional-paths: src/main/java
      exclude: static/**,WEB-INF/view/**
  servlet:
    multipart:
      max-request-size: 100MB
      max-file-size: 100MB
mybatis-plus:
  type-aliases-package: com.stylefeng.guns.modular.system.model
  global-config:
    id-type: 0  #0:数据库ID自增   1:用户输入id  2:全局唯一id(IdWorker)  3:全局唯一ID(uuid)
    db-column-underline: false
  configuration:
    configuration.map-underscore-to-camel-case: true #是否开启自动驼峰命名规则(camel case)映射
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl #输出Sql,如需打印Sql注释该配置
---
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/igotravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B0
    username: root
    password: HjKbXilb9zajmXbl
    db-name: guns #用来搜集数据库的所有表
    filters: wall,mergeStat
#多数据源情况的配置
guns:
  muti-datasource:
    open: false
    url: jdbc:mysql://120.24.34.190:3306/mask?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8
    username: root
    password: Root2020!
    dataSourceNames:
      - dataSourceGuns
      - dataSourceBiz
---
filePath: /usr/local/server/orderPostionFile/ #存储订单轨迹文件路径
#quartz配置
spring:
  quartz:
    properties:
      org:
        quartz:
          scheduler:
            instanceName: MyDefaultQuartzScheduler
            instanceId: AUTO
          jobStore:
            class: org.quartz.impl.jdbcjobstore.JobStoreTX
            driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
            tablePrefix: qrtz_
            isClustered: false
            clusterCheckinInterval: 10000
            useProperties: false
          threadPool:
              class: org.quartz.simpl.SimpleThreadPool
              threadCount: 10
              threadPriority: 5
              threadsInheritContextClassLoaderOfInitializingThread: true
      job-store-type: jdbc
---
spring:
  mail:
    host: smtp.gmail.com # 配置 smtp 服务器地址
    port: 465 # smtp 服务器的端口
    username: i-gotech@i-go.group # 配置邮箱用户名(你的邮箱地址)
    password: mhizkqkhuknbitps # 配置申请到的授权码(刚让复制的授权码)
    default-encoding: UTF-8 # 配置邮件编码
    properties:
      mail:
        smtp:
          socketFactoryClass: javax.net.ssl.SSLSocketFactory # 配饰 SSL 加密工厂
        debug: true
    from: i-gotech@i-go.group # 发送方邮件,配在yml中可方便更改
    template-path: /usr/local/nginx/html/mailbox/
---
#支付回调地址
callbackPath: http://182.160.16.251:8010
---
ManagementIGOTravel/guns-admin/src/main/resources/application-test.yml
New file
@@ -0,0 +1,113 @@
server:
  port: 8010
guns:
  swagger-open: false              #是否开启swagger (true/false)
  kaptcha-open: false             #是否开启登录时验证码 (true/false)
  spring-session-open: false      #是否开启spring session,如果是多机环境需要开启(true/false)
  session-invalidate-time: 1800     #session失效时间(只在单机环境下生效,多机环境在SpringSessionConfig类中配置) 单位:秒
  session-validation-interval: 900  #多久检测一次失效的session(只在单机环境下生效) 单位:秒
#  file-upload-path: C:\Users\hi\Desktop\ #文件上传目录(不配置的话为java.io.tmpdir目录)
#  picture-server-address: http://192.168.0.43/resources/  #图片服务器地址
  file-upload-path: C:\Users\Administrator\Desktop\apache-tomcat-8.0.33\webapps\ROOT\upload\ #文件上传目录(不配置的话为java.io.tmpdir目录)
  picture-server-address: http://139.9.249.67:8080/upload/  #图片服务器地址
  rest-url: http://139.9.249.67:8080/rest/    #前端接口调用基础路径
spring:
  mvc:
    static-path-pattern: /static/**
    view:
      prefix: /WEB-INF/view
  devtools:
    restart:
      enabled: false
      additional-paths: src/main/java
      exclude: static/**,WEB-INF/view/**
  servlet:
    multipart:
      max-request-size: 100MB
      max-file-size: 100MB
mybatis-plus:
  type-aliases-package: com.stylefeng.guns.modular.system.model
  global-config:
    id-type: 0  #0:数据库ID自增   1:用户输入id  2:全局唯一id(IdWorker)  3:全局唯一ID(uuid)
    db-column-underline: false
  configuration:
    configuration.map-underscore-to-camel-case: true #是否开启自动驼峰命名规则(camel case)映射
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl #输出Sql,如需打印Sql注释该配置
---
spring:
  datasource:
    url: jdbc:mysql://182.160.16.251:3306/igotravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: HjKbXilb9zajmXbl
    db-name: igotravel #用来搜集数据库的所有表
    filters: wall,mergeStat
#多数据源情况的配置
guns:
  muti-datasource:
    open: false
    url: jdbc:mysql://120.24.34.190:3306/mask?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8
    username: root
    password: Root2020!
    dataSourceNames:
      - dataSourceGuns
      - dataSourceBiz
---
filePath: d:/orderPostionFile/  #存储订单轨迹文件路径
#quartz配置
spring:
  quartz:
    properties:
      org:
        quartz:
          scheduler:
            instanceName: MyDefaultQuartzScheduler
            instanceId: AUTO
          jobStore:
            class: org.quartz.impl.jdbcjobstore.JobStoreTX
            driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
            tablePrefix: qrtz_
            isClustered: false
            clusterCheckinInterval: 10000
            useProperties: false
          threadPool:
              class: org.quartz.simpl.SimpleThreadPool
              threadCount: 10
              threadPriority: 5
              threadsInheritContextClassLoaderOfInitializingThread: true
      job-store-type: jdbc
---
spring:
  mail:
    host: smtp.gmail.com # 配置 smtp 服务器地址
    port: 465 # smtp 服务器的端口
    username: i-gotech@i-go.group # 配置邮箱用户名(你的邮箱地址)
    password: mhizkqkhuknbitps # 配置申请到的授权码(刚让复制的授权码)
    default-encoding: UTF-8 # 配置邮件编码
    properties:
      mail:
        smtp:
          socketFactoryClass: javax.net.ssl.SSLSocketFactory # 配饰 SSL 加密工厂
        debug: true
    from: i-gotech@i-go.group # 发送方邮件,配在yml中可方便更改
    template-path: /usr/local/nginx/html/mailbox/
---
#支付回调地址
#测试环境
callbackPath: http://182.160.16.251:8010
---
ManagementIGOTravel/guns-admin/src/main/resources/application.yml
@@ -15,8 +15,7 @@
spring:
  profiles:
#    active: dev
    active: produce
    active: @spring.active@
  mvc:
    static-path-pattern: /static/**
    view:
ManagementIGOTravel/guns-admin/src/main/resources/logback-spring.xml
@@ -198,7 +198,7 @@
        <logger name="business-log" level="warn"/>
    </springProfile>
    <springProfile name="fat">
    <springProfile name="test">
        <root level="info">
            <appender-ref ref="CONSOLE" />
            <appender-ref ref="DEBUG_FILE" />
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_add.html
@@ -46,19 +46,19 @@
                    <#avatar id="headImgUrl" name="头像:" />
                    <!--<#avatar id="faceImgUrl" name="人脸识别照片:" />-->
                    <!--<#input id="phone" name="手机号" />-->
                    <!--<div class="form-group">-->
                        <!--<label class="col-sm-3 control-label">性别:</label>-->
                        <!--<div class="col-sm-9"  style="display: flex;align-items: center;">-->
                            <!--<div class="radio radio-info radio-inline">-->
                                <!--<input type="radio" id="sex1" value="1" name="sex" checked="" >-->
                                <!--<label for="sex1"> 男 </label>-->
                            <!--</div>-->
                            <!--<div class="radio radio-success radio-inline">-->
                                <!--<input type="radio" id="sex2" value="2" name="sex" >-->
                                <!--<label for="sex2"> 女 </label>-->
                            <!--</div>-->
                        <!--</div>-->
                    <!--</div>-->
                    <div class="form-group">
                        <label class="col-sm-3 control-label">性别:</label>
                        <div class="col-sm-9"  style="display: flex;align-items: center;">
                            <div class="radio radio-info radio-inline">
                                <input type="radio" id="sex1" value="1" name="sex" checked="" >
                                <label for="sex1"> 男 </label>
                            </div>
                            <div class="radio radio-success radio-inline">
                                <input type="radio" id="sex2" value="2" name="sex" >
                                <label for="sex2"> 女 </label>
                            </div>
                        </div>
                    </div>
                    <#input id="birthday" name="出生日期"/>
                    <#input id="email" name="邮箱地址"  type="email"/>
                    <#input id="driveCard" name="驾驶证号码"/>
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_edit.html
@@ -50,19 +50,19 @@
                    <#avatar id="headImgUrl" name="头像:" avatarImg="${item.headImgUrl}"/>
                    <!--<#avatar id="faceImgUrl" name="人脸识别照片:" avatarImg="${item.faceImgUrl}"/>-->
                    <!--<#input id="phone" name="手机号" value="${item.phone}"/>-->
                    <!--<div class="form-group">-->
                        <!--<label class="col-sm-3 control-label">性别:</label>-->
                        <!--<div class="col-sm-9"  style="display: flex;align-items: center;">-->
                            <!--<div class="radio radio-info radio-inline">-->
                                <!--<input type="radio" id="sex1" value="1" name="sex" ${1 == item.sex ? 'checked=checked' : ''}  >-->
                                <!--<label for="sex1"> 男 </label>-->
                            <!--</div>-->
                            <!--<div class="radio radio-success radio-inline">-->
                                <!--<input type="radio" id="sex2" value="2" name="sex" ${2 == item.sex ? 'checked=checked' : ''} >-->
                                <!--<label for="sex2"> 女 </label>-->
                            <!--</div>-->
                        <!--</div>-->
                    <!--</div>-->
                    <div class="form-group">
                        <label class="col-sm-3 control-label">性别:</label>
                        <div class="col-sm-9"  style="display: flex;align-items: center;">
                            <div class="radio radio-info radio-inline">
                                <input type="radio" id="sex1" value="1" name="sex" ${1 == item.sex ? 'checked=checked' : ''}  >
                                <label for="sex1"> 男 </label>
                            </div>
                            <div class="radio radio-success radio-inline">
                                <input type="radio" id="sex2" value="2" name="sex" ${2 == item.sex ? 'checked=checked' : ''} >
                                <label for="sex2"> 女 </label>
                            </div>
                        </div>
                    </div>
                    <#input id="birthday" name="出生日期" value="${item.birthday}"/>
                    <#input id="email" name="邮箱地址"  value="${item.email}" type="email"/>
                    <#input id="driveCard" name="驾驶证号码" value="${item.driveCard}"/>
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_immediately.html
@@ -9,7 +9,7 @@
                    <#label id="name" name="名" value="${item.firstName}"/>
                    <#label id="phoneOperator" name="手机号运营商" value="${item.phoneOperator}"/>
                    <#label id="phone" name="手机号" value="${item.phone}"/>
                    <!--<#label id="sexStr" name="性别" value="${item.sexStr}"/>-->
                    <#label id="sexStr" name="性别" value="${item.sexStr}"/>
                    <#label id="addTypeStr" name="司机来源" value="${item.addTypeStr}"/>
                    <#label id="driveCard" name="驾驶证号码" value="${item.driveCard}"/>
                    <div class="form-group">
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_look.html
@@ -9,7 +9,7 @@
                    <#label id="name" name="名" value="${item.firstName}"/>
                    <#label id="phoneOperator" name="手机号运营商" value="${item.phoneOperator}"/>
                    <#label id="phone" name="手机号" value="${item.phone}"/>
                    <!--<#label id="sexStr" name="性别" value="${item.sexStr}"/>-->
                    <#label id="sexStr" name="性别" value="${item.sexStr}"/>
                    <#label id="addTypeStr" name="司机来源" value="${item.addTypeStr}"/>
                    <#label id="driveCard" name="驾驶证号码" value="${item.driveCard}"/>
                    <div class="form-group">
ManagementIGOTravel/pom.xml
@@ -222,19 +222,13 @@
    <profiles>
        <profile>
            <id>local</id>
            <properties>
                <spring.active>local</spring.active>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <id>dev</id>
            <properties>
                <spring.active>dev</spring.active>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <id>test</id>
UserIGOTravel/guns-admin/pom.xml
@@ -73,17 +73,17 @@
            <artifactId>hutool-all</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <scope>provided</scope>
        </dependency>
        <!--<dependency>-->
            <!--<groupId>org.springframework.boot</groupId>-->
            <!--<artifactId>spring-boot-starter-tomcat</artifactId>-->
            <!--<scope>provided</scope>-->
        <!--</dependency>-->
        <!--<dependency>-->
            <!--<groupId>javax.servlet</groupId>-->
            <!--<artifactId>javax.servlet-api</artifactId>-->
            <!--<version>3.1.0</version>-->
            <!--<scope>provided</scope>-->
        <!--</dependency>-->
        <!--shiro依赖-->
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -434,7 +434,7 @@
            @ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=城际,4=同城小件,5=跨城小件)", name = "orderType", required = true, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<OrderInfoWarpper> queryOrderInfo(Integer orderId, Integer orderType){
    public ResultUtil<OrderInfoWarpper> queryOrderInfo(Integer orderId, Integer orderType, Integer language){
        try {
            Map<String, Object> map = null;
            switch (orderType){
@@ -458,6 +458,15 @@
                map.put("driverPhone", map.get("telX"));
            }
            OrderInfoWarpper orderInfoWarpper = OrderInfoWarpper.getOrderInfoWarpper(map);
            String driverName = orderInfoWarpper.getDriverName();
            if(language == 2){
                driverName = "Master " + driverName.replace("师傅", "");
            }
            if(language == 3){
                driverName = "Maître " + driverName.replace("师傅", "");
            }
            orderInfoWarpper.setDriverName(driverName);
            File file = new File(filePath + orderId + "_1.txt");
            if(file.exists()){
                //读取文件(字符流)
@@ -493,7 +502,7 @@
            @ApiImplicitParam(value = "订单id", name = "orderId", required = true, dataType = "int"),
            @ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=城际,4=同城小件,5=跨城小件)", name = "orderType", required = true, dataType = "int"),
    })
    public ResultUtil<OrderInfoWarpper> queryOrderInfo_(Integer orderId, Integer orderType){
    public ResultUtil<OrderInfoWarpper> queryOrderInfo_(Integer orderId, Integer orderType, Integer language){
        try {
            Map<String, Object> map = null;
            switch (orderType){
@@ -516,8 +525,16 @@
            if(null != map.get("telX")){
                map.put("driverPhone", map.get("telX"));
            }
            return ResultUtil.success(OrderInfoWarpper.getOrderInfoWarpper(map));
            OrderInfoWarpper orderInfoWarpper = OrderInfoWarpper.getOrderInfoWarpper(map);
            String driverName = orderInfoWarpper.getDriverName();
            if(language == 2){
                driverName = "Master " + driverName.replace("师傅", "");
            }
            if(language == 3){
                driverName = "Maître " + driverName.replace("师傅", "");
            }
            orderInfoWarpper.setDriverName(driverName);
            return ResultUtil.success(orderInfoWarpper);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -541,7 +558,7 @@
            @ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=城际)", name = "orderType", required = true, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<OrderInfoWarpper> queryCancelPage(Integer orderId, Integer orderType){
    public ResultUtil<OrderInfoWarpper> queryCancelPage(Integer orderId, Integer orderType, Integer language){
        try {
            Map<String, Object> map = null;
            switch (orderType) {
@@ -561,7 +578,16 @@
                    map.put("cancelPayMoney", r.getData().getAmount());
                    break;
            }
            return ResultUtil.success(OrderInfoWarpper.getOrderInfoWarpper(map));
            OrderInfoWarpper orderInfoWarpper = OrderInfoWarpper.getOrderInfoWarpper(map);
            String driverName = orderInfoWarpper.getDriverName();
            if(language == 2){
                driverName = "Master " + driverName.replace("师傅", "");
            }
            if(language == 3){
                driverName = "Maître " + driverName.replace("师傅", "");
            }
            orderInfoWarpper.setDriverName(driverName);
            return ResultUtil.success(orderInfoWarpper);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml
@@ -225,7 +225,7 @@
        a.state as state,
        a.oldState as oldState,
        DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime,
        DATE_FORMAT(a.travelTime, '%m月%d日 %H:%i') as travelTime,
        DATE_FORMAT(a.travelTime, '%m-%d %H:%i') as travelTime,
        DATE_FORMAT(a.arriveTime, '%Y-%m-%d %H:%i:%s') as arriveTime,
        DATE_FORMAT(a.travelTime, '%Y-%m-%d %H:%i:%s') as travelTime1,
        a.startLon as startLon,
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -132,11 +132,13 @@
    @Value("${spring.mail.template-path}")
    private String templatePath;
    @Autowired
    private TEmailService emailService;
    private static List<Integer> orderIds = new ArrayList<>();
    @Autowired
    private IPhoneService phoneService;
@@ -633,6 +635,9 @@
                                start_address_chinese.text(orderLogistics.getStartAddress());
                                Element end_address_chinese = document.getElementById("end_address_chinese");
                                end_address_chinese.text(orderLogistics.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_chinese = document.getElementById("server_tel_chinese");
                                server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(2 == language){
                                document.getElementById("chinese").remove();
@@ -664,6 +669,9 @@
                                start_address_english.text(orderLogistics.getStartAddress());
                                Element end_address_english = document.getElementById("end_address_english");
                                end_address_english.text(orderLogistics.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_english = document.getElementById("server_tel_english");
                                server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(3 == language){
                                document.getElementById("chinese").remove();
@@ -695,6 +703,9 @@
                                start_address_french.text(orderLogistics.getStartAddress());
                                Element end_address_french = document.getElementById("end_address_french");
                                end_address_french.text(orderLogistics.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_french = document.getElementById("server_tel_french");
                                server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            EmailUtil.send(userInfo.getEmail(), language == 1 ? "包裹收据" : language == 2 ? "Parcel receipt" : "Réception de colis",  document.html());
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml
@@ -337,7 +337,7 @@
        select
        id as orderId,
        DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as orderTime,
        DATE_FORMAT(travelTime, '%m月%d日 %H:%i') as time,
        DATE_FORMAT(travelTime, '%m-%d %H:%i') as time,
        startAddress as startAddress,
        endAddress as endAddress,
        driverId as driverId,
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -194,6 +194,9 @@
    @Autowired
    private TEmailService emailService;
    @Autowired
    private IPhoneService phoneService;
    /**
@@ -1068,6 +1071,9 @@
                                end_time_chinese.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_chinese = document.getElementById("end_address_chinese");
                                end_address_chinese.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_chinese = document.getElementById("server_tel_chinese");
                                server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(2 == language){
                                document.getElementById("chinese").remove();
@@ -1109,6 +1115,9 @@
                                end_time_english.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_english = document.getElementById("end_address_english");
                                end_address_english.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_english = document.getElementById("server_tel_english");
                                server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(3 == language){
                                document.getElementById("chinese").remove();
@@ -1150,6 +1159,9 @@
                                end_time_french.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_french = document.getElementById("end_address_french");
                                end_address_french.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_french = document.getElementById("server_tel_french");
                                server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            EmailUtil.send(userInfo.getEmail(), language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de Ride",  document.html());
@@ -1368,6 +1380,9 @@
                                end_time_chinese.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_chinese = document.getElementById("end_address_chinese");
                                end_address_chinese.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_chinese = document.getElementById("server_tel_chinese");
                                server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(2 == language){
                                document.getElementById("chinese").remove();
@@ -1409,6 +1424,9 @@
                                end_time_english.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_english = document.getElementById("end_address_english");
                                end_address_english.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_english = document.getElementById("server_tel_english");
                                server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(3 == language){
                                document.getElementById("chinese").remove();
@@ -1450,6 +1468,9 @@
                                end_time_french.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_french = document.getElementById("end_address_french");
                                end_address_french.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_french = document.getElementById("server_tel_french");
                                server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            EmailUtil.send(userInfo.getEmail(), language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de Ride",  document.html());
@@ -1863,6 +1884,9 @@
                                end_time_chinese.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_chinese = document.getElementById("end_address_chinese");
                                end_address_chinese.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_chinese = document.getElementById("server_tel_chinese");
                                server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(2 == language){
                                document.getElementById("chinese").remove();
@@ -1904,6 +1928,9 @@
                                end_time_english.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_english = document.getElementById("end_address_english");
                                end_address_english.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_english = document.getElementById("server_tel_english");
                                server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            if(3 == language){
                                document.getElementById("chinese").remove();
@@ -1945,6 +1972,9 @@
                                end_time_french.text(sdf2.format(orderPrivateCar.getEndServiceTime()));
                                Element end_address_french = document.getElementById("end_address_french");
                                end_address_french.text(orderPrivateCar.getEndAddress());
                                Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId()));
                                Element server_tel_french = document.getElementById("server_tel_french");
                                server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                            }
                            EmailUtil.send(userInfo.getEmail(), language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de Ride",  document.html());
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -170,6 +170,7 @@
    @Override
    public boolean checkCaptcha(String phone, String code) throws Exception {
        Object value = redisUtil.getValue(phone);
        redisUtil.remove(phone);
        if("1246".equals(code)){
            return true;
        }
@@ -2068,7 +2069,6 @@
     * @param id
     */
    private void singlePointLogin(Integer id) throws Exception{
        pushUtil.pushOffline(id, 1);
        //开始验证当前账号是否在别处登录
        String value = redisUtil.getValue("USER_" + id);
        if(ToolUtil.isNotEmpty(value)){//将另外设备上的强迫下线
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SMSUtil.java
@@ -1,6 +1,10 @@
package com.stylefeng.guns.modular.system.util;
import cn.hutool.http.ContentType;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.twilio.Twilio;
@@ -271,9 +275,6 @@
        }
    }
    @Autowired
    private HttpClientUtil httpClientUtil;
    /**
     * Cellulant短信
@@ -283,13 +284,18 @@
     */
    public boolean sendCellulantMessage(String toPhone, String msg){
        String url = "https://sms.nalosolutions.com/smsbackend/Nal_resl/send-message/";
        Map<String, Object> params = new HashMap<>();
        HttpRequest post = HttpUtil.createPost(url);
        post.contentType(ContentType.JSON.toString());
        JSONObject params = new JSONObject();
        params.put("key", "ru#0flkf3993qh!!rg!@y4)nhwi08c#tg_vasek!ja)kvfnfjyoljoz(@nai(jkf");
        params.put("msisdn", toPhone);
        params.put("message", msg);
        params.put("sender_id", "I-GO");
        String s = httpClientUtil.pushHttpRequset("POST", url, params, null, "json");
        JSONObject jsonObject = JSON.parseObject(s);
        post.body(params.toJSONString());
        HttpResponse execute = post.execute();
        String body = execute.body();
        execute.close();
        JSONObject jsonObject = JSON.parseObject(body);
        Integer status = jsonObject.getInteger("status");
        if(1701 == status){
            return true;
@@ -299,31 +305,4 @@
    }
    public static void main(String[] args) {
//        try {
//            SMSUtil.send_huawei_sms("b793ae3d41a049059197bfe92cf8bc83", "+233500666666", "[\"1234\"]");
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
        // Find your Account SID and Auth Token at twilio.com/console
        // and set the environment variables. See http://twil.io/secure
//        String ACCOUNT_SID = "AC1fd05e898bd59d17ba72db621afca537";
//        String AUTH_TOKEN = "7cee1a6cb0e2936a9037be577b1ffe57";
//        try {
//            Twilio.init(ACCOUNT_SID, AUTH_TOKEN);
//            Message message = Message.creator(
//                    new PhoneNumber("+233570111999"),
//                    new PhoneNumber("+16672740015"),
//                    "This is the ship that made the Kessel Run in fourteen parsecs?"
//            ).create();
//            System.out.println(message.getSid() + "--->" + message.getStatus().toString());
//        }catch (Exception e){
//            e.printStackTrace();
//        }
    }
}
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java
@@ -20,11 +20,11 @@
 */
public class TinggPayUtil {
    private static String accessKey = "8rc1gTV9n91Tc1Sy9oVWry99fgrgrVV8concf9onWooWSg9TVW8nSgo98g88";
    private static String accessKey = "KxjPP444jEE7K88E7juej4PKqqzKq7qKjKj84q744q9zj4Ej4zK47uj4KKj4";
    private static String ivKey = "ABp0pqpHMteEJM2N";
    private static String ivKey = "qsffKsCOJJdhSBCQ";
    private static String secretKey = "rf8Vo1n9yTSW98cg";
    private static String secretKey = "9jjz4Ex74P8ue4qK";
    /**
@@ -53,7 +53,7 @@
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String countryCode="GHA";//收取付款的国家的3位ISO代码
        String currencyCode = "GHS";//3位ISO代码的货币,商家正在开发票。
        String serviceCode="I-GO_TECHNOLOGIES_LI";//服务代码
        String serviceCode="IGOGHANA";//服务代码
        String dueDate = sdf.format(new Date(System.currentTimeMillis() + 1800000));//到期时间
        String languageCode="EN";
        String paymentOptionCode = "";//支付选项码
@@ -87,6 +87,7 @@
    public static void main(String[] ages){
        CheckoutRequest checkoutRequest = new CheckoutRequest();
        checkoutRequest.setMsisdn(Long.valueOf("2030376339310"));
@@ -95,7 +96,7 @@
        checkoutRequest.setCustomerFirstName("ZHONGSHI");
        checkoutRequest.setCustomerLastName("HUANG");
        checkoutRequest.setRequestAmount(1.00D);
        checkoutRequest.setMerchantTransactionId("00024");
        checkoutRequest.setMerchantTransactionId("00025");
        checkoutRequest.setRequestDescription("payment test");
        checkoutRequest.setCallbackUrl("https://10pz685243.zicp.fun/base/IGO/wxCancelUserBalance");
        checkoutRequest.setPendingRedirectUrl("https://www.baidu.com");
ZuulIGOTravel/src/main/java/com/sinata/zuul/ZuulApplication.java
@@ -26,9 +26,11 @@
import springfox.documentation.swagger.web.SwaggerResource;
import springfox.documentation.swagger.web.SwaggerResourcesProvider;
import javax.annotation.PostConstruct;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import java.util.TimeZone;
//@EnableHystrix
@EnableSwagger2Doc
@@ -46,6 +48,12 @@
    }
    @PostConstruct
    void started() {
        TimeZone.setDefault(TimeZone.getTimeZone("GMT+0"));
    }
    @Bean //SpringCloud内部服务质检使用服务名调用
    @LoadBalanced
    public RestTemplate internalRestTemplate() {
ZuulIGOTravel/src/main/java/com/sinata/zuul/util/NettyStartListener.java
@@ -6,6 +6,7 @@
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import java.util.TimeZone;
/**
 * 启动netty监听器
@@ -24,6 +25,8 @@
                NettyServer0 nettyServer0 = new NettyServer0();
                nettyServer0.bind();
                TimeZone.setDefault(TimeZone.getTimeZone("GMT+0"));
            }
        });
        thread.start();