Pu Zhibing
2025-02-14 5228e24ff93fae148db40c44d9deb8e93110c6eb
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -62,6 +62,7 @@
import java.math.RoundingMode;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@Service
@@ -418,47 +419,47 @@
     * @return
     * @throws Exception
     */
    public ResultUtil<Map<String, Double>> getPrice(Integer uid, Integer type, String startLon, String startLat, String endLon, String endLat) throws Exception{
        Company query = companyCityService.query1(uid, startLon, startLat);
        if(null == query){
            return ResultUtil.error("预约取货点暂无企业服务");
        }
        Double price1 = 0D;
        Double price2 = 0D;
        if(type == 4){//同城
            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null);
            Map<String, String> distance = gdMapElectricFenceUtil.getDistance(startLon + "," + startLat, endLon + "," + endLat, 1);
            String content = String.valueOf(query1.get("content"));
            JSONObject jsonObject = JSON.parseObject(content);
            String distance1 = distance.get("distance");
            Double dist = Double.valueOf(distance1) / 1000;
            if(dist.compareTo(0D) >= 0 && dist.compareTo(jsonObject.getDouble("num1")) < 0){
                price1 = jsonObject.getDouble("num2");
            }
            if(dist.compareTo(jsonObject.getDouble("num3")) >= 0 && dist.compareTo(jsonObject.getDouble("num4")) < 0){
                price1 = jsonObject.getDouble("num5");
            }
            if(dist.compareTo(jsonObject.getDouble("num6")) >= 0 && dist.compareTo(jsonObject.getDouble("num7")) < 0){
                price1 = jsonObject.getDouble("num8");
            }
            if(dist.compareTo(jsonObject.getDouble("num9")) >= 0 && dist.compareTo(jsonObject.getDouble("num10")) < 0){
                price1 = jsonObject.getDouble("num11");
            }
        }else{
            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null);
            String content = String.valueOf(query1.get("content"));
            JSONObject jsonObject = JSON.parseObject(content);
            price1 = jsonObject.getDouble("num1");
            price2 = jsonObject.getDouble("num2");
        }
        Map<String, Double> map = new HashMap<>();
        map.put("ordinary", price1);//普通
        map.put("precious", price2);//贵重
        return ResultUtil.success(map);
    }
//    public ResultUtil<Map<String, Double>> getPrice(Integer uid, Integer type, String startLon, String startLat, String endLon, String endLat) throws Exception{
//        Company query = companyCityService.query1(uid, startLon, startLat);
//        if(null == query){
//            return ResultUtil.error("预约取货点暂无企业服务");
//        }
//        Double price1 = 0D;
//        Double price2 = 0D;
//        if(type == 4){//同城
//            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null);
//            Map<String, String> distance = gdMapElectricFenceUtil.getDistance(startLon + "," + startLat, endLon + "," + endLat, 1);
//            String content = String.valueOf(query1.get("content"));
//            JSONObject jsonObject = JSON.parseObject(content);
//            String distance1 = distance.get("distance");
//            Double dist = Double.valueOf(distance1) / 1000;
//            if(dist.compareTo(0D) >= 0 && dist.compareTo(jsonObject.getDouble("num1")) < 0){
//                price1 = jsonObject.getDouble("num2");
//            }
//
//            if(dist.compareTo(jsonObject.getDouble("num3")) >= 0 && dist.compareTo(jsonObject.getDouble("num4")) < 0){
//                price1 = jsonObject.getDouble("num5");
//            }
//
//            if(dist.compareTo(jsonObject.getDouble("num6")) >= 0 && dist.compareTo(jsonObject.getDouble("num7")) < 0){
//                price1 = jsonObject.getDouble("num8");
//            }
//
//            if(dist.compareTo(jsonObject.getDouble("num9")) >= 0 && dist.compareTo(jsonObject.getDouble("num10")) < 0){
//                price1 = jsonObject.getDouble("num11");
//            }
//        }else{
//            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null);
//            String content = String.valueOf(query1.get("content"));
//            JSONObject jsonObject = JSON.parseObject(content);
//            price1 = jsonObject.getDouble("num1");
//            price2 = jsonObject.getDouble("num2");
//        }
//        Map<String, Double> map = new HashMap<>();
//        map.put("ordinary", price1);//普通
//        map.put("precious", price2);//贵重
//        return ResultUtil.success(map);
//    }
@@ -474,7 +475,7 @@
        Double discountMoney = 0D;
        Integer activityId = null;
        if(type == 4){//同城
            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null);
            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null, language);
            String tripId = redisUtil.getValue("trip" + uid);
            DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(Double.valueOf(startLat), Double.valueOf(startLon), Double.valueOf(endLat), Double.valueOf(endLon), tripId);
            if(null == distancematrix){
@@ -503,7 +504,7 @@
                return ResultUtil.error(language == 1 ? "超出可服务范围" : language == 2 ? "Beyond service range" : "Au-delà de la portée de service");
            }
        }else{
            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null);
            Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null, language);
            String content = String.valueOf(query1.get("content"));
            JSONObject jsonObject = JSON.parseObject(content);
            price1 = jsonObject.getDouble("num1");
