From 821fc2f632f8b974a2c0fc37630e13c5fbe6086c Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 26 九月 2025 17:26:16 +0800
Subject: [PATCH] 修改bug

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java |  133 ++++++++++++++++++++++---------------------
 1 files changed, 68 insertions(+), 65 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index bb826ae..185eefa 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -351,8 +351,7 @@
             }
 
             orderPrivateCar.setDriverId(driverId);
-            orderPrivateCar.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                    driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+            orderPrivateCar.setCompanyId(driver.getCompanyId());
             orderPrivateCar.setState(2);
             orderPrivateCar.setCarId(driver.getCarId());
             CarService query1 = carServiceMapper.query(1, driver.getCarId());
@@ -483,7 +482,7 @@
                 public void run() {
                     try {
                         // 使用Runtime执行命令
-                        Process process = Runtime.getRuntime().exec("sudo rm -rf /home/igotechgh/nginx/html/files/audio/" + fileName);
+                        Process process = Runtime.getRuntime().exec("sudo rm -rf /data/nginx/html/files/audio/" + fileName);
                         // 读取命令的输出
                         BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
                         String line;
@@ -503,8 +502,8 @@
             new Thread(new Runnable() {
                 @Override
                 public void run() {
-                    pushUtil.pushOrderState(1, uid, orderPrivateCar.getId(), 1, 2, 0, "");
-                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, 2, 0, finalAudioUrl);
+                    pushUtil.pushOrderState(1, uid, orderPrivateCar.getId(), 1, 2, 0, "", "user");
+                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, 2, 0, finalAudioUrl, "user");
                 }
             }).start();
         }
@@ -568,8 +567,7 @@
                             .eq("state", 1).like("type", "1"));
                     if(driver.getState() == 2 && null != driverWork){
                         orderPrivateCar.setDriverId(dr.getId());
-                        orderPrivateCar.setCompanyId(dr.getFranchiseeId() != null && dr.getFranchiseeId() != 0 ? dr.getFranchiseeId() : (
-                                dr.getCompanyId() != null && dr.getCompanyId() != 0 ? dr.getCompanyId() : 1));
+                        orderPrivateCar.setCompanyId(dr.getCompanyId());
                         orderPrivateCar.setState(2);
                         orderPrivateCar.setCarId(dr.getCarId());
                         CarService query1 = carServiceMapper.query(1, dr.getCarId());
@@ -617,7 +615,7 @@
                             public void run() {
                                 try {
                                     // 使用Runtime执行命令
-                                    Process process = Runtime.getRuntime().exec("sudo rm -rf /home/igotechgh/nginx/html/files/audio/" + fileName);
+                                    Process process = Runtime.getRuntime().exec("sudo rm -rf /data/nginx/html/files/audio/" + fileName);
                                     // 读取命令的输出
                                     BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
                                     String line;
@@ -638,8 +636,8 @@
                         new Thread(new Runnable() {
                             @Override
                             public void run() {
-                                pushUtil.pushOrderState(1, uid, orderPrivateCar.getId(), 1, 2, 0, "");
-                                pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, 2, 0, finalAudioUrl);
+                                pushUtil.pushOrderState(1, uid, orderPrivateCar.getId(), 1, 2, 0, "", "user");
+                                pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, 2, 0, finalAudioUrl, "user");
                             }
                         }).start();
                     }
@@ -821,7 +819,9 @@
                 }
             }
         }
-
+        if(null == lon || null == lat){
+            return ResultUtil.error(language == 1 ? "无效的经纬度" : language == 2 ? "Invalid longitude and latitude" : "Longitude et latitude non valides");
+        }
         language = userInfoService.queryLanguage(uid, language);
         OrderPrivateCar orderPrivateCar = this.selectById(id);
         Integer integer = null;
@@ -917,8 +917,8 @@
                             }
                             break;
                     }
-                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
-                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState() == 12 ? orderPrivateCar.getState() : 10, 0, audioUrl);
+                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
+                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState() == 12 ? orderPrivateCar.getState() : 10, 0, audioUrl, "user");
                     System.err.println("推送取消操作---------------------");
                 }
             }).start();
@@ -1084,11 +1084,11 @@
                     }
     
                     this.deleteTask(id);//删除定时任务
-                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
+                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
                 }else{
                     incomeService.saveData(1, orderPrivateCar.getCompanyId(), 3, orderPrivateCar.getId(), 1, amount.doubleValue());
                 }
