Pu Zhibing
2025-04-02 e1940dda45fa066d994cc5cf0e34c7f97d9e7b2d
修改bug
11个文件已修改
161 ■■■■ 已修改文件
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/model/OrderLogistics.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityHistory.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java 51 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverActivityHistoryMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityHistory.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/model/OrderLogistics.java
@@ -287,7 +287,7 @@
    @TableField("payMoney")
    private Double payMoney;
    /**
     * 状态(1=待接单,2=待出发,3=待到达预约地点,4=待取货,5=送货中,6=已送达,7=待支付,8=需补差价,9=已取货,10=已取消,11=改派中,12=已支付差价,13=取消待支付)
     * 状态(1=待接单,2=待出发,3=待到达预约地点,4=待乘客上车,5=服务中,6=完成服务,7=待支付,8=待评价,9=已完成,10=已取消,11=改派中,12=取消待支付,13=补差价)
     */
    @TableField("state")
    private Integer state;
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -849,6 +849,9 @@
     */
    public OrderLogistics setMoney(OrderLogistics orderLogistics, Double parkingFee, Double crossingFee) throws Exception {
        Map<String, Object> query1 = systemPriceMapper.query(orderLogistics.getCompanyId(), 4, orderLogistics.getServerCarModelId());
        if(null == query1){
            throw new RuntimeException("请先添加计费规则");
        }
        //开始根据不同的方式计算金额
        double amount = 0;
        JSONObject jsonObject = JSON.parseObject(query1.get("content").toString());
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -725,11 +725,11 @@
            orderPrivateCar.setState(7);
        }
        Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderPrivateCar.getBindId(),orderPrivateCar.getTelX());
        if(String.valueOf(map.get("code")).equals("200")){
            orderPrivateCar.setTelX("");
            orderPrivateCar.setBindId("");
        }
//        Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderPrivateCar.getBindId(),orderPrivateCar.getTelX());
//        if(String.valueOf(map.get("code")).equals("200")){
//            orderPrivateCar.setTelX("");
//            orderPrivateCar.setBindId("");
//        }
        this.updateById(orderPrivateCar);
        
        //修改行程数据