@@ -1318,23 +1319,28 @@
    
            language = userInfo.getLanguage();
    
            Integer finalLanguage1 = language;
            new Thread(new Runnable() {
                @Override
                public void run() {
                    try {
            if(ToolUtil.isNotEmpty(userInfo.getEmail())){
                String path = templatePath + "user/receiptLogistics.html";
                Document document = Jsoup.parse(new File(path), "UTF-8");
                SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd");
                SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
                driver = driverService.selectById(orderLogistics.getDriverId());
                            Driver driver = driverService.selectById(orderLogistics.getDriverId());
                Car car = carMapper.selectById(orderLogistics.getCarId());
                Double aDouble = 0D;
                if(null != orderLogistics.getDriverId()){
                    aDouble = orderEvaluateService.queryDriverScore(orderLogistics.getDriverId());
                }
                if(1 == language){
                            if(1 == finalLanguage1){
                    document.getElementById("english").remove();
                    document.getElementById("french").remove();
                    document.getElementsByTag("title").get(0).text("包裹收据");
                    Element title_chinese = document.getElementById("title_chinese");
                    title_chinese.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",您在I-GO此订单消费GHS " + orderLogistics.getPayMoney());
                                title_chinese.text(DateUtil.conversionFormat(finalLanguage1, sdf2.format(orderLogistics.getTravelTime())) + ",您在I-GO此订单消费GHS " + orderLogistics.getPayMoney());
                    Element qbj_chinese = document.getElementById("qbj_chinese");
                    qbj_chinese.text("GHS " + new BigDecimal(orderLogistics.getStartMoney()).setScale(2, RoundingMode.HALF_EVEN));
                    Element scf_chinese = document.getElementById("scf_chinese");
@@ -1415,11 +1421,11 @@
                    Element pdf_chinese = document.getElementById("pdf_chinese");
                    pdf_chinese.attr("href", "https://igo.i-go.group/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4");
                    Element lost_item_chinese = document.getElementById("lost_item_chinese");
                    lost_item_chinese.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4");
                                lost_item_chinese.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + finalLanguage1 + "&orderId=" + orderId + "&orderType=4");
//                    Element track_chinese = document.getElementById("track_chinese");
//                    track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html");
                    Element pay_time_chinese = document.getElementById("pay_time_chinese");
                    pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime())));
                                pay_time_chinese.text(DateUtil.conversionFormat(finalLanguage1, sdf1.format(orderLogistics.getTravelTime())));
                    Elements driver_chinese = document.getElementsByClass("driver_chinese");
                    for (int i = 0; i < driver_chinese.size(); i++) {
                        Element element = driver_chinese.get(i);
@@ -1437,12 +1443,12 @@
                    Element server_tel_chinese = document.getElementById("server_tel_chinese");
                    server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                }
                if(2 == language){
                            if(2 == finalLanguage1){
                    document.getElementById("chinese").remove();
                    document.getElementById("french").remove();
                    document.getElementsByTag("title").get(0).text("Delivery receipt");
                    Element title_english = document.getElementById("title_english");
                    title_english.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",You spent GHS " + orderLogistics.getPayMoney() + " on the trip ");
                                title_english.text(DateUtil.conversionFormat(finalLanguage1, sdf2.format(orderLogistics.getTravelTime())) + ",You spent GHS " + orderLogistics.getPayMoney() + " on the trip ");
                    Element qbj_english = document.getElementById("qbj_english");
                    qbj_english.text("GHS " + new BigDecimal(orderLogistics.getStartMoney()).setScale(2, RoundingMode.HALF_EVEN));
                    Element scf_english = document.getElementById("scf_english");
@@ -1523,11 +1529,11 @@
                    Element pdf_english = document.getElementById("pdf_english");
                    pdf_english.attr("href", "https://igo.i-go.group/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4");
                    Element lost_item_english = document.getElementById("lost_item_english");
                    lost_item_english.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4");
                                lost_item_english.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + finalLanguage1 + "&orderId=" + orderId + "&orderType=4");
//                    Element track_english = document.getElementById("track_english");
//                    track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html");
                    Element pay_time_english = document.getElementById("pay_time_english");
                    pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime())));
                                pay_time_english.text(DateUtil.conversionFormat(finalLanguage1, sdf1.format(orderLogistics.getTravelTime())));
                    Elements driver_english = document.getElementsByClass("driver_english");
                    for (int i = 0; i < driver_english.size(); i++) {
                        Element element = driver_english.get(i);
@@ -1545,12 +1551,12 @@
                    Element server_tel_english = document.getElementById("server_tel_english");
                    server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                }
                if(3 == language){
                            if(3 == finalLanguage1){
                    document.getElementById("chinese").remove();
                    document.getElementById("english").remove();
                    document.getElementsByTag("title").get(0).text("Reçu de livraison");
                    Element title_french = document.getElementById("title_french");
                    title_french.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",Vous consommez GHS " + orderLogistics.getPayMoney() + " sur votre commande I-GO ");
                                title_french.text(DateUtil.conversionFormat(finalLanguage1, sdf2.format(orderLogistics.getTravelTime())) + ",Vous consommez GHS " + orderLogistics.getPayMoney() + " sur votre commande I-GO ");
                    Element qbj_french = document.getElementById("qbj_french");
                    qbj_french.text("GHS " + new BigDecimal(orderLogistics.getStartMoney()).setScale(2, RoundingMode.HALF_EVEN));
                    Element scf_french = document.getElementById("scf_french");
@@ -1631,11 +1637,11 @@
                    Element pdf_french = document.getElementById("pdf_french");
                    pdf_french.attr("href", "https://igo.i-go.group/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4");
                    Element lost_item_french = document.getElementById("lost_item_french");
                    lost_item_french.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4");
                                lost_item_french.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + finalLanguage1 + "&orderId=" + orderId + "&orderType=4");