-                pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
+                pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
 
                 //添加消息
                 systemNoticeService.addSystemNotice(1, language == 1 ? "您已使用余额成功支付取消订单费用,谢谢使用!" : language == 2
@@ -1173,7 +1173,7 @@
                                     public void run() {
                                         try {
                                             // 使用Runtime执行命令
-                                            Process process = Runtime.getRuntime().exec("sudo rm -rf /home/igotechgh/nginx/html/files/audio/" + fileName);
+                                            Process process = Runtime.getRuntime().exec("sudo rm -rf /data/nginx/html/files/audio/" + fileName);
                                             // 读取命令的输出
                                             BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
                                             String line;
@@ -1190,7 +1190,7 @@
                                     }
                                 }, 30000);
                                 
-                                pushUtil.pushOrderState(2, driver.getId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), pushOrder.getPushTime(), audioUrl);
+                                pushUtil.pushOrderState(2, driver.getId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), pushOrder.getPushTime(), audioUrl, "user");
                             }
                         }
                         Thread.sleep(pushOrder.getPushTime() * 1000);//设置等待时间
@@ -1309,7 +1309,7 @@
         if(null != query2){
             Integer orderNum=this.selectCount(new EntityWrapper<OrderPrivateCar>().eq("userId",orderPrivateCar.getUserId())
                     .eq("activityId",query2.getId()).last(" and to_days(getoffTime) = to_days(now())"));
-            if(query2.getDistance()*1000>orderPrivateCar.getMileage() && query2.getOrderNum()>orderNum){
+            if(query2.getDistance() * 1000 > orderPrivateCar.getMileage() && query2.getOrderNum().compareTo(orderNum) > 0){
                 Double special = query2.getSpecial();
                 if(null != special){
                     orderPrivateCar.setDiscount(special);
@@ -1345,7 +1345,7 @@
             if(userCouponRecord.getCouponType() == 2 && orderMoney.compareTo(new BigDecimal(userCouponRecord.getFullMoney())) < 0){
                 return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupon cannot be used for this order." : "Le coupon ne peut pas être utilisé pour cette commande.", "");
             }
-            orderMoney = orderMoney.subtract(new BigDecimal(userCouponRecord.getMoney())).setScale(2, RoundingMode.HALF_EVEN);
+            orderMoney = orderMoney.subtract(new BigDecimal(userCouponRecord.getMoney()));
             orderPrivateCar.setCouponMoney(userCouponRecord.getMoney());
             orderPrivateCar.setCouponId(couponId);
         }
@@ -1361,7 +1361,7 @@
                 BigDecimal multiply1 = orderMoney.multiply(deductionRatio.divide(new BigDecimal(100))).setScale(2, RoundingMode.HALF_EVEN);
                 if(total > 0 && multiply1.doubleValue() > 0 && total.compareTo(multiply1.doubleValue()) >= 0){
                     orderPrivateCar.setRedPacketMoney(multiply1.doubleValue());
-                    orderMoney = orderMoney.subtract(multiply1).setScale(2, RoundingMode.HALF_EVEN);
+                    orderMoney = orderMoney.subtract(multiply1);
                 
                     //获取红包id
                     JSONArray jsonArray = new JSONArray();
@@ -1391,7 +1391,7 @@
                     orderPrivateCar.setRedPacketId(jsonArray.toJSONString());
                 }else if(total > 0 && total.compareTo(multiply1.doubleValue()) < 0){
                     orderPrivateCar.setRedPacketMoney(total);
-                    orderMoney = orderMoney.subtract(new BigDecimal(total)).setScale(2, RoundingMode.HALF_EVEN);
+                    orderMoney = orderMoney.subtract(new BigDecimal(total));
                     //获取红包id
                     JSONArray jsonArray = new JSONArray();
                     for (UserRedPacketRecord userRedPacketRecord : userRedPacketRecords) {
@@ -1530,6 +1530,7 @@
                                 aDouble = orderEvaluateService.queryDriverScore(orderPrivateCar.getDriverId());
                             }
                             Double aDouble1 = new BigDecimal(orderPrivateCar.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
+                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             if(1 == language){
                                 document.getElementById("english").remove();
                                 document.getElementById("french").remove();
@@ -1611,7 +1612,7 @@
                                 Element lost_item_chinese = document.getElementById("lost_item_chinese");
                                 lost_item_chinese.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=1");
                                 Element track_chinese = document.getElementById("track_chinese");
-                                track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId);
+                                track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId + "&language=" + language);
                                 Element pay_time_chinese = document.getElementById("pay_time_chinese");
                                 pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_chinese = document.getElementsByClass("driver_chinese");
@@ -1624,7 +1625,7 @@
                                 Element pf_chinese = document.getElementById("pf_chinese");
                                 pf_chinese.text("司机评分:" + aDouble);
                                 Element lc_chinese = document.getElementById("lc_chinese");
-                                lc_chinese.text("里程:" + aDouble1 + "公里 /" + orderPrivateCar.getDuration() + "分钟");
+                                lc_chinese.text("里程:" + aDouble1 + "公里 /" + serviceTime + "分钟");
                                 Element start_time_chinese = document.getElementById("start_time_chinese");
                                 start_time_chinese.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_chinese = document.getElementById("start_address_chinese");
@@ -1718,7 +1719,7 @@
                                 Element lost_item_english = document.getElementById("lost_item_english");
                                 lost_item_english.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=1");
                                 Element track_english = document.getElementById("track_english");
-                                track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId);
+                                track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId + "&language=" + language);
                                 Element pay_time_english = document.getElementById("pay_time_english");
                                 pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_english = document.getElementsByClass("driver_english");
@@ -1731,7 +1732,7 @@
                                 Element pf_english = document.getElementById("pf_english");
                                 pf_english.text("Driver Rating:" + aDouble);
                                 Element lc_english = document.getElementById("lc_english");
-                                lc_english.text("Mileage:" + aDouble1 + "KM / " + orderPrivateCar.getDuration() + "Minutes");
+                                lc_english.text("Mileage:" + aDouble1 + "KM / " + serviceTime + "Minutes");
                                 Element start_time_english = document.getElementById("start_time_english");
                                 start_time_english.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_english = document.getElementById("start_address_english");
@@ -1825,7 +1826,7 @@
                                 Element lost_item_french = document.getElementById("lost_item_french");
                                 lost_item_french.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=1");
                                 Element track_french = document.getElementById("track_french");
-                                track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId);
+                                track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId + "&language=" + language);
                                 Element pay_time_french = document.getElementById("pay_time_french");
                                 pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_french = document.getElementsByClass("driver_french");
