From bb294f0394f8e5aab45258d7450c9ad5ccd5c6d9 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 24 Sep 2020 16:40:48 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/modules/member/entity/MemberDeviceInfo.java | 17 ++++++++
src/main/java/com/xcong/excoin/common/system/controller/CommonController.java | 52 ++++++++++++++++++++++++--
src/main/java/com/xcong/excoin/common/system/controller/LoginController.java | 15 -------
3 files changed, 65 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java b/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
index 61639f7..01a4c3c 100644
--- a/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
+++ b/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
@@ -2,15 +2,17 @@
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.xcong.excoin.common.LoginUserUtils;
import com.xcong.excoin.common.contants.AppContants;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.common.system.dto.Base64UploadDto;
import com.xcong.excoin.common.system.service.CommonService;
import com.xcong.excoin.configurations.properties.AliOssProperties;
-import com.xcong.excoin.utils.MessageSourceUtils;
-import com.xcong.excoin.utils.OssUtils;
-import com.xcong.excoin.utils.RedisUtils;
-import com.xcong.excoin.utils.SmsUtils;
+import com.xcong.excoin.modules.member.entity.MemberDeviceInfo;
+import com.xcong.excoin.modules.member.entity.MemberEntity;
+import com.xcong.excoin.modules.member.service.MemberDeviceInfoService;
+import com.xcong.excoin.utils.*;
import com.xcong.excoin.utils.mail.Sms106Send;
import com.xcong.excoin.utils.mail.SmsSend;
import com.xcong.excoin.utils.mail.SubMailSend;
@@ -22,6 +24,7 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.Map;
@@ -47,6 +50,9 @@
@Resource
private AliOssProperties aliOssProperties;
+
+ @Resource
+ private MemberDeviceInfoService memberDeviceInfoService;
@ApiOperation(value = "获取验证码接口", notes = "获取验证码通用接口")
@GetMapping(value = "/verifyCode")
@@ -107,4 +113,42 @@
}
return Result.fail(MessageSourceUtils.getString("uploadFile_controller_0001"));
}
+
+ @ApiOperation(value = "设备信息", notes = "获取设备信息")
+ @GetMapping(value = "/userInfo")
+ public Result userInfo(HttpServletRequest request) {
+ String device = request.getHeader("device");
+
+ if (StrUtil.isBlank(device)) {
+ return Result.fail("device not found");
+ }
+ MemberEntity member = LoginUserUtils.getAppLoginUser();
+ QueryWrapper<MemberDeviceInfo> query = new QueryWrapper<>();
+ query.eq("device_code", device);
+ Long memberId = null;
+ if (member != null) {
+ memberId = member.getId();
+ query.eq("member_id", memberId);
+ }
+ MemberDeviceInfo deviceInfo = memberDeviceInfoService.getOne(query);
+
+ String userAgent = HttpUtils.getUserAgent(request);
+ String ip = HttpUtils.getRealIp(request);
+ if (deviceInfo == null) {
+ deviceInfo = new MemberDeviceInfo();
+ deviceInfo.setMemberId(memberId);
+ deviceInfo.setUserAgent(userAgent);
+ deviceInfo.setDeviceCode(device);
+ deviceInfo.setIp(ip);
+ memberDeviceInfoService.save(deviceInfo);
+ } else {
+ deviceInfo.setMemberId(memberId);
+ deviceInfo.setUserAgent(userAgent);
+ deviceInfo.setDeviceCode(device);
+ deviceInfo.setIp(ip);
+ memberDeviceInfoService.updateById(deviceInfo);
+ }
+
+ return Result.ok("success");
+ }
}
diff --git a/src/main/java/com/xcong/excoin/common/system/controller/LoginController.java b/src/main/java/com/xcong/excoin/common/system/controller/LoginController.java
index 97ee995..12785f7 100644
--- a/src/main/java/com/xcong/excoin/common/system/controller/LoginController.java
+++ b/src/main/java/com/xcong/excoin/common/system/controller/LoginController.java
@@ -109,21 +109,6 @@
authInfo.put("token", token);
authInfo.put("user", loginUserBean);
}
-
- MemberDeviceInfo deviceInfo = memberDeviceInfoService.getByMemberId(loginUserBean.getMemberEntity().getId());
- String ip = HttpUtils.getRealIp(request);
- String userAgent = HttpUtils.getUserAgent(request);
- if (deviceInfo == null) {
- deviceInfo = new MemberDeviceInfo();
- deviceInfo.setIp(ip);
- deviceInfo.setUserAgent(userAgent);
- deviceInfo.setMemberId(loginUserBean.getMemberEntity().getId());
- memberDeviceInfoService.save(deviceInfo);
- } else {
- deviceInfo.setIp(ip);
- deviceInfo.setUserAgent(userAgent);
- memberDeviceInfoService.updateById(deviceInfo);
- }
return Result.ok("success", authInfo);
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/entity/MemberDeviceInfo.java b/src/main/java/com/xcong/excoin/modules/member/entity/MemberDeviceInfo.java
index 2567ead..238ba90 100644
--- a/src/main/java/com/xcong/excoin/modules/member/entity/MemberDeviceInfo.java
+++ b/src/main/java/com/xcong/excoin/modules/member/entity/MemberDeviceInfo.java
@@ -11,7 +11,24 @@
@Data
@TableName("member_device_info")
public class MemberDeviceInfo extends BaseEntity {
+
+ /**
+ * 用户ID
+ */
private Long memberId;
+
+ /**
+ * ip地址
+ */
private String ip;
+
+ /**
+ * userAgent
+ */
private String userAgent;
+
+ /**
+ * 设备唯一标识码
+ */
+ private String deviceCode;
}
--
Gitblit v1.9.1