//                    Element track_french = document.getElementById("track_french");
//                    track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html");
                    Element pay_time_french = document.getElementById("pay_time_french");
                    pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime())));
                                pay_time_french.text(DateUtil.conversionFormat(finalLanguage1, sdf1.format(orderLogistics.getTravelTime())));
                    Elements driver_french = document.getElementsByClass("driver_french");
                    for (int i = 0; i < driver_french.size(); i++) {
                        Element element = driver_french.get(i);
@@ -1654,7 +1660,7 @@
                    server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                }
        
                EmailUtil.send(userInfo.getEmail(), language == 1 ? "包裹收据" : language == 2 ? "Delivery receipt" : "Reçu de livraison",  document.html());
                            EmailUtil.send(userInfo.getEmail(), finalLanguage1 == 1 ? "包裹收据" : finalLanguage1 == 2 ? "Delivery receipt" : "Reçu de livraison",  document.html());
        
                //开始生成pdf收据和html收据
                File file = new File("/home/igotechgh/nginx/html/files/html/");
@@ -1691,20 +1697,25 @@
                tEmail.setLink(link);
                tEmail.setUserId(userInfo.getId());
                tEmail.setType(1);
                tEmail.setName(language == 1 ? "包裹收据" : language == 2 ? "Delivery receipt" : "Reçu de livraison");
                            tEmail.setName(finalLanguage1 == 1 ? "包裹收据" : finalLanguage1 == 2 ? "Delivery receipt" : "Reçu de livraison");
                tEmail.setOrderId(orderId);
                tEmail.setCreateTime(new Date());
                int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
                String week = EmailUtil.getWeek(language, i);
                            String week = EmailUtil.getWeek(finalLanguage1, i);
                tEmail.setWeek(week);
                boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
                if(am){
                    tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
                                tEmail.setAmOrPm(finalLanguage1 ==1?"上午": finalLanguage1 ==2?"morning":"matin");
                }else {
                    tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
                                tEmail.setAmOrPm(finalLanguage1 ==1?"下午": finalLanguage1 ==2?"afternoon":"après-midi");
                }
                emailService.insert(tEmail);
            }
                    }catch (Exception e){
                        e.printStackTrace();
                    }
                }
            }).start();
            
        }