@@ -1838,7 +1839,7 @@
                                 Element pf_french = document.getElementById("pf_french");
                                 pf_french.text("Note du chauffeur: " + aDouble);
                                 Element lc_french = document.getElementById("lc_french");
-                                lc_french.text("Distance: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes");
+                                lc_french.text("Distance: " + aDouble1 + "km / " + serviceTime + "minutes");
                                 Element start_time_french = document.getElementById("start_time_french");
                                 start_time_french.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_french = document.getElementById("start_address_french");
@@ -1854,11 +1855,11 @@
                             EmailUtil.send(userInfo.getEmail(), language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de course",  document.html());
                         
                             //开始生成pdf收据和html收据
-                            File file = new File("/home/igotechgh/nginx/html/files/html/");
+                            File file = new File("/data/nginx/html/files/html/");
                             if(!file.exists()){
                                 file.mkdirs();
                             }
-                            file = new File("/home/igotechgh/nginx/html/files/html/ride_receipt_" + orderId + ".html");
+                            file = new File("/data/nginx/html/files/html/ride_receipt_" + orderId + ".html");
                             if(!file.exists()){
                                 file.createNewFile();
                             }
@@ -1867,17 +1868,17 @@
                             fileWriter.flush();
                             fileWriter.close();
                         
-                            File file1 = new File("/home/igotechgh/nginx/html/files/pdf/");
+                            File file1 = new File("/data/nginx/html/files/pdf/");
                             if(!file1.exists()){
                                 file1.mkdirs();
                             }
-                            file1 = new File("/home/igotechgh/nginx/html/files/pdf/ride_receipt_" + orderId + ".pdf");
+                            file1 = new File("/data/nginx/html/files/pdf/ride_receipt_" + orderId + ".pdf");
                             if(!file1.exists()){
                                 file1.createNewFile();
                             }
                             try {
                                 FileOutputStream fileOutputStream = new FileOutputStream(file1);
-                                HtmlToPdfUtils.convertToPdf("/home/igotechgh/nginx/html/files/html/ride_receipt_" + orderId + ".html", "I-GO", fileOutputStream);
+                                HtmlToPdfUtils.convertToPdf("/data/nginx/html/files/html/ride_receipt_" + orderId + ".html", "I-GO", fileOutputStream);
                             }catch (Exception e){
                                 e.printStackTrace();
                                 System.out.println("html转pdf异常");
@@ -1916,8 +1917,8 @@
             new Thread(new Runnable() {
                 @Override
                 public void run() {
-                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
-                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
+                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
+                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
                 }
             }).start();
         
@@ -2120,6 +2121,7 @@
                                 aDouble = orderEvaluateService.queryDriverScore(orderPrivateCar.getDriverId());
                             }
                             Double aDouble1 = new BigDecimal(orderPrivateCar.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
+                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
                             if(1 == language){
                                 document.getElementById("english").remove();
@@ -2202,7 +2204,7 @@
                                 Element lost_item_chinese = document.getElementById("lost_item_chinese");
                                 lost_item_chinese.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=1");
                                 Element track_chinese = document.getElementById("track_chinese");
-                                track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId);
+                                track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId + "&language=" + language);
                                 Element pay_time_chinese = document.getElementById("pay_time_chinese");
                                 pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_chinese = document.getElementsByClass("driver_chinese");
@@ -2215,7 +2217,7 @@
                                 Element pf_chinese = document.getElementById("pf_chinese");
                                 pf_chinese.text("司机评分:" + aDouble);
                                 Element lc_chinese = document.getElementById("lc_chinese");
-                                lc_chinese.text("里程:" + aDouble1 + "公里 /" + orderPrivateCar.getDuration() + "分钟");
+                                lc_chinese.text("里程:" + aDouble1 + "公里 /" + serviceTime + "分钟");
                                 Element start_time_chinese = document.getElementById("start_time_chinese");
                                 start_time_chinese.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_chinese = document.getElementById("start_address_chinese");
@@ -2309,7 +2311,7 @@
                                 Element lost_item_english = document.getElementById("lost_item_english");
                                 lost_item_english.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=1");
                                 Element track_english = document.getElementById("track_english");
-                                track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId);
+                                track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId + "&language=" + language);
                                 Element pay_time_english = document.getElementById("pay_time_english");
                                 pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_english = document.getElementsByClass("driver_english");
