peng
2025-11-06 1a7a278e32123023fa43bdaa274da778c27b80a0
framework/src/main/java/cn/lili/modules/lmk/service/impl/ActionRecordServiceImpl.java
@@ -1,20 +1,32 @@
package cn.lili.modules.lmk.service.impl;
import cn.lili.common.security.AuthUser;
import cn.lili.common.security.context.UserContext;
import cn.lili.modules.lmk.domain.query.StayActionRecordQuery;
import cn.lili.modules.lmk.domain.vo.ShareActionRecordVO;
import cn.lili.modules.lmk.domain.vo.StayActionRecordVO;
import cn.lili.modules.lmk.service.ShareActionService;
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.plugins.pagination.Page;
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;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@@ -38,7 +50,16 @@
    @Override
    public Result add(ActionRecordForm form) {
        ActionRecord entity = ActionRecordForm.getEntityByForm(form, null);
        baseMapper.insert(entity);
        AuthUser currentUser = UserContext.getCurrentUser();
        if (currentUser == null) {
            return Result.ok();
        }else {
            entity.setUserId(currentUser.getId());
            entity.setStartTime(LocalDateTime.now());
            baseMapper.insert(entity);
        }
        return Result.ok("添加成功");
    }
@@ -116,4 +137,40 @@
                .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());
    }
    @Override
    public BigDecimal getToDayStayTime(String userId, LocalDateTime begin , LocalDateTime end) {
       return baseMapper.getToDayStayTime(userId,begin,end);
    }
    @Override
    public Result userStayList(StayActionRecordQuery param) {
        IPage<StayActionRecordVO> page = PageUtil.getPage(param, StayActionRecordVO.class);
        Page<StayActionRecordVO> stayActionRecordVOPage = baseMapper.userStayList(page, param);
        return Result.ok().data(stayActionRecordVOPage);
    }
    @Override
    public Result userStayListRecord(StayActionRecordQuery param) {
        IPage<ActionRecord> page = PageUtil.getPage(param, ActionRecord.class);
        Page<ActionRecord> stayActionRecordVOPage = baseMapper.userStayListRecord(page, param);
        return Result.ok().data(stayActionRecordVOPage);
    }
    @Override
    public Result userShare(StayActionRecordQuery param) {
        IPage<ShareActionRecordVO> page = PageUtil.getPage(param, ShareActionRecordVO.class);
        Page<ShareActionRecordVO> shareActionRecordVOPage = baseMapper.userShare(page, param);
        return Result.ok().data(shareActionRecordVOPage);
    }
}