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/ComplaintServiceImpl.java | 99 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 97 insertions(+), 2 deletions(-)
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ComplaintServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ComplaintServiceImpl.java
index 2e3495c..16e5b16 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ComplaintServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ComplaintServiceImpl.java
@@ -6,14 +6,29 @@
import com.stylefeng.guns.modular.system.dao.SensitiveWordsMapper;
import com.stylefeng.guns.modular.system.model.Complaint;
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.IComplaintService;
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.itextpdf.HtmlToPdfUtils;
+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.Service;
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;
+import java.util.UUID;
@Service
@@ -24,6 +39,15 @@
@Autowired
private ISystemNoticeService systemNoticeService;
+
+ @Autowired
+ private IUserInfoService userInfoService;
+
+ @Value("${spring.mail.template-path}")
+ private String templatePath;
+
+ @Autowired
+ private TEmailService emailService;
@@ -36,13 +60,14 @@
* @throws Exception
*/
@Override
- public void saveData(Integer driverId, String reason, String description, Integer uid) throws Exception {
+ public void saveData(Integer driverId, String reason, String description, Integer uid, Integer language) throws Exception {
if(ToolUtil.isNotEmpty(description)){
List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null);
for(SensitiveWords s : sensitiveWords){
description = description.replaceAll(s.getContent(), "***");
}
}
+ language = userInfoService.queryLanguage(uid, language);
Complaint complaint = new Complaint();
complaint.setInsertTime(new Date());
complaint.setDriverId(driverId);
@@ -52,6 +77,76 @@
complaint.setIsHandle(0);
this.insert(complaint);
- systemNoticeService.addSystemNotice(1, "您的投诉已提交成功,我们会尽快处理!", uid, 1);
+ UserInfo userInfo = userInfoService.selectById(uid);
+ if(ToolUtil.isNotEmpty(userInfo.getEmail())){
+ String path = templatePath + "user/complaint.html";
+ Document document = Jsoup.parse(new File(path), "UTF-8");
+ if(language == 1){
+ document.getElementById("english").remove();
+ document.getElementById("french").remove();
+ document.getElementsByTag("title").get(0).text("投诉司机");
+ Element chinese_user = document.getElementById("chinese_user");
+ chinese_user.text("您好 " + userInfo.getNickName() + ",");
+ }
+ if(language == 2){
+ document.getElementById("chinese").remove();
+ document.getElementById("french").remove();
+ document.getElementsByTag("title").get(0).text("Complain against driver");
+ Element english_user = document.getElementById("english_user");
+ english_user.text("Hello " + userInfo.getNickName() + ",");
+ }
+ if(language == 3){
+ document.getElementById("chinese").remove();
+ document.getElementById("english").remove();
+ document.getElementsByTag("title").get(0).text("Porter plainte contre le chauffeur");
+ Element french_user = document.getElementById("french_user");
+ french_user.text("Bonjour " + userInfo.getNickName() + ",");
+ }
+ EmailUtil.send(userInfo.getEmail(), language == 1 ? "投诉司机" : language == 2 ? "Complain against driver" : "Porter plainte contre le chauffeur", 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/complain_" + 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/complain_" + 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/complain_" + randomString + ".html";
+ TEmail tEmail = new TEmail();
+ tEmail.setLink(link);
+ tEmail.setUserId(uid);
+ tEmail.setType(1);
+ tEmail.setName(language == 1 ? "投诉司机" : language == 2 ? "Complain against driver" : "Porter plainte contre le chauffeur");
+ 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 complaints were submitted successfully, we shall handle it as soon as possible." : "Vos réclamations ont été déposées avec succès, nous les traiterons dans les plus brefs délais.", uid, 1);
}
}
--
Gitblit v1.7.1