Przeglądaj źródła

sup 用户访问

he2802 3 lat temu
rodzic
commit
7fb6bc2c4c

+ 11 - 0
zhongzheng-common/src/main/java/com/zhongzheng/common/utils/DateUtils.java

@@ -5,6 +5,7 @@ import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.text.SimpleDateFormat;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.time.format.DateTimeFormatter;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.Date;
 
 
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.lang.Validator;
@@ -188,6 +189,16 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
         return System.currentTimeMillis()/1000;
         return System.currentTimeMillis()/1000;
     }
     }
 
 
+    /**
+     * 获取今天凌晨时间戳
+     */
+    public static Long getTodayZeroTime()
+    {
+        Calendar cal = Calendar.getInstance();
+        cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
+        return cal.getTimeInMillis() / 1000;  //今天凌晨
+    }
+
 
 
     /**
     /**
      * 获取日期格式订单号
      * 获取日期格式订单号

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserVisitLogAddBo.java

@@ -33,4 +33,7 @@ public class UserVisitLogAddBo {
     /** 访问IP */
     /** 访问IP */
     @ApiModelProperty("访问IP")
     @ApiModelProperty("访问IP")
     private String ip;
     private String ip;
+    /** 访问日期 */
+    @ApiModelProperty("访问日期")
+    private Long dateTime;
 }
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserVisitLogEditBo.java

@@ -38,4 +38,8 @@ public class UserVisitLogEditBo {
     @ApiModelProperty("访问IP")
     @ApiModelProperty("访问IP")
     private String ip;
     private String ip;
 
 
+    /** 访问日期 */
+    @ApiModelProperty("访问日期")
+    private Long dateTime;
+
 }
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserVisitLogQueryBo.java

@@ -51,4 +51,7 @@ public class UserVisitLogQueryBo extends BaseEntity {
 	/** 结束时间 */
 	/** 结束时间 */
 	@ApiModelProperty("结束时间")
 	@ApiModelProperty("结束时间")
 	private String endTime;
 	private String endTime;
+	/** 访问日期 */
+	@ApiModelProperty("访问日期")
+	private Long dateTime;
 }
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserVisitLog.java

@@ -38,4 +38,6 @@ private static final long serialVersionUID=1L;
     private String fromPlat;
     private String fromPlat;
     /** 访问IP */
     /** 访问IP */
     private String ip;
     private String ip;
+    /** 访问日期 */
+    private Long dateTime;
 }
 }

+ 11 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserVisitLogServiceImpl.java

@@ -1,6 +1,7 @@
 package com.zhongzheng.modules.user.service.impl;
 package com.zhongzheng.modules.user.service.impl;
 
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.core.util.StrUtil;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.common.utils.ServletUtils;
@@ -8,6 +9,7 @@ import com.zhongzheng.common.utils.ip.IpUtils;
 import com.zhongzheng.modules.user.bo.UserVisitLogAddBo;
 import com.zhongzheng.modules.user.bo.UserVisitLogAddBo;
 import com.zhongzheng.modules.user.bo.UserVisitLogEditBo;
 import com.zhongzheng.modules.user.bo.UserVisitLogEditBo;
 import com.zhongzheng.modules.user.bo.UserVisitLogQueryBo;
 import com.zhongzheng.modules.user.bo.UserVisitLogQueryBo;
+import com.zhongzheng.modules.user.domain.User;
 import com.zhongzheng.modules.user.domain.UserVisitLog;
 import com.zhongzheng.modules.user.domain.UserVisitLog;
 import com.zhongzheng.modules.user.mapper.UserVisitLogMapper;
 import com.zhongzheng.modules.user.mapper.UserVisitLogMapper;
 import com.zhongzheng.modules.user.service.IUserVisitLogService;
 import com.zhongzheng.modules.user.service.IUserVisitLogService;
@@ -70,9 +72,18 @@ public class UserVisitLogServiceImpl extends ServiceImpl<UserVisitLogMapper, Use
 
 
     @Override
     @Override
     public Boolean insertByAddBo(UserVisitLogAddBo bo) {
     public Boolean insertByAddBo(UserVisitLogAddBo bo) {
+        if(Validator.isEmpty(bo.getFromPlat())){
+            return false;
+        }
+        Long zeroTime = DateUtils.getTodayZeroTime();
+        if(count(new LambdaQueryWrapper<UserVisitLog>()
+                .eq(UserVisitLog::getUserId,bo.getUserId()).eq(UserVisitLog::getDateTime,zeroTime))>0){
+            return false;
+        }
         UserVisitLog add = BeanUtil.toBean(bo, UserVisitLog.class);
         UserVisitLog add = BeanUtil.toBean(bo, UserVisitLog.class);
         validEntityBeforeSave(add);
         validEntityBeforeSave(add);
         add.setIp(IpUtils.getIpAddr(ServletUtils.getRequest()));
         add.setIp(IpUtils.getIpAddr(ServletUtils.getRequest()));
+        add.setDateTime(zeroTime);
         add.setCreateTime(DateUtils.getNowTime());
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());
         return this.save(add);
         return this.save(add);

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserVisitLogVo.java

@@ -38,4 +38,8 @@ public class UserVisitLogVo {
 	private String ip;
 	private String ip;
 	@ApiModelProperty("访问时间")
 	@ApiModelProperty("访问时间")
 	private Long createTime;
 	private Long createTime;
+	/** 访问日期 */
+	@Excel(name = "访问日期")
+	@ApiModelProperty("访问日期")
+	private Long dateTime;
 }
 }

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserVisitLogMapper.xml

@@ -11,6 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="updateTime" column="update_time"/>
         <result property="updateTime" column="update_time"/>
         <result property="fromPlat" column="from_plat"/>
         <result property="fromPlat" column="from_plat"/>
         <result property="ip" column="ip"/>
         <result property="ip" column="ip"/>
+        <result property="dateTime" column="date_time"/>
     </resultMap>
     </resultMap>