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

---
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TComplaintController.java |   97 +++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 82 insertions(+), 15 deletions(-)

diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TComplaintController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TComplaintController.java
index 5e71203..85c1742 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TComplaintController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TComplaintController.java
@@ -5,26 +5,30 @@
 import com.stylefeng.guns.core.common.constant.factory.PageFactory;
 import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.util.SinataUtil;
+import com.stylefeng.guns.core.util.ToolUtil;
+import com.stylefeng.guns.modular.system.model.TComplaint;
+import com.stylefeng.guns.modular.system.model.TEmail;
 import com.stylefeng.guns.modular.system.model.TSystemNotice;
 import com.stylefeng.guns.modular.system.model.TUser;
+import com.stylefeng.guns.modular.system.service.ITComplaintService;
 import com.stylefeng.guns.modular.system.service.ITSystemNoticeService;
 import com.stylefeng.guns.modular.system.service.ITUserService;
+import com.stylefeng.guns.modular.system.service.TEmailService;
 import com.stylefeng.guns.modular.system.util.EmailUtil;
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
 import org.jsoup.nodes.Element;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
-import com.stylefeng.guns.modular.system.model.TComplaint;
-import com.stylefeng.guns.modular.system.service.ITComplaintService;
+import org.springframework.web.bind.annotation.ResponseBody;
 
 import java.io.File;
+import java.io.FileWriter;
 import java.util.Date;
 import java.util.Map;
 
@@ -51,6 +55,9 @@
 
     @Value("${spring.mail.template-path}")
     private String templatePath;
+
+    @Autowired
+    private TEmailService emailService;
 
 
 
@@ -136,15 +143,75 @@
             tComplaintService.updateById(tComplaint);
 
             try {
-                TUser userInfo = userService.selectById(tComplaint.getUserId());
-                String path = templatePath +  "user/complaint.html";
-                Document document = Jsoup.parse(new File(path), "UTF-8");
-                document.getElementById("chinese").attr("style", "display: none;");
-                Element english_user = document.getElementById("english_user");
-                english_user.text("Hello " + userInfo.getNickName() + ",");
-                Element english_content = document.getElementById("english_content");
-                english_content.text(handleResult);
-                EmailUtil.send(userInfo.getEmail(), "Complaint driver handling result notification",  document.html());
+                TUser tUser = userService.selectById(tComplaint.getUserId());
+                if(ToolUtil.isNotEmpty(tUser.getEmail())){
+                    String path = templatePath +  "user/complaintResult.html";
+                    Document document = Jsoup.parse(new File(path), "UTF-8");
+                    Integer language = tUser.getLanguage();
+                    if(1 == language){
+                        document.getElementById("english").remove();
+                        document.getElementById("french").remove();
+                        document.getElementsByTag("title").get(0).text("投诉反馈处理结果");
+                        Element chinese_user = document.getElementById("chinese_user");
+                        chinese_user.text("您好 " + tUser.getNickName() + ",");
+                        Element chinese_content = document.getElementById("chinese_content");
+                        chinese_content.text(handleResult);
+                        EmailUtil.send(tUser.getEmail(), "投诉反馈处理结果",  document.html());
+                    }
+                    if(2 == language){
+                        document.getElementById("chinese").remove();
+                        document.getElementById("french").remove();
+                        document.getElementsByTag("title").get(0).text("Solutions for complaints");
+                        Element english_user = document.getElementById("english_user");
+                        english_user.text("Hello " + tUser.getNickName() + ",");
+                        Element english_content = document.getElementById("english_content");
+                        english_content.text(handleResult);
+                        EmailUtil.send(tUser.getEmail(), "Solutions for complaints",  document.html());
+                    }
+                    if(3 == language){
+                        document.getElementById("chinese").remove();
+                        document.getElementById("english").remove();
+                        document.getElementsByTag("title").get(0).text("Solutions pour plaintes");
+                        Element french_user = document.getElementById("french_user");
+                        french_user.text("Bonjour " + tUser.getNickName() + ",");
+                        Element french_content = document.getElementById("french_content");
+                        french_content.text(handleResult);
+                        EmailUtil.send(tUser.getEmail(), "Solutions pour plaintes",  document.html());
+                    }
+                    
+                    //开始生成pdf收据和html收据
+                    File file = new File("/data/nginx/html/files/html/");
+                    if(!file.exists()){
+                        file.mkdirs();
+                    }
+                    String randomString = ToolUtil.getRandomString(10);
+                    file = new File("/data/nginx/html/files/html/complaintResult_" + 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/complaintResult_" + randomString + ".html";
+                    TEmail tEmail = new TEmail();
+                    tEmail.setLink(link);
+                    tEmail.setUserId(tUser.getId());
+                    tEmail.setType(1);
+                    tEmail.setName(1 == language ? "投诉反馈处理结果" : 2 == language ? "Solutions for complaints" : "Solutions pour plaintes");
+                    tEmail.setCreateTime(new Date());
+                    int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                    tEmail.setWeek(EmailUtil.getWeek(2,i));
+                    boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                    if(am){
+                        tEmail.setAmOrPm("AM");
+                    }else {
+                        tEmail.setAmOrPm("PM");
+                    }
+                    emailService.insert(tEmail);
+
+                }
             }catch (Exception e){
                 e.printStackTrace();
             }
@@ -153,7 +220,7 @@
             TSystemNotice notice = new TSystemNotice();
             notice.setType(2);
             notice.setUserType(1);
-            notice.setContent("投诉处理结果:【"+handleResult+"】。");
+            notice.setContent(handleResult);
             notice.setUserId(tComplaint.getUserId());
             notice.setInsertTime(new Date());
             notice.setRead(1);

--
Gitblit v1.7.1