@@ -890,6 +890,9 @@
     */
    public OrderPrivateCar setMoney(OrderPrivateCar orderPrivateCar, Double parkingFee, Double crossingFee) throws Exception {
        Map<String, Object> query1 = systemPriceMapper.query(orderPrivateCar.getCompanyId(), 1, orderPrivateCar.getServerCarModelId());
        if(null == query1){
            throw new RuntimeException("请先添加计费规则");
        }
        //开始根据不同的方式计算金额
        double amount = 0;
        JSONObject jsonObject = JSON.parseObject(query1.get("content").toString());
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityHistory.java
@@ -58,6 +58,12 @@
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 完成时间
     */
    @TableField("completionTime")
    private Date completionTime;
    public Integer getId() {
        return id;
@@ -131,6 +137,14 @@
        this.insertTime = insertTime;
    }
    public Date getCompletionTime() {
        return completionTime;
    }
    public void setCompletionTime(Date completionTime) {
        this.completionTime = completionTime;
    }
    @Override
    public String toString() {
        return "DriverActivityHistory{" +
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -338,6 +338,7 @@
                    bigDecimal = bigDecimal.add(new BigDecimal(driverActivityHistory.getMoney()));
                    incomeService.saveData(2, driver.getId(), 1, driverActivityHistory.getId(), null, driverActivityHistory.getMoney());
                    driverActivityHistory.setCarryOut(2);
                    driverActivityHistory.setCompletionTime(new Date());
                    driverActivityHistoryMapper.updateById(driverActivityHistory);
                }
                driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
@@ -521,12 +522,13 @@
            if(type == 2){
                driver = driverMapper.selectById(uid);
                Map<String, Date> date = dateUtil.getStartAndEndDate(new Date());
                List<DriverActivityHistory> list = driverActivityHistoryMapper.queryList(null, 1, 1, date.get("startTime"), date.get("endTime"));
                List<DriverActivityHistory> list = driverActivityHistoryMapper.queryList(uid, 1, 1, date.get("startTime"), date.get("endTime"));
                BigDecimal bigDecimal = new BigDecimal("0");
                for (DriverActivityHistory driverActivityHistory : list) {
                    bigDecimal = bigDecimal.add(new BigDecimal(driverActivityHistory.getMoney()));
                    incomeService.saveData(2, driver.getId(), 1, driverActivityHistory.getId(), null, driverActivityHistory.getMoney());
                    driverActivityHistory.setCarryOut(2);
                    driverActivityHistory.setCompletionTime(new Date());
                    driverActivityHistoryMapper.updateById(driverActivityHistory);
                }
                driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
@@ -535,6 +537,12 @@
                driverMapper.updateById(driver);
                if(ToolUtil.isNotEmpty(driver.getEmail())){
                    Driver finalDriver = driver;
                    BigDecimal finalBigDecimal = bigDecimal;
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            try {
                    String path = templatePath + "driver/index.html";
                    Document document = Jsoup.parse(new File(path), "UTF-8");
                    if(1 == language){
@@ -552,9 +560,9 @@
                        document.getElementsByTag("title").get(0).text("司机奖励通知");
                        Element invite_user = document.getElementById("invite_user");
                        invite_user.text("您好 " + driver.getFirstName() + "" + driver.getLastName() + ",");
                                    invite_user.text("您好 " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
                        Element invite_content = document.getElementById("invite_content");
                        invite_content.text("您已成功邀请一位司机注册I-GO,获得奖励GHS " + bigDecimal.doubleValue() + ",请查收");
                                    invite_content.text("您已成功邀请一位司机注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
                    }
                    if(2 == language){
                        document.getElementById("chinese").remove();
@@ -571,9 +579,9 @@
                        document.getElementsByTag("title").get(0).text("Reward-driver notice");
                        Element invite1_user = document.getElementById("invite1_user");
                        invite1_user.text("Hello " + driver.getFirstName() + "" + driver.getLastName() + ",");
                                    invite1_user.text("Hello " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
                        Element invite1_content = document.getElementById("invite1_content");
                        invite1_content.text("You have succeeded to invite a driver to register with I-GO, so you received a GHS " + bigDecimal.doubleValue() + " bonus, please check your balance.");
                                    invite1_content.text("You have succeeded to invite a driver to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
                    }
                    if(3 == language){
                        document.getElementById("chinese").remove();
@@ -590,11 +598,11 @@
                        document.getElementsByTag("title").get(0).text("Avis de chauffeur de récompense");
                        Element invite2_user = document.getElementById("invite2_user");
                        invite2_user.text("Bonjour " + driver.getFirstName() + " " + driver.getLastName() + ",");
                                    invite2_user.text("Bonjour " + finalDriver.getFirstName() + " " + finalDriver.getLastName() + ",");
                        Element invite2_content = document.getElementById("invite2_content");
                        invite2_content.text("Vous avez invité avec succès un conducteur à s’inscrire à i-go pour recevoir une récompense GHS " + bigDecimal.doubleValue() + ". Veuillez vérifier");
                                    invite2_content.text("Vous avez invité avec succès un conducteur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
                    }
                    EmailUtil.send(driver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document.html());
                                EmailUtil.send(finalDriver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document.html());
                    String randomString = ToolUtil.getRandomString(10);
                    //开始生成pdf收据和html收据
                    File file = new File("/home/igotechgh/nginx/html/files/html/");
@@ -613,7 +621,7 @@
                    String link ="https://igo.i-go.group/files/html/invitation_" + randomString + ".html";
                    TEmail tEmail = new TEmail();
                    tEmail.setLink(link);
                    tEmail.setUserId(driver.getId());
                                tEmail.setUserId(finalDriver.getId());
                    tEmail.setType(2);
                    tEmail.setName(language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense");
                    tEmail.setCreateTime(new Date());
@@ -627,6 +635,11 @@
                        tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
                    }
                    emailService.insert(tEmail);
                            }catch (Exception e){
                                e.printStackTrace();
                            }
                        }
                    }).start();
                }
            }
@@ -2527,6 +2540,7 @@
            List<DriverOnline> driverOnlines = driverOnlineMapper.queryList(sdf.format(new Date()), null, dah.getDriverId(), duration);
            if(driverOnlines.size() > 0){
                dah.setCarryOut(2);//完成状态
                dah.setCompletionTime(new Date());
                driverActivityHistoryMapper.updateById(dah);
    
                redisUtil.remove("driverActivity_" + dah.getDriverId() + "_" + dah.getId());
@@ -2546,6 +2560,10 @@
    
                Integer language = driver.getLanguage();
                if(ToolUtil.isNotEmpty(driver.getEmail())) {
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            try {
                    String path1 = templatePath + "driver/index.html";
                    Document document1 = Jsoup.parse(new File(path1), "UTF-8");
                    if (1 == language) {
@@ -2638,6 +2656,11 @@
                        tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
                    }
                    emailService.insert(tEmail);
                            }catch (Exception e){
                                e.printStackTrace();
                            }
                        }
                    }).start();
                }
            }
        }
