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