From af6d43a41205f8c7fc1a965cb019c039063bf4f0 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 13 十二月 2023 01:15:07 +0800
Subject: [PATCH] 更新接口
---
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/FeedbackServiceImpl.java | 75 ++++++++++++++++++++++++++++++++-----
1 files changed, 65 insertions(+), 10 deletions(-)
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/FeedbackServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/FeedbackServiceImpl.java
index 5d1fd3c..58101f7 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/FeedbackServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/FeedbackServiceImpl.java
@@ -6,12 +6,15 @@
import com.stylefeng.guns.modular.system.dao.SensitiveWordsMapper;
import com.stylefeng.guns.modular.system.model.Feedback;
import com.stylefeng.guns.modular.system.model.SensitiveWords;
+import com.stylefeng.guns.modular.system.model.TEmail;
import com.stylefeng.guns.modular.system.model.UserInfo;
import com.stylefeng.guns.modular.system.service.IFeedbackService;
import com.stylefeng.guns.modular.system.service.ISystemNoticeService;
import com.stylefeng.guns.modular.system.service.IUserInfoService;
+import com.stylefeng.guns.modular.system.service.TEmailService;
import com.stylefeng.guns.modular.system.util.EmailUtil;
import com.stylefeng.guns.modular.system.util.ResultUtil;
+import com.stylefeng.guns.modular.system.util.itextpdf.HtmlToPdfUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
@@ -21,6 +24,9 @@
import javax.annotation.Resource;
import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
import java.util.Date;
import java.util.List;
@@ -40,6 +46,9 @@
@Value("${spring.mail.template-path}")
private String templatePath;
+ @Autowired
+ private TEmailService emailService;
+
@@ -54,7 +63,7 @@
if(ToolUtil.isNotEmpty(content)){
if(content.length() > 200){
language = userInfoService.queryLanguage(uid, language);
- return ResultUtil.error(language == 1 ? "反馈内容过长" : language == 2 ? "Feedback is too long" : "Les commentaires sont trop longs");
+ return ResultUtil.error(language == 1 ? "反馈内容过长" : language == 2 ? "Feedback-content is overlong." : "Le contenu de l’avis est trop long.");
}
List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null);
for(SensitiveWords s : sensitiveWords){
@@ -76,28 +85,74 @@
String path = templatePath + "user/feedback.html";
Document document = Jsoup.parse(new File(path), "UTF-8");
if(1 == language){
- document.getElementById("english").attr("style", "display: none;");
- document.getElementById("french").attr("style", "display: none;");
+ document.getElementById("english").remove();
+ document.getElementById("french").remove();
+ document.getElementsByTag("title").get(0).text("意见反馈");
Element user_chinese = document.getElementById("user_chinese");
user_chinese.text("您好 " + userInfo.getNickName() + ",");
}
if(2 == language){
- document.getElementById("chinese").attr("style", "display: none;");
- document.getElementById("french").attr("style", "display: none;");
+ document.getElementById("chinese").remove();
+ document.getElementById("french").remove();
+ document.getElementsByTag("title").get(0).text("Feedback");
Element user_english = document.getElementById("user_english");
user_english.text("Hello " + userInfo.getNickName() + ",");
}
if(3 == language){
- document.getElementById("chinese").attr("style", "display: none;");
- document.getElementById("english").attr("style", "display: none;");
+ document.getElementById("chinese").remove();
+ document.getElementById("english").remove();
+ document.getElementsByTag("title").get(0).text("Rétroaction");
Element user_french = document.getElementById("user_french");
user_french.text("Bonjour " + userInfo.getNickName() + ",");
}
- EmailUtil.send(userInfo.getEmail(), language == 1 ? "反馈意见" : language == 2 ? "Feedback" : "Retour", document.html());
+ EmailUtil.send(userInfo.getEmail(), language == 1 ? "反馈意见" : language == 2 ? "Feedback" : "Rétroaction", document.html());
+
+ //开始生成pdf收据和html收据
+ File file = new File("/usr/local/nginx/html/files/html/");
+ if(!file.exists()){
+ file.mkdirs();
+ }
+ String randomString = ToolUtil.getRandomString(10);
+ file = new File("/usr/local/nginx/html/files/html/feedback_" + randomString + ".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/feedback_" + randomString + ".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/feedback_" + randomString + ".html";
+ TEmail tEmail = new TEmail();
+ tEmail.setLink(link);
+ tEmail.setUserId(uid);
+ tEmail.setType(1);
+ tEmail.setName(language == 1 ? "反馈意见" : language == 2 ? "Feedback" : "Rétroaction");
+ 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);
}
- systemNoticeService.addSystemNotice(1, language == 1 ? "您的反馈已提交成功,我们会尽快处理!" : language == 2 ? "Your feedback has been submitted successfully, we will deal with it as soon as possible"
- : "Vos commentaires ont été soumis avec succès, nous les traiterons dès que possible", uid, 1);
+ systemNoticeService.addSystemNotice(1, language == 1 ? "您的反馈已提交成功,我们会尽快处理!" : language == 2 ? "Your feedback was submitted successfully, we shall handle it as soon as possible."
+ : "Vos avis ont été soumis avec succès, nous les traiterons dans les plus brefs délais.", uid, 1);
return ResultUtil.success();
}
}
--
Gitblit v1.7.1