@@ -2322,7 +2324,7 @@
                                 Element pf_english = document.getElementById("pf_english");
                                 pf_english.text("Driver Rating:" + aDouble);
                                 Element lc_english = document.getElementById("lc_english");
-                                lc_english.text("Mileage:" + aDouble1 + "KM / " + orderPrivateCar.getDuration() + "Minutes");
+                                lc_english.text("Mileage:" + aDouble1 + "KM / " + serviceTime + "Minutes");
                                 Element start_time_english = document.getElementById("start_time_english");
                                 start_time_english.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_english = document.getElementById("start_address_english");
@@ -2416,7 +2418,7 @@
                                 Element lost_item_french = document.getElementById("lost_item_french");
                                 lost_item_french.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=1");
                                 Element track_french = document.getElementById("track_french");
-                                track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId);
+                                track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + orderId + "&language=" + language);
                                 Element pay_time_french = document.getElementById("pay_time_french");
                                 pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_french = document.getElementsByClass("driver_french");
@@ -2429,7 +2431,7 @@
                                 Element pf_french = document.getElementById("pf_french");
                                 pf_french.text("Note du chauffeur: " + aDouble);
                                 Element lc_french = document.getElementById("lc_french");
-                                lc_french.text("Distance: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes");
+                                lc_french.text("Distance: " + aDouble1 + "km / " + serviceTime + "minutes");
                                 Element start_time_french = document.getElementById("start_time_french");
                                 start_time_french.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_french = document.getElementById("start_address_french");
