From 4becc1e8cdb2fbe0dcb94493b75a59ec1817028c Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 04 十一月 2023 16:05:04 +0800
Subject: [PATCH] 修改bug

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java |  139 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 139 insertions(+), 0 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 3089f3c..ae75ffa 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
@@ -191,6 +191,12 @@
     @Autowired
     private ISettlementAllocationService settlementAllocationService;
 
+    @Autowired
+    private TEmailService emailService;
+
+    @Autowired
+    private IPhoneService phoneService;
+
 
 
     /**
@@ -748,6 +754,7 @@
                         PushOrder pushOrder = pushOrderService.querys(i, 1, query.getId()).get(0);
                         //获取空闲司机
                         List<Driver> list = driverService.queryIdleDriver(1, orderPrivateCar.getServerCarModelId(), orderPrivateCar.getStartLon(), orderPrivateCar.getStartLat(), pushOrder.getPushDistance(), null);//所有附近空闲司机
+                        System.err.println("【" + orderPrivateCar.getId() + "】空闲司机:" + JSON.toJSONString(list));
                         if(list.size() > 0){
                             double driverProportion = pushOrder.getDriverProportion() / 100;//推送占比计算成小数
                             int lastIndex = Double.valueOf(list.size() * driverProportion).intValue();//计算占比转成整数(下标截取)
@@ -1064,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();
@@ -1105,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();
@@ -1146,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());
 
@@ -1173,6 +1189,28 @@
                             }
                             FileOutputStream fileOutputStream = new FileOutputStream(file1);
                             HtmlToPdfUtils.convertToPdf(fileInputStream, "IGO", fileOutputStream);
+
+
+                            String link ="http://182.160.16.251:81/files/html/ride_receipt_" + orderId + ".html";
+                            TEmail tEmail = new TEmail();
+                            tEmail.setLink(link);
+                            tEmail.setUserId(uid);
+                            tEmail.setName(language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de Ride");
+                            tEmail.setType(1);
+                            tEmail.setOrderId(orderId);
+                            tEmail.setCreateTime(new Date());
+                            int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                            tEmail.setWeek(EmailUtil.getWeek(language,i));
+                            boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                            if(am){
+                                tEmail.setAmOrPm(language==1?"上午":language==2?"AM":"Dans la matinée");
+                            }else {
+                                tEmail.setAmOrPm(language==1?"下午":language==2?"PM":"après-midi");
+                            }
+                            emailService.insert(tEmail);
+
+
+
                         }catch (Exception e){
                             e.printStackTrace();
                         }
@@ -1342,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();
@@ -1383,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();
@@ -1424,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());
@@ -1452,6 +1499,25 @@
                             }
                             FileOutputStream fileOutputStream = new FileOutputStream(file1);
                             HtmlToPdfUtils.convertToPdf(fileInputStream, "IGO", fileOutputStream);
+                            String link ="http://182.160.16.251:81/files/html/ride_receipt_" + orderId + ".html";
+                            TEmail tEmail = new TEmail();
+                            tEmail.setLink(link);
+                            tEmail.setUserId(uid);
+                            tEmail.setName(language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de Ride");
+                            tEmail.setType(1);
+                            tEmail.setOrderId(orderId);
+                            tEmail.setCreateTime(new Date());
+                            int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                            tEmail.setWeek(EmailUtil.getWeek(language,i));
+                            boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                            if(am){
+                                tEmail.setAmOrPm(language==1?"上午":language==2?"AM":"Dans la matinée");
+                            }else {
+                                tEmail.setAmOrPm(language==1?"下午":language==2?"PM":"après-midi");
+                            }
+                            emailService.insert(tEmail);
+
+
                         }catch (Exception e){
                             e.printStackTrace();
                         }
@@ -1479,6 +1545,7 @@
         this.updateAllColumnById(orderPrivateCar);
         return resultUtil;
     }
+
 
     @Override
     public synchronized ResultUtil<BaseWarpper> queryRedMoney(Integer orderId) throws Exception {
@@ -1586,6 +1653,49 @@
                 }
 
                 EmailUtil.send(userInfo.getEmail(), language == 1 ? "红包活动" : language == 2 ? "Red envelope activity" : "Activité de l’enveloppe rouge",  document.html());
+                //开始生成pdf收据和html收据
+                File file = new File("/usr/local/nginx/html/files/html/");
+                if(!file.exists()){
+                    file.mkdirs();
+                }
+                file = new File("/usr/local/nginx/html/files/html/redpacket_" + orderId + ".html");
+                if(!file.exists()){
+                    file.createNewFile();
+                }
+                FileWriter fileWriter = new FileWriter(file);
+                fileWriter.write(document.html());
+                fileWriter.flush();
+                fileWriter.close();
+                FileInputStream fileInputStream = new FileInputStream(file);
+                File file1 = new File("/usr/local/nginx/html/files/pdf/");
+                if(!file1.exists()){
+                    file1.mkdirs();
+                }
+                file1 = new File("/usr/local/nginx/html/files/pdf/redpacket_" + orderId + ".pdf");
+                if(!file1.exists()){
+                    file1.createNewFile();
+                }
+                FileOutputStream fileOutputStream = new FileOutputStream(file1);
+                HtmlToPdfUtils.convertToPdf(fileInputStream, "IGO", fileOutputStream);
+
+                String link ="http://182.160.16.251:81/files/html/redpacket_" + orderId + ".html";
+                TEmail tEmail = new TEmail();
+                tEmail.setLink(link);
+                tEmail.setUserId(userInfo.getId());
+                tEmail.setType(1);
+                tEmail.setName( language == 1 ? "红包活动" : language == 2 ? "Red envelope activity" : "Activité de l’enveloppe rouge");
+                tEmail.setOrderId(orderId);
+                tEmail.setCreateTime(new Date());
+                int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                tEmail.setWeek(EmailUtil.getWeek(language,i));
+                boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                if(am){
+                    tEmail.setAmOrPm(language==1?"上午":language==2?"AM":"Dans la matinée");
+                }else {
+                    tEmail.setAmOrPm(language==1?"下午":language==2?"PM":"après-midi");
+                }
+                emailService.insert(tEmail);
+
             }
 
         }
@@ -1774,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();
@@ -1815,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();
@@ -1856,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());
@@ -1884,6 +2003,26 @@
                             }
                             FileOutputStream fileOutputStream = new FileOutputStream(file1);
                             HtmlToPdfUtils.convertToPdf(fileInputStream, "IGO", fileOutputStream);
+
+
+                            String link ="http://182.160.16.251:81/files/html/ride_receipt_" + id + ".html";
+                            TEmail tEmail = new TEmail();
+                            tEmail.setLink(link);
+                            tEmail.setName( language == 1 ? "打车收据" : language == 2 ? "Ride receipt" : "Reçu de Ride");
+                            tEmail.setUserId(userInfo.getId());
+                            tEmail.setType(1);
+                            tEmail.setOrderId(id);
+                            tEmail.setCreateTime(new Date());
+                            int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                            tEmail.setWeek(EmailUtil.getWeek(language,i));
+                            boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                            if(am){
+                                tEmail.setAmOrPm(language==1?"上午":language==2?"AM":"Dans la matinée");
+                            }else {
+                                tEmail.setAmOrPm(language==1?"下午":language==2?"PM":"après-midi");
+                            }
+                            emailService.insert(tEmail);
+
                         }catch (Exception e){
                             e.printStackTrace();
                         }

--
Gitblit v1.7.1