From 736ab0090700c75af37b8a3456b01609e4e2d329 Mon Sep 17 00:00:00 2001 From: luodangjia <luodangjia> Date: 星期三, 17 七月 2024 11:09:40 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/2.0' into 2.0 --- ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TIntegralOrderController.java | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 105 insertions(+), 0 deletions(-) diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TIntegralOrderController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TIntegralOrderController.java index c240920..111aee9 100644 --- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TIntegralOrderController.java +++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TIntegralOrderController.java @@ -5,7 +5,18 @@ 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.TEmail; import com.stylefeng.guns.modular.system.model.TOrderCharter; +import com.stylefeng.guns.modular.system.model.TUser; +import com.stylefeng.guns.modular.system.service.ITUserService; +import com.stylefeng.guns.modular.system.service.IUserService; +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.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; @@ -17,6 +28,10 @@ import com.stylefeng.guns.modular.system.model.TIntegralOrder; import com.stylefeng.guns.modular.system.service.ITIntegralOrderService; +import javax.annotation.Resource; +import java.io.File; +import java.io.FileWriter; +import java.util.Date; import java.util.Map; /** @@ -33,6 +48,20 @@ @Autowired private ITIntegralOrderService tIntegralOrderService; + + @Autowired + private ITUserService userService; + + @Value("${spring.mail.template-path}") + private String templatePath; + + @Resource + private TEmailService emailService; + + + + + /** * 跳转到积分兑换订单首页 @@ -94,6 +123,82 @@ tIntegralOrder.setRemark(null); tIntegralOrderService.updateById(tIntegralOrder); + + new Thread(new Runnable() { + @Override + public void run() { + TUser tUser = userService.selectById(tIntegralOrder.getUserId()); + if(ToolUtil.isNotEmpty(tUser.getEmail())){ + try { + Integer language = tUser.getLanguage(); + String nickName = tUser.getNickName(); + String email = tUser.getEmail(); + + String path = templatePath + "user/pointExchange.html"; + Document document = Jsoup.parse(new File(path), "UTF-8"); + if(1 == language){ + document.getElementById("english").remove(); + document.getElementById("french").remove(); + document.getElementsByTag("title").get(0).text("积分兑换已通过审核"); + Element user_chinese = document.getElementById("user_chinese"); + user_chinese.text("您好 " + nickName + ","); + } + if(2 == language){ + document.getElementById("chinese").remove(); + document.getElementById("french").remove(); + document.getElementsByTag("title").get(0).text("Points redemption approved"); + Element user_chinese = document.getElementById("user_english"); + user_chinese.text("Hello " + nickName + ","); + } + if(3 == language){ + document.getElementById("chinese").remove(); + document.getElementById("english").remove(); + document.getElementsByTag("title").get(0).text("Approbation de l’échange de points"); + Element user_french = document.getElementById("user_french"); + user_french.text("Bonjour " + nickName + ","); + } + EmailUtil.send(email, language == 1 ? "积分兑换已通过审核" : language == 2 ? "Points redemption approved" : "Approbation de l’échange de points", 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/complaint_" + randomString + ".html"); + if(!file.exists()){ + file.createNewFile(); + } + FileWriter fileWriter = new FileWriter(file); + fileWriter.write(document.html()); + fileWriter.flush(); + fileWriter.close(); + + String link ="http://182.160.16.251:81/files/html/complaint_" + randomString + ".html"; + TEmail tEmail = new TEmail(); + tEmail.setLink(link); + tEmail.setUserId(tUser.getId()); + tEmail.setType(1); + tEmail.setName(language == 1 ? "积分兑换已通过审核" : language == 2 ? "Points redemption approved" : "Approbation de l’échange de points"); + 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?"morning":"matin"); + }else { + tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi"); + } + emailService.insert(tEmail); + }catch (Exception e){ + e.printStackTrace(); + } + } + + + } + }).start(); + return SUCCESS_TIP; } -- Gitblit v1.7.1