@@ -2446,11 +2448,11 @@
                             EmailUtil.send(userInfo.getEmail(), language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de course",  document.html());
                         
                             //开始生成pdf收据和html收据
-                            File file = new File("/home/igotechgh/nginx/html/files/html/");
+                            File file = new File("/data/nginx/html/files/html/");
                             if(!file.exists()){
                                 file.mkdirs();
                             }
-                            file = new File("/home/igotechgh/nginx/html/files/html/ride_receipt_" + orderId + ".html");
+                            file = new File("/data/nginx/html/files/html/ride_receipt_" + orderId + ".html");
                             if(!file.exists()){
                                 file.createNewFile();
                             }
@@ -2459,17 +2461,17 @@
                             fileWriter.flush();
                             fileWriter.close();
                         
-                            File file1 = new File("/home/igotechgh/nginx/html/files/pdf/");
+                            File file1 = new File("/data/nginx/html/files/pdf/");
                             if(!file1.exists()){
                                 file1.mkdirs();
                             }
-                            file1 = new File("/home/igotechgh/nginx/html/files/pdf/ride_receipt_" + orderId + ".pdf");
+                            file1 = new File("/data/nginx/html/files/pdf/ride_receipt_" + orderId + ".pdf");
                             if(!file1.exists()){
                                 file1.createNewFile();
                             }
                             try {
                                 FileOutputStream fileOutputStream = new FileOutputStream(file1);
-                                HtmlToPdfUtils.convertToPdf("/home/igotechgh/nginx/html/files/html/ride_receipt_" + orderId + ".html", "I-GO", fileOutputStream);
+                                HtmlToPdfUtils.convertToPdf("/data/nginx/html/files/html/ride_receipt_" + orderId + ".html", "I-GO", fileOutputStream);
                             }catch (Exception e){
                                 e.printStackTrace();
                                 System.out.println("html转pdf异常");
@@ -2506,8 +2508,8 @@
             new Thread(new Runnable() {
                 @Override
                 public void run() {
-                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
-                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
+                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
+                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
                     Integer language1 = driver.getLanguage();
                     String text = "";
                     switch (language1){
@@ -2535,7 +2537,7 @@
                         public void run() {
                             try {
                                 // 使用Runtime执行命令
-                                Process process = Runtime.getRuntime().exec("sudo rm -rf /home/igotechgh/nginx/html/files/audio/" + fileName);
+                                Process process = Runtime.getRuntime().exec("sudo rm -rf /data/nginx/html/files/audio/" + fileName);
                                 // 读取命令的输出
                                 BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
                                 String line;
@@ -2672,11 +2674,11 @@
 
                 EmailUtil.send(userInfo.getEmail(), language == 1 ? "红包活动" : language == 2 ? "Lucky-promo activities" : "Activités bonus",  document.html());
                 //开始生成pdf收据和html收据
-                File file = new File("/home/igotechgh/nginx/html/files/html/");
+                File file = new File("/data/nginx/html/files/html/");
                 if(!file.exists()){
                     file.mkdirs();
                 }
-                file = new File("/home/igotechgh/nginx/html/files/html/redpacket_" + orderId + ".html");
+                file = new File("/data/nginx/html/files/html/redpacket_" + orderId + ".html");
                 if(!file.exists()){
                     file.createNewFile();
                 }
@@ -2768,11 +2770,11 @@
                 }
                 this.deleteTask(orderPrivateCar.getId());//删除定时任务
     
-                pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
+                pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
             }else{
                 incomeService.saveData(1, orderPrivateCar.getCompanyId(), 3, orderPrivateCar.getId(), 1, amount.doubleValue());
             }
-            pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
+            pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
 
             //添加消息
             systemNoticeService.addSystemNotice(1, language == 1 ? "您已使用余额成功支付取消订单费用,谢谢使用!" : language == 2
@@ -2852,6 +2854,7 @@
                                 aDouble = orderEvaluateService.queryDriverScore(orderPrivateCar.getDriverId());
                             }
                             Double aDouble1 = new BigDecimal(orderPrivateCar.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
+                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             if(1 == language){
                                 document.getElementById("english").remove();
                                 document.getElementById("french").remove();
@@ -2933,7 +2936,7 @@
                                 Element lost_item_chinese = document.getElementById("lost_item_chinese");
                                 lost_item_chinese.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + id + "&orderType=1");
                                 Element track_chinese = document.getElementById("track_chinese");
-                                track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + id);
+                                track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + id + "&language=" + language);
                                 Element pay_time_chinese = document.getElementById("pay_time_chinese");
                                 pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_chinese = document.getElementsByClass("driver_chinese");
@@ -2946,7 +2949,7 @@
                                 Element pf_chinese = document.getElementById("pf_chinese");
                                 pf_chinese.text("司机评分:" + aDouble);
                                 Element lc_chinese = document.getElementById("lc_chinese");
-                                lc_chinese.text("里程:" + aDouble1 + "公里 /" + orderPrivateCar.getDuration() + "分钟");
+                                lc_chinese.text("里程:" + aDouble1 + "公里 /" + serviceTime + "分钟");
                                 Element start_time_chinese = document.getElementById("start_time_chinese");
                                 start_time_chinese.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_chinese = document.getElementById("start_address_chinese");
@@ -3040,7 +3043,7 @@
                                 Element lost_item_english = document.getElementById("lost_item_english");
                                 lost_item_english.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + id + "&orderType=1");
                                 Element track_english = document.getElementById("track_english");
-                                track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + id);
+                                track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + id + "&language=" + language);
                                 Element pay_time_english = document.getElementById("pay_time_english");
                                 pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_english = document.getElementsByClass("driver_english");
@@ -3053,7 +3056,7 @@
                                 Element pf_english = document.getElementById("pf_english");
                                 pf_english.text("Driver Rating:" + aDouble);
                                 Element lc_english = document.getElementById("lc_english");
-                                lc_english.text("Mileage:" + aDouble1 + "KM / " + orderPrivateCar.getDuration() + "Minutes");
+                                lc_english.text("Mileage:" + aDouble1 + "KM / " + serviceTime + "Minutes");
                                 Element start_time_english = document.getElementById("start_time_english");
                                 start_time_english.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_english = document.getElementById("start_address_english");
@@ -3147,7 +3150,7 @@
                                 Element lost_item_french = document.getElementById("lost_item_french");
                                 lost_item_french.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + id + "&orderType=1");
                                 Element track_french = document.getElementById("track_french");
-                                track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + id);
+                                track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html?orderId=" + id + "&language=" + language);
                                 Element pay_time_french = document.getElementById("pay_time_french");
                                 pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime())));
                                 Elements driver_french = document.getElementsByClass("driver_french");
