From a9d20ab16034a23dbdb6f182429f13d7d92cdac8 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期五, 19 九月 2025 18:02:59 +0800
Subject: [PATCH] 用户行为分析
---
framework/src/main/java/cn/lili/modules/lmk/domain/form/ActionRecordForm.java | 25 ++++++++++++++++++-------
framework/src/main/java/cn/lili/modules/lmk/service/ActionRecordService.java | 2 ++
buyer-api/src/main/java/cn/lili/controller/lmk/ActionRecordBuyerController.java | 5 +++++
framework/src/main/java/cn/lili/modules/lmk/service/impl/ActionRecordServiceImpl.java | 17 +++++++++++++++--
4 files changed, 40 insertions(+), 9 deletions(-)
diff --git a/buyer-api/src/main/java/cn/lili/controller/lmk/ActionRecordBuyerController.java b/buyer-api/src/main/java/cn/lili/controller/lmk/ActionRecordBuyerController.java
index 377ad4f..940b731 100644
--- a/buyer-api/src/main/java/cn/lili/controller/lmk/ActionRecordBuyerController.java
+++ b/buyer-api/src/main/java/cn/lili/controller/lmk/ActionRecordBuyerController.java
@@ -37,6 +37,11 @@
public Result add(@RequestBody @Validated(Add.class) ActionRecordForm form) {
return actionRecordService.add(form);
}
+ @GetMapping("/sessionId")
+ @ApiOperation(value = "鑾峰彇浼氳瘽id", notes = "鑾峰彇浼氳瘽id")
+ public Result grantSessionId() {
+ return actionRecordService.grantSessionId();
+ }
}
diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/form/ActionRecordForm.java b/framework/src/main/java/cn/lili/modules/lmk/domain/form/ActionRecordForm.java
index 0206733..343feb8 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/domain/form/ActionRecordForm.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/domain/form/ActionRecordForm.java
@@ -4,6 +4,7 @@
import cn.lili.group.Add;
import cn.lili.base.AbsForm;
import cn.lili.modules.lmk.domain.entity.ActionRecord;
+import cn.lili.modules.lmk.enums.general.*;
import org.springframework.beans.BeanUtils;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@@ -23,14 +24,16 @@
@ApiModel(value = "ActionRecord琛ㄥ崟", description = "鐢ㄦ埛琛屼负璁板綍琛ㄥ崟")
public class ActionRecordForm extends AbsForm {
- @NotNull(message = "鐢ㄦ埛id涓嶈兘涓虹┖", groups = {Add.class, Update.class})
+ @NotNull(message = "鐢ㄦ埛id涓嶈兘涓虹┖", groups = {Update.class})
@ApiModelProperty("鐢ㄦ埛id")
private Long userId;
@NotBlank(message = "椤甸潰浼氳瘽id涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("椤甸潰浼氳瘽id")
private String sessionId;
-
+ /**
+ * @see UserActionTypeEnum
+ */
@NotBlank(message = "琛屼负绫诲瀷涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("琛屼负绫诲瀷")
private String actionType;
@@ -38,7 +41,9 @@
@NotNull(message = "瑙﹀彂鏃堕棿涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("瑙﹀彂鏃堕棿")
private Date startTime;
-
+ /**
+ * @see UserActionJoinPageTypeEnum
+ */
@NotBlank(message = "杩涘叆椤甸潰鏂瑰紡涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("杩涘叆椤甸潰鏂瑰紡")
private String joinType;
@@ -47,10 +52,12 @@
@ApiModelProperty("涓婁竴涓〉闈㈢殑浼氳瘽id")
private String previousSessionId;
- @NotNull(message = "鍒嗕韩id涓嶈兘涓虹┖", groups = {Add.class, Update.class})
+ @NotNull(message = "鍒嗕韩id涓嶈兘涓虹┖", groups = { Update.class})
@ApiModelProperty("鍒嗕韩id")
private Long shareId;
-
+ /**
+ * @see UserActionPageEnums
+ */
@NotBlank(message = "椤甸潰缂栫爜涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("椤甸潰缂栫爜")
private String pageCode;
@@ -58,11 +65,15 @@
@NotBlank(message = "椤甸潰璇︽儏鍙傛暟(json鏍煎紡)涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("椤甸潰璇︽儏鍙傛暟(json鏍煎紡)")
private String pageParams;
-
+ /**
+ * @see UserActionPageTypeEnum
+ */
@NotBlank(message = "椤甸潰绫诲瀷涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("椤甸潰绫诲瀷")
private String pageType;
-
+ /**
+ * @see UserActionInPageStatusEnum
+ */
@NotBlank(message = "鐢ㄦ埛鍦ㄩ〉闈㈢姸鎬佷笉鑳戒负绌�", groups = {Add.class, Update.class})
@ApiModelProperty("鐢ㄦ埛鍦ㄩ〉闈㈢姸鎬�")
private String pageStatus;
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/ActionRecordService.java b/framework/src/main/java/cn/lili/modules/lmk/service/ActionRecordService.java
index 3eabb20..671ffb5 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/ActionRecordService.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/ActionRecordService.java
@@ -62,4 +62,6 @@
* @return
*/
Result all();
+
+ Result grantSessionId();
}
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActionRecordServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActionRecordServiceImpl.java
index 63d2836..73c3139 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActionRecordServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActionRecordServiceImpl.java
@@ -1,16 +1,20 @@
package cn.lili.modules.lmk.service.impl;
+import cn.lili.common.security.AuthUser;
+import cn.lili.common.security.context.UserContext;
import com.baomidou.mybatisplus.core.metadata.IPage;
import cn.lili.modules.lmk.domain.entity.ActionRecord;
import cn.lili.modules.lmk.mapper.ActionRecordMapper;
import cn.lili.modules.lmk.service.ActionRecordService;
import cn.lili.base.Result;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cn.lili.modules.lmk.domain.form.ActionRecordForm;
import cn.lili.modules.lmk.domain.vo.ActionRecordVO;
import cn.lili.modules.lmk.domain.query.ActionRecordQuery;
-import org.springframework.stereotype.Service;
import lombok.RequiredArgsConstructor;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Service;
import cn.lili.utils.PageUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.util.Assert;
@@ -116,4 +120,13 @@
.collect(Collectors.toList());
return Result.ok().data(vos);
}
-}
+
+ @Override
+ public Result grantSessionId() {
+ AuthUser currentUser = UserContext.getCurrentUser();
+ if (currentUser == null) {
+ return Result.ok();
+ }
+ return Result.ok().data(IdWorker.getIdStr());
+ }
+}
\ No newline at end of file
--
Gitblit v1.8.0