From b1f2f102034b4433201225b67a9fc78c08e532f0 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 06 六月 2025 18:35:03 +0800
Subject: [PATCH] 修改bug和管理后台报表

---
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java |  231 +++++++++++++++++++++++++++------------------------------
 1 files changed, 110 insertions(+), 121 deletions(-)

diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
index 68f009a..39f00d7 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -531,117 +531,118 @@
                     driverActivityHistory.setCompletionTime(new Date());
                     driverActivityHistoryMapper.updateById(driverActivityHistory);
                 }
-                driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                driver.setLaveActivityMoney(bigDecimal.add(new BigDecimal(driver.getLaveActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                driver.setBalance(bigDecimal.add(new BigDecimal(driver.getBalance())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                driverMapper.updateById(driver);
-
-                if(list.size() > 0 && ToolUtil.isNotEmpty(driver.getEmail())){
-                    Driver finalDriver = driver;
-                    BigDecimal finalBigDecimal = bigDecimal;
-                    new Thread(new Runnable() {
-                        @Override
-                        public void run() {
-                            try {
-                                String path = templatePath + "driver/index.html";
-                                Document document = Jsoup.parse(new File(path), "UTF-8");
-                                if(1 == language){
-                                    document.getElementById("english").remove();
-                                    document.getElementById("french").remove();
-                                    document.getElementById("user").remove();
-                                    document.getElementById("settle").remove();
-                                    document.getElementById("pass").remove();
-                                    document.getElementById("email").remove();
-                                    document.getElementById("bill").remove();
-                                    document.getElementById("reward").remove();
-                                    document.getElementById("rewardToday").remove();
-                                    document.getElementById("driverAudit").remove();
-                                    document.getElementById("carAudit").remove();
-        
-                                    document.getElementsByTag("title").get(0).text("司机奖励通知");
-                                    Element invite_user = document.getElementById("invite_user");
-                                    invite_user.text("您好 " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
-                                    Element invite_content = document.getElementById("invite_content");
-                                    invite_content.text("您已成功邀请一位司机注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
-                                }
-                                if(2 == language){
-                                    document.getElementById("chinese").remove();
-                                    document.getElementById("french").remove();
-                                    document.getElementById("user1").remove();
-                                    document.getElementById("settle1").remove();
-                                    document.getElementById("pass1").remove();
-                                    document.getElementById("email1").remove();
-                                    document.getElementById("bill1").remove();
-                                    document.getElementById("reward1").remove();
-                                    document.getElementById("rewardToday1").remove();
-                                    document.getElementById("driverAudit1").remove();
-                                    document.getElementById("carAudit1").remove();
-        
-                                    document.getElementsByTag("title").get(0).text("Reward-driver notice");
-                                    Element invite1_user = document.getElementById("invite1_user");
-                                    invite1_user.text("Hello " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
-                                    Element invite1_content = document.getElementById("invite1_content");
-                                    invite1_content.text("You have succeeded to invite a driver to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
-                                }
-                                if(3 == language){
-                                    document.getElementById("chinese").remove();
-                                    document.getElementById("english").remove();
-                                    document.getElementById("user2").remove();
-                                    document.getElementById("settle2").remove();
-                                    document.getElementById("pass2").remove();
-                                    document.getElementById("email2").remove();
-                                    document.getElementById("bill2").remove();
-                                    document.getElementById("reward2").remove();
-                                    document.getElementById("rewardToday2").remove();
-                                    document.getElementById("driverAudit2").remove();
-                                    document.getElementById("carAudit2").remove();
-        
-                                    document.getElementsByTag("title").get(0).text("Avis de chauffeur de récompense");
-                                    Element invite2_user = document.getElementById("invite2_user");
-                                    invite2_user.text("Bonjour " + finalDriver.getFirstName() + " " + finalDriver.getLastName() + ",");
-                                    Element invite2_content = document.getElementById("invite2_content");
-                                    invite2_content.text("Vous avez invité avec succès un conducteur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
-                                }
-                                EmailUtil.send(finalDriver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document.html());
-                                String randomString = ToolUtil.getRandomString(10);
-                                //开始生成pdf收据和html收据
-                                File file = new File("/home/igotechgh/nginx/html/files/html/");
-                                if(!file.exists()){
-                                    file.mkdirs();
-                                }
-                                file = new File("/home/igotechgh/nginx/html/files/html/invitation_" + randomString + ".html");
-                                if(!file.exists()){
-                                    file.createNewFile();
-                                }
-                                FileWriter fileWriter = new FileWriter(file);
-                                fileWriter.write(document.html());
-                                fileWriter.flush();
-                                fileWriter.close();
+                if(bigDecimal.compareTo(BigDecimal.ZERO) > 0){
+                    driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                    driver.setLaveActivityMoney(bigDecimal.add(new BigDecimal(driver.getLaveActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                    driver.setBalance(bigDecimal.add(new BigDecimal(driver.getBalance())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                    driverMapper.updateById(driver);
     
-                                String link ="https://igo.i-go.group/files/html/invitation_" + randomString + ".html";
-                                TEmail tEmail = new TEmail();
-                                tEmail.setLink(link);
-                                tEmail.setUserId(finalDriver.getId());
-                                tEmail.setType(2);
-                                tEmail.setName(language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense");
-                                tEmail.setCreateTime(new Date());
-                                int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
-                                String week = EmailUtil.getWeek(language, i);
-                                tEmail.setWeek(week);
-                                boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
-                                if(am){
-                                    tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
-                                }else {
-                                    tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
+                    if(ToolUtil.isNotEmpty(driver.getEmail())){
+                        Driver finalDriver = driver;
+                        BigDecimal finalBigDecimal = bigDecimal;
+                        new Thread(new Runnable() {
+                            @Override
+                            public void run() {
+                                try {
+                                    String path = templatePath + "driver/index.html";
+                                    Document document = Jsoup.parse(new File(path), "UTF-8");
+                                    if(1 == language){
+                                        document.getElementById("english").remove();
+                                        document.getElementById("french").remove();
+                                        document.getElementById("user").remove();
+                                        document.getElementById("settle").remove();
+                                        document.getElementById("pass").remove();
+                                        document.getElementById("email").remove();
+                                        document.getElementById("bill").remove();
+                                        document.getElementById("reward").remove();
+                                        document.getElementById("rewardToday").remove();
+                                        document.getElementById("driverAudit").remove();
+                                        document.getElementById("carAudit").remove();
+                        
+                                        document.getElementsByTag("title").get(0).text("司机奖励通知");
+                                        Element invite_user = document.getElementById("invite_user");
+                                        invite_user.text("您好 " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
+                                        Element invite_content = document.getElementById("invite_content");
+                                        invite_content.text("您已成功邀请一位司机注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
+                                    }
+                                    if(2 == language){
+                                        document.getElementById("chinese").remove();
+                                        document.getElementById("french").remove();
+                                        document.getElementById("user1").remove();
+                                        document.getElementById("settle1").remove();
+                                        document.getElementById("pass1").remove();
+                                        document.getElementById("email1").remove();
+                                        document.getElementById("bill1").remove();
+                                        document.getElementById("reward1").remove();
+                                        document.getElementById("rewardToday1").remove();
+                                        document.getElementById("driverAudit1").remove();
+                                        document.getElementById("carAudit1").remove();
+                        
+                                        document.getElementsByTag("title").get(0).text("Reward-driver notice");
+                                        Element invite1_user = document.getElementById("invite1_user");
+                                        invite1_user.text("Hello " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
+                                        Element invite1_content = document.getElementById("invite1_content");
+                                        invite1_content.text("You have succeeded to invite a driver to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
+                                    }
+                                    if(3 == language){
+                                        document.getElementById("chinese").remove();
+                                        document.getElementById("english").remove();
+                                        document.getElementById("user2").remove();
+                                        document.getElementById("settle2").remove();
+                                        document.getElementById("pass2").remove();
+                                        document.getElementById("email2").remove();
+                                        document.getElementById("bill2").remove();
+                                        document.getElementById("reward2").remove();
+                                        document.getElementById("rewardToday2").remove();
+                                        document.getElementById("driverAudit2").remove();
+                                        document.getElementById("carAudit2").remove();
+                        
+                                        document.getElementsByTag("title").get(0).text("Avis de chauffeur de récompense");
+                                        Element invite2_user = document.getElementById("invite2_user");
+                                        invite2_user.text("Bonjour " + finalDriver.getFirstName() + " " + finalDriver.getLastName() + ",");
+                                        Element invite2_content = document.getElementById("invite2_content");
+                                        invite2_content.text("Vous avez invité avec succès un conducteur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
+                                    }
+                                    EmailUtil.send(finalDriver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document.html());
+                                    String randomString = ToolUtil.getRandomString(10);
+                                    //开始生成pdf收据和html收据
+                                    File file = new File("/home/igotechgh/nginx/html/files/html/");
+                                    if(!file.exists()){
+                                        file.mkdirs();
+                                    }
+                                    file = new File("/home/igotechgh/nginx/html/files/html/invitation_" + randomString + ".html");
+                                    if(!file.exists()){
+                                        file.createNewFile();
+                                    }
+                                    FileWriter fileWriter = new FileWriter(file);
+                                    fileWriter.write(document.html());
+                                    fileWriter.flush();
+                                    fileWriter.close();
+                    
+                                    String link ="https://igo.i-go.group/files/html/invitation_" + randomString + ".html";
+                                    TEmail tEmail = new TEmail();
+                                    tEmail.setLink(link);
+                                    tEmail.setUserId(finalDriver.getId());
+                                    tEmail.setType(2);
+                                    tEmail.setName(language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense");
+                                    tEmail.setCreateTime(new Date());
+                                    int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                                    String week = EmailUtil.getWeek(language, i);
+                                    tEmail.setWeek(week);
+                                    boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                                    if(am){
+                                        tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
+                                    }else {
+                                        tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
+                                    }
+                                    emailService.insert(tEmail);
+                                }catch (Exception e){
+                                    e.printStackTrace();
                                 }
-                                emailService.insert(tEmail);
-                            }catch (Exception e){
-                                e.printStackTrace();
                             }
-                        }
-                    }).start();
+                        }).start();
+                    }
                 }
-
             }
             if(type == 1){//用户分享
                 UserInfo userInfo = userInfoMapper.selectById(uid);
@@ -765,18 +766,7 @@
             return ResultUtil.error(language == 1 ? "选择从业地暂未开通业务" : language == 2 ? "Not yet to commence business at the workplace selected." : "N’a pas encore commencé ses activités sur le lieu de travail sélectionné.");
         }
         if(null != query){
-            switch (query.getType()){
-                case 1://平台
-                    driver.setCompanyId(query.getId());
-                    break;
-                case 2://分公司
-                    driver.setCompanyId(query.getId());
-                    break;
-                case 3://加盟商
-                    driver.setCompanyId(query.getSuperiorId());
-                    driver.setFranchiseeId(query.getId());
-                    break;
-            }
+            driver.setCompanyId(query.getId());
         }
         driver.setHeadImgUrl(registeredWarpper.getHeadImgUrl());
         driver.setIdCardImgUrl1(registeredWarpper.getIdCardImgUrl1());
@@ -1742,8 +1732,7 @@
     @Override
     public Map<String, Object> queryPhone(Integer uid) throws Exception {
         Driver driver = this.selectById(uid);
-        Company company = companyMapper.selectById(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        Company company = companyMapper.selectById(driver.getCompanyId());
         Map<String, Object> map = new HashMap<>();
         if(company.getType() == 3){//加盟商
             Phone phone = phoneMapper.queryInfo(company.getId(), 2);

--
Gitblit v1.7.1