@@ -1946,6 +1957,11 @@
                    "Vous avez payé la commande de livraison avec succès, merci d’utiliser I-GO", uid, 1);
    
            language = userInfo.getLanguage();
            Integer finalLanguage = language;
            new Thread(new Runnable() {
                @Override
                public void run() {
                    try {
            if(ToolUtil.isNotEmpty(userInfo.getEmail())){
                String path = templatePath + "user/receiptLogistics.html";
                Document document = Jsoup.parse(new File(path), "UTF-8");
@@ -1956,12 +1972,12 @@
                if(null != orderLogistics.getDriverId()){
                    aDouble = orderEvaluateService.queryDriverScore(orderLogistics.getDriverId());
                }
                if(1 == language){
                            if(1 == finalLanguage){
                    document.getElementById("english").remove();
                    document.getElementById("french").remove();
                    document.getElementsByTag("title").get(0).text("包裹收据");
                    Element title_chinese = document.getElementById("title_chinese");
                    title_chinese.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",您在I-GO此订单消费GHS " + orderLogistics.getPayMoney());
                                title_chinese.text(DateUtil.conversionFormat(finalLanguage, sdf2.format(orderLogistics.getTravelTime())) + ",您在I-GO此订单消费GHS " + orderLogistics.getPayMoney());
                    Element qbj_chinese = document.getElementById("qbj_chinese");
                    qbj_chinese.text("GHS " + new BigDecimal(orderLogistics.getStartMoney()).setScale(2, RoundingMode.HALF_EVEN));
                    Element scf_chinese = document.getElementById("scf_chinese");
@@ -2042,11 +2058,11 @@
                    Element pdf_chinese = document.getElementById("pdf_chinese");
                    pdf_chinese.attr("href", "https://igo.i-go.group/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4");
                    Element lost_item_chinese = document.getElementById("lost_item_chinese");
                    lost_item_chinese.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4");
                                lost_item_chinese.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + finalLanguage + "&orderId=" + orderId + "&orderType=4");
//                    Element track_chinese = document.getElementById("track_chinese");
//                    track_chinese.attr("href", "https://igo.i-go.group/mailbox/user/location.html");
                    Element pay_time_chinese = document.getElementById("pay_time_chinese");
                    pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime())));
                                pay_time_chinese.text(DateUtil.conversionFormat(finalLanguage, sdf1.format(orderLogistics.getTravelTime())));
                    Elements driver_chinese = document.getElementsByClass("driver_chinese");
                    for (int i = 0; i < driver_chinese.size(); i++) {
                        Element element = driver_chinese.get(i);
@@ -2064,12 +2080,12 @@
                    Element server_tel_chinese = document.getElementById("server_tel_chinese");
                    server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                }
                if(2 == language){
                            if(2 == finalLanguage){
                    document.getElementById("chinese").remove();
                    document.getElementById("french").remove();
                    document.getElementsByTag("title").get(0).text("Delivery receipt");
                    Element title_english = document.getElementById("title_english");
                    title_english.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",You spent GHS " + orderLogistics.getPayMoney() + " on the trip ");
                                title_english.text(DateUtil.conversionFormat(finalLanguage, sdf2.format(orderLogistics.getTravelTime())) + ",You spent GHS " + orderLogistics.getPayMoney() + " on the trip ");
                    Element qbj_english = document.getElementById("qbj_english");
                    qbj_english.text("GHS " + new BigDecimal(orderLogistics.getStartMoney()).setScale(2, RoundingMode.HALF_EVEN));
                    Element scf_english = document.getElementById("scf_english");
@@ -2150,11 +2166,11 @@
                    Element pdf_english = document.getElementById("pdf_english");
                    pdf_english.attr("href", "https://igo.i-go.group/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4");
                    Element lost_item_english = document.getElementById("lost_item_english");
                    lost_item_english.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4");
                                lost_item_english.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + finalLanguage + "&orderId=" + orderId + "&orderType=4");
//                    Element track_english = document.getElementById("track_english");
//                    track_english.attr("href", "https://igo.i-go.group/mailbox/user/location.html");
                    Element pay_time_english = document.getElementById("pay_time_english");
                    pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime())));
                                pay_time_english.text(DateUtil.conversionFormat(finalLanguage, sdf1.format(orderLogistics.getTravelTime())));
                    Elements driver_english = document.getElementsByClass("driver_english");
                    for (int i = 0; i < driver_english.size(); i++) {
                        Element element = driver_english.get(i);
@@ -2172,12 +2188,12 @@
                    Element server_tel_english = document.getElementById("server_tel_english");
                    server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                }
                if(3 == language){
                            if(3 == finalLanguage){
                    document.getElementById("chinese").remove();
                    document.getElementById("english").remove();
                    document.getElementsByTag("title").get(0).text("Reçu de livraison");
                    Element title_french = document.getElementById("title_french");
                    title_french.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",Vous consommez GHS " + orderLogistics.getPayMoney() + " sur votre commande I-GO ");
                                title_french.text(DateUtil.conversionFormat(finalLanguage, sdf2.format(orderLogistics.getTravelTime())) + ",Vous consommez GHS " + orderLogistics.getPayMoney() + " sur votre commande I-GO ");
                    Element qbj_french = document.getElementById("qbj_french");
                    qbj_french.text("GHS " + new BigDecimal(orderLogistics.getStartMoney()).setScale(2, RoundingMode.HALF_EVEN));
                    Element scf_french = document.getElementById("scf_french");
@@ -2258,11 +2274,11 @@
                    Element pdf_french = document.getElementById("pdf_french");
                    pdf_french.attr("href", "https://igo.i-go.group/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4");
                    Element lost_item_french = document.getElementById("lost_item_french");
                    lost_item_french.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4");
                                lost_item_french.attr("href", "https://igo.i-go.group/mailbox/user/lossGoods.html?language=" + finalLanguage + "&orderId=" + orderId + "&orderType=4");
//                    Element track_french = document.getElementById("track_french");
//                    track_french.attr("href", "https://igo.i-go.group/mailbox/user/location.html");
                    Element pay_time_french = document.getElementById("pay_time_french");
                    pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime())));
                                pay_time_french.text(DateUtil.conversionFormat(finalLanguage, sdf1.format(orderLogistics.getTravelTime())));
                    Elements driver_french = document.getElementsByClass("driver_french");
                    for (int i = 0; i < driver_french.size(); i++) {
                        Element element = driver_french.get(i);
@@ -2281,7 +2297,7 @@
                    server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : ""));
                }
        
                EmailUtil.send(userInfo.getEmail(), language == 1 ? "包裹收据" : language == 2 ? "Delivery receipt" : "Reçu de livraison",  document.html());
                            EmailUtil.send(userInfo.getEmail(), finalLanguage == 1 ? "包裹收据" : finalLanguage == 2 ? "Delivery receipt" : "Reçu de livraison",  document.html());
        
                //开始生成pdf收据和html收据
                File file = new File("/home/igotechgh/nginx/html/files/html/");