@@ -2649,6 +2672,7 @@
            Integer integer = orderService.queryOrderNum(dah.getDriverId(), date.get("startTime"), date.get("endTime"));
            if(dao.getOrderNum() <= integer){
                dah.setCarryOut(2);//完成状态
                dah.setCompletionTime(new Date());
                driverActivityHistoryMapper.updateById(dah);
                //修改余额
                Driver driver = this.selectById(dah.getDriverId());
@@ -2665,6 +2689,10 @@
    
                Integer language = driver.getLanguage();
                if(ToolUtil.isNotEmpty(driver.getEmail())) {
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            try {
                    String path1 = templatePath + "driver/index.html";
                    Document document1 = Jsoup.parse(new File(path1), "UTF-8");
                    if (1 == language) {
@@ -2758,6 +2786,11 @@
                        tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
                    }
                    emailService.insert(tEmail);
                            }catch (Exception e){
                                e.printStackTrace();
                            }
                        }
                    }).start();
                }
            }
        }
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -1582,7 +1582,7 @@
            if(ToolUtil.isEmpty(userInfo.getPhone())){
                return ResultUtil.error("请先绑定手机号码");
            }
            orderPrivateCar.setPassengers(userInfo.getFirstName() + "." + userInfo.getLastName());
            orderPrivateCar.setPassengers(ToolUtil.isNotEmpty(userInfo.getFirstName()) ? userInfo.getFirstName() + "." + userInfo.getLastName() : "");
            orderPrivateCar.setPassengersPhone(userInfo.getPhone());
        }
        orderPrivateCar.setState(1);
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -3498,7 +3498,10 @@
        BaseWarpper baseWarpper = new BaseWarpper();
        double amount = 0;
        CancleOrder query = cancleOrderService.query(orderLogistics.getCompanyId());
        if(null == query || null == orderLogistics.getDriverId() || orderLogistics.getState() == 11){
        if(null == query){
            return ResultUtil.error("请先添加取消规则");
        }
        if(null == orderLogistics.getDriverId() || orderLogistics.getState() == 11){
            baseWarpper.setAmount(amount);
            return ResultUtil.success(baseWarpper);
        }
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -311,7 +311,7 @@
        orderPrivateCar.setPassengers(name);
        orderPrivateCar.setPassengersPhone(phone);
        if(instead == 0 || ToolUtil.isEmpty(orderPrivateCar.getPassengers())){
            orderPrivateCar.setPassengers(userInfo.getFirstName() + "." + userInfo.getLastName());
            orderPrivateCar.setPassengers(ToolUtil.isNotEmpty(userInfo.getFirstName()) ? userInfo.getFirstName() + "." + userInfo.getLastName() : "");
            orderPrivateCar.setPassengersPhone(userInfo.getPhone());
        }
        orderPrivateCar.setState(1);
@@ -729,7 +729,10 @@
        BaseWarpper baseWarpper = new BaseWarpper();
        double amount = 0;
        CancleOrder query = cancleOrderService.query(orderPrivateCar.getCompanyId());
        if(null == query || null == orderPrivateCar.getDriverId() || orderPrivateCar.getState() == 11){
        if(null == query){
            return ResultUtil.error("请先添加取消规则");
        }
        if(null == orderPrivateCar.getDriverId() || orderPrivateCar.getState() == 11){
            baseWarpper.setAmount(amount);
            return ResultUtil.success(baseWarpper);
        }
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverActivityHistoryMapper.xml
@@ -13,7 +13,7 @@
        carryOut as carryOut,
        money as money,
        insertTime as insertTime
        from t_driver_activity_history where `day` between #{start} and #{end} and driverActivityId in (select id from t_driver_activity where status = 3 and now() between startTime and endTime)
        from t_driver_activity_history where `day` between DATE_FORMAT(#{start}, '%Y-%m-%d') and DATE_FORMAT(#{end}, '%Y-%m-%d') and driverActivityId in (select id from t_driver_activity where status = 3 and now() between startTime and endTime)
        <if test="null != type">
            and `type` = #{type}
        </if>
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityHistory.java
@@ -58,6 +58,11 @@
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 完成时间
     */
    @TableField("completionTime")
    private Date completionTime;
    public Integer getId() {
        return id;
@@ -131,6 +136,14 @@
        this.insertTime = insertTime;
    }
    public Date getCompletionTime() {
        return completionTime;
    }
    public void setCompletionTime(Date completionTime) {
        this.completionTime = completionTime;
    }
    @Override
    public String toString() {
        return "DriverActivityHistory{" +
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -316,6 +316,7 @@
                        bigDecimal = bigDecimal.add(new BigDecimal(driverActivityHistory.getMoney()));
                        incomeService.saveData(2, driver.getId(), 1, driverActivityHistory.getId(), null, driverActivityHistory.getMoney());
                        driverActivityHistory.setCarryOut(2);
                        driverActivityHistory.setCompletionTime(new Date());
                        driverActivityHistoryMapper.updateById(driverActivityHistory);
                    }
                    
@@ -669,6 +670,7 @@
                        bigDecimal = bigDecimal.add(new BigDecimal(driverActivityHistory.getMoney()));
                        incomeService.saveData(2, driver.getId(), 1, driverActivityHistory.getId(), null, driverActivityHistory.getMoney());
                        driverActivityHistory.setCarryOut(2);
                        driverActivityHistory.setCompletionTime(new Date());
                        driverActivityHistoryMapper.updateById(driverActivityHistory);
                    }
                    driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
@@ -677,6 +679,11 @@
                    driverMapper.updateById(driver);
                    if(ToolUtil.isNotEmpty(driver.getEmail())){
                        BigDecimal finalBigDecimal = bigDecimal;
                        new Thread(new Runnable() {
                            @Override
                            public void run() {
                                try {
                        String path1 = templatePath + "driver/index.html";
                        Document document1 = Jsoup.parse(new File(path1), "UTF-8");
                        if(1 == language){
@@ -693,7 +700,7 @@
                            Element user_user = document1.getElementById("user_user");
                            user_user.text("您好 " + driver.getFirstName() + " " + driver.getLastName() + ",");
                            Element user_content = document1.getElementById("user_content");
                            user_content.text("您已成功邀请一位用户注册I-GO,获得奖励GHS " + bigDecimal.doubleValue() + ",请查收");
                                        user_content.text("您已成功邀请一位用户注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
                        }
                        if(2 == language){
                            document1.getElementById("chinese").remove();
@@ -709,7 +716,7 @@
                            Element user1_user = document1.getElementById("user1_user");
                            user1_user.text("Hello " + driver.getFirstName() + " " + driver.getLastName() + ",");
                            Element user1_content = document1.getElementById("user1_content");
                            user1_content.text("You have succeeded to invite a rider to register with I-GO, so you received a GHS " + bigDecimal.doubleValue() + " bonus, please check your balance.");
                                        user1_content.text("You have succeeded to invite a rider to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
                        }
                        if(3 == language){
                            document1.getElementById("chinese").remove();
@@ -725,7 +732,7 @@
                            Element user2_user = document1.getElementById("user2_user");
                            user2_user.text("Bonjour " + driver.getFirstName() + " " + driver.getLastName() + ",");
                            Element user2_content = document1.getElementById("user2_content");
                            user2_content.text("Vous avez invité avec succès un utilisateur à s’inscrire à i-go pour recevoir une récompense GHS " + bigDecimal.doubleValue() + ". Veuillez vérifier");
                                        user2_content.text("Vous avez invité avec succès un utilisateur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
                        }
                        EmailUtil.send(driver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document1.html());
                        //开始生成pdf收据和html收据
@@ -759,6 +766,11 @@
                            tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
                        }
                        emailService.insert(tEmail);
                                }catch (Exception e){
                                    e.printStackTrace();
                                }
                            }
                        }).start();
                    }
                }
@@ -814,6 +826,14 @@
                        userActivityInviteMapper.updateById(uai);
                        if(ToolUtil.isNotEmpty(userInfo1.getEmail())){
                            int finalNum = num;
                            String finalStartTime = startTime;
                            String finalEndTime = endTime;
                            double finalFullMoney = fullMoney;
                            new Thread(new Runnable() {
                                @Override
                                public void run() {
                                    try {
                            String path1 = templatePath +  "user/coupon.html";
                            Document document1 = Jsoup.parse(new File(path1), "UTF-8");
                            if(language == 1){
@@ -823,11 +843,11 @@
                                Element chinese_user = document1.getElementById("chinese_user");
                                chinese_user.text("您好 " + userInfo1.getNickName() + ",");
                                Element chinese_number = document1.getElementById("chinese_number");
                                chinese_number.text("您有" + num + "张优惠券到账");
                                            chinese_number.text("您有" + finalNum + "张优惠券到账");
                                Element chinese_date = document1.getElementById("chinese_date");
                                chinese_date.text("此活动有效期在" + startTime + "至" + endTime + ",详情请查看I-GO平台");
                                            chinese_date.text("此活动有效期在" + finalStartTime + "至" + finalEndTime + ",详情请查看I-GO平台");
                                Element chinese_remark = document1.getElementById("chinese_remark");
                                chinese_remark.text("注意:满减活动,每单消费至少GHS " + fullMoney + ",才可享用。");
                                            chinese_remark.text("注意:满减活动,每单消费至少GHS " + finalFullMoney + ",才可享用。");
                            }
                            if(language == 2){
                                document1.getElementById("chinese").remove();
@@ -836,11 +856,11 @@
                                Element english_user = document1.getElementById("english_user");
                                english_user.text("Hello " + userInfo1.getNickName() + ",");
                                Element english_number = document1.getElementById("english_number");
                                english_number.text("You have received " + num + " coupons");
                                            english_number.text("You have received " + finalNum + " coupons");
                                Element english_date = document1.getElementById("english_date");
                                english_date.text("You could use them from " + startTime + " to " + endTime);
                                            english_date.text("You could use them from " + finalStartTime + " to " + finalEndTime);
                                Element english_remark = document1.getElementById("english_remark");
                                english_remark.text("NB! Coupon is valid only for the trip fare not less than GHS " + fullMoney + " per ride.");
                                            english_remark.text("NB! Coupon is valid only for the trip fare not less than GHS " + finalFullMoney + " per ride.");
                            }
                            if(language == 3){
                                document1.getElementById("chinese").remove();
@@ -849,11 +869,11 @@
                                Element french_user = document1.getElementById("french_user");
                                french_user.text("Cher(ère) " + userInfo1.getNickName() + ",");
                                Element french_number = document1.getElementById("french_number");
                                french_number.text("Vous avez reçu " + num + " coupons.");
                                            french_number.text("Vous avez reçu " + finalNum + " coupons.");
                                Element french_date = document1.getElementById("french_date");
                                french_date.text("Vous devriez les utiliser du" + startTime + " au " + endTime + ", voir le détail sur la plate-forme I-GO.");
                                            french_date.text("Vous devriez les utiliser du" + finalStartTime + " au " + finalEndTime + ", voir le détail sur la plate-forme I-GO.");
                                Element french_remark = document1.getElementById("french_remark");
                                french_remark.text("Remarque! Le coupon n'est valable que pour le tarif d'au moins GHS " + fullMoney + " par trajet.");
                                            french_remark.text("Remarque! Le coupon n'est valable que pour le tarif d'au moins GHS " + finalFullMoney + " par trajet.");
                            }
                            EmailUtil.send(userInfo1.getEmail(), language == 1 ? "优惠券到账" : language == 2 ? "Coupon is in" : "Le coupon est arrivé sur le compte",  document1.html());
                            //开始生成pdf收据和html收据
@@ -887,6 +907,11 @@
                                tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
                            }
                            emailService.insert(tEmail);
                                    }catch (Exception e){
                                        e.printStackTrace();
                                    }
                                }
                            }).start();
                        }
                    }