@@ -3160,7 +3163,7 @@
                                 Element pf_french = document.getElementById("pf_french");
                                 pf_french.text("Note du chauffeur: " + aDouble);
                                 Element lc_french = document.getElementById("lc_french");
-                                lc_french.text("Distance: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes");
+                                lc_french.text("Distance: " + aDouble1 + "km / " + serviceTime + "minutes");
                                 Element start_time_french = document.getElementById("start_time_french");
                                 start_time_french.text(sdf2.format(orderPrivateCar.getTravelTime()));
                                 Element start_address_french = document.getElementById("start_address_french");
@@ -3177,11 +3180,11 @@
                             EmailUtil.send(userInfo.getEmail(), language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de course",  document.html());
 
                             //开始生成pdf收据和html收据
-                            File file = new File("/home/igotechgh/nginx/html/files/html/");
+                            File file = new File("/data/nginx/html/files/html/");
                             if(!file.exists()){
                                 file.mkdirs();
                             }
-                            file = new File("/home/igotechgh/nginx/html/files/html/ride_receipt_" + id + ".html");
+                            file = new File("/data/nginx/html/files/html/ride_receipt_" + id + ".html");
                             if(!file.exists()){
                                 file.createNewFile();
                             }
@@ -3190,17 +3193,17 @@
                             fileWriter.flush();
                             fileWriter.close();
 
-                            File file1 = new File("/home/igotechgh/nginx/html/files/pdf/");
+                            File file1 = new File("/data/nginx/html/files/pdf/");
                             if(!file1.exists()){
                                 file1.mkdirs();
                             }
-                            file1 = new File("/home/igotechgh/nginx/html/files/pdf/ride_receipt_" + id + ".pdf");
+                            file1 = new File("/data/nginx/html/files/pdf/ride_receipt_" + id + ".pdf");
                             if(!file1.exists()){
                                 file1.createNewFile();
                             }
                             try {
                                 FileOutputStream fileOutputStream = new FileOutputStream(file1);
-                                HtmlToPdfUtils.convertToPdf("/home/igotechgh/nginx/html/files/html/ride_receipt_" + id + ".html", "I-GO", fileOutputStream);
+                                HtmlToPdfUtils.convertToPdf("/data/nginx/html/files/html/ride_receipt_" + id + ".html", "I-GO", fileOutputStream);
                             }catch (Exception e){
                                 e.printStackTrace();
                                 System.out.println("html转pdf异常");
@@ -3237,8 +3240,8 @@
             new Thread(new Runnable() {
                 @Override
                 public void run() {
-                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
-                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "");
+                    pushUtil.pushOrderState(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
+                    pushUtil.pushOrderState(2, orderPrivateCar.getDriverId(), orderPrivateCar.getId(), 1, orderPrivateCar.getState(), 0, "", "user");
                 }
             }).start();
 

--
Gitblit v1.7.1