@@ -2318,20 +2334,25 @@
                tEmail.setLink(link);
                tEmail.setUserId(userInfo.getId());
                tEmail.setType(1);
                tEmail.setName(language == 1 ? "包裹收据" : language == 2 ? "Delivery receipt" : "Reçu de livraison");
                            tEmail.setName(finalLanguage == 1 ? "包裹收据" : finalLanguage == 2 ? "Delivery receipt" : "Reçu de livraison");
                tEmail.setOrderId(orderId);
                tEmail.setCreateTime(new Date());
                int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
                String week = EmailUtil.getWeek(language, i);
                            String week = EmailUtil.getWeek(finalLanguage, i);
                tEmail.setWeek(week);
                boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
                if(am){
                    tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
                                tEmail.setAmOrPm(finalLanguage ==1?"上午": finalLanguage ==2?"morning":"matin");
                }else {
                    tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
                                tEmail.setAmOrPm(finalLanguage ==1?"下午": finalLanguage ==2?"afternoon":"après-midi");
                }
                emailService.insert(tEmail);
            }
                    }catch (Exception e){
                        e.printStackTrace();
                    }
                }
            }).start();
        }
        this.updateAllColumnById(orderLogistics);
@@ -3177,10 +3198,21 @@
        if(ToolUtil.isNotEmpty(remark)){
            if(ToolUtil.isNotEmpty(remark)){
                List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null);
                List<String> list = Arrays.asList(remark.split(" "));
                for(SensitiveWords s : sensitiveWords){
                    remark = remark.replaceAll(s.getContent(), "***");
                    List<String> str = new ArrayList<>();
                    String lowerCase = s.getContent().toLowerCase();
                    for (String s1 : list) {
                        if(lowerCase.equals(s1.toLowerCase())){
                            str.add("***");
                        }else{
                            str.add(s1);
                }
            }
                    list = str;
                }
                remark = list.stream().collect(Collectors.joining(" "));
            }
        }
        language = userInfoService.queryLanguage(uid, language);