From 4becc1e8cdb2fbe0dcb94493b75a59ec1817028c Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 04 十一月 2023 16:05:04 +0800
Subject: [PATCH] 修改bug

---
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java |   22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
index 446b6df..24269b7 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -297,10 +297,10 @@
     @Override
     public boolean checkCaptcha(String email, String phone, String code) throws Exception {
         Object value = redisUtil.getValue(ToolUtil.isNotEmpty(email) ? email : phone);
+        redisUtil.remove(ToolUtil.isNotEmpty(email) ? email : phone);
         if("1246".equals(code)){
             return true;
         }
-
         if(null != value && code.equals(String.valueOf(value))){
             return true;
         }else{
@@ -1491,6 +1491,8 @@
         List<ActivityWarpper> list = new ArrayList<>();
         Map<String, Date> date = dateUtil.getStartAndEndDate(time);
         List<DriverActivityHistory> driverActivityHistories = driverActivityHistoryMapper.queryList(uid, null, null, date.get("startTime"), date.get("endTime"));
+
+        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
         for(DriverActivityHistory dah : driverActivityHistories){
             ActivityWarpper activityWarpper = new ActivityWarpper();
             switch (dah.getType()){
@@ -1513,10 +1515,10 @@
                     activityWarpper.setId(driverActivityOnline.getId());
                     StringBuffer sb = new StringBuffer(language == 1 ? "今日" :
                             language == 2 ? " today " : " aujourd’hui ");
-                    DriverWork driverWork = driverWorkMapper.queryNewWork(uid, driverActivityOnline.getType(), 1);
+                    DriverOnline query = driverOnlineMapper.query(uid, sdf1.format(new Date()), 0);
                     Integer hour = 0;
-                    if(null != driverWork){
-                        hour = Long.valueOf((System.currentTimeMillis() - driverWork.getStartTime().getTime()) / 3600000).intValue();
+                    if(null != query){
+                        hour = Long.valueOf(query.getDuration() / 3600).intValue();
                     }
                     switch (driverActivityOnline.getType()){
                         case 1:
@@ -1533,8 +1535,8 @@
                             break;
                     }
                     String str = language == 1 ? "累计在线" +driverActivityOnline.getOnline() + "小时奖励" +driverActivityOnline.getMoney() + "元" :
-                            language == 2 ? "RMB " + driverActivityOnline.getMoney() + " will be awarded for " + driverActivityOnline.getOnline() + " hours online" :
-                                    "Bonus de " + driverActivityOnline.getMoney() + " $pour " + driverActivityOnline.getOnline() + " heures cumulées en ligne";
+                            language == 2 ? " RMB " + driverActivityOnline.getMoney() + " will be awarded for " + driverActivityOnline.getOnline() + " hours online" :
+                                    " Bonus de " + driverActivityOnline.getMoney() + " $pour " + driverActivityOnline.getOnline() + " heures cumulées en ligne";
                     activityWarpper.setContent(sb.append(str).toString());
                     activityWarpper.setCarryOut((dah.getCarryOut() == 2 || hour > driverActivityOnline.getOnline()) ? driverActivityOnline.getOnline() + "/" +driverActivityOnline.getOnline() : hour + "/" + driverActivityOnline.getOnline());
                     break;
@@ -2091,13 +2093,16 @@
     @Override
     public void taskMinute() throws Exception {
         Map<String, Date> date = dateUtil.getStartAndEndDate(new Date());
-        Integer language = 1;
+        Integer language = 2;
         //在线时长
         List<DriverActivityHistory> list = driverActivityHistoryMapper.queryList(null, 3, 1, date.get("startTime"), date.get("endTime"));
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         for(DriverActivityHistory dah : list){
             DriverActivityOnline dao = driverActivityOnlineMapper.selectById(dah.getActivityId());
-            Long duration = Long.valueOf(dao.getOnline() * 60 * 60 * 1000);
+            if(null == dao){
+                continue;
+            }
+            Long duration = Long.valueOf(dao.getOnline() * 3600);
             List<DriverOnline> driverOnlines = driverOnlineMapper.queryList(sdf.format(new Date()), duration);
             for (DriverOnline driverOnline : driverOnlines) {
                 if(dah.getDriverId().compareTo(driverOnline.getDriverId()) == 0){
@@ -2790,7 +2795,6 @@
      * @param id
      */
     private void singlePointLogin(Integer id){
-        pushUtil.pushOffline(id, 2);
         //开始验证当前账号是否在别处登录
         String value = redisUtil.getValue("DRIVER_" + id);
         if(ToolUtil.isNotEmpty(value)){//将另外设备上的强迫下线(如果是车载端不需要下线)

--
Gitblit v1.7.1