mirror of https://gitee.com/stylefeng/roses
【8.0.4】【fav模块】更新用户收藏业务两个方法
parent
3912db568f
commit
ac1dfaf585
|
@ -24,6 +24,8 @@
|
||||||
*/
|
*/
|
||||||
package cn.stylefeng.roses.kernel.favorite.modular.api;
|
package cn.stylefeng.roses.kernel.favorite.modular.api;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户收藏Api
|
* 用户收藏Api
|
||||||
*
|
*
|
||||||
|
@ -32,5 +34,23 @@ package cn.stylefeng.roses.kernel.favorite.modular.api;
|
||||||
*/
|
*/
|
||||||
public interface UserFavoriteApi {
|
public interface UserFavoriteApi {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取用户针对某个业务的收藏信息
|
||||||
|
*
|
||||||
|
* @param userId 用户id
|
||||||
|
* @param favType 收藏的业务类型
|
||||||
|
* @author fengshuonan
|
||||||
|
* @since 2023/11/21 22:18
|
||||||
|
*/
|
||||||
|
List<Long> getFavoriteBusinessId(Long userId, String favType);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前登录用户针对某个业务的收藏信息
|
||||||
|
*
|
||||||
|
* @param favType 收藏的业务类型
|
||||||
|
* @author fengshuonan
|
||||||
|
* @since 2023/11/21 22:18
|
||||||
|
*/
|
||||||
|
List<Long> getCurrentUserFavoriteBusinessId(String favType);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package cn.stylefeng.roses.kernel.favorite.modular.service;
|
package cn.stylefeng.roses.kernel.favorite.modular.service;
|
||||||
|
|
||||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||||
|
import cn.stylefeng.roses.kernel.favorite.modular.api.UserFavoriteApi;
|
||||||
import cn.stylefeng.roses.kernel.favorite.modular.entity.SysUserFavorite;
|
import cn.stylefeng.roses.kernel.favorite.modular.entity.SysUserFavorite;
|
||||||
import cn.stylefeng.roses.kernel.favorite.modular.pojo.request.SysUserFavoriteRequest;
|
import cn.stylefeng.roses.kernel.favorite.modular.pojo.request.SysUserFavoriteRequest;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
@ -13,7 +14,7 @@ import java.util.List;
|
||||||
* @author fengshuonan
|
* @author fengshuonan
|
||||||
* @since 2023/11/21 22:09
|
* @since 2023/11/21 22:09
|
||||||
*/
|
*/
|
||||||
public interface SysUserFavoriteService extends IService<SysUserFavorite> {
|
public interface SysUserFavoriteService extends IService<SysUserFavorite>, UserFavoriteApi {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增用户收藏信息
|
* 新增用户收藏信息
|
||||||
|
|
|
@ -2,6 +2,8 @@ package cn.stylefeng.roses.kernel.favorite.modular.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import cn.stylefeng.roses.kernel.auth.api.context.LoginContext;
|
||||||
|
import cn.stylefeng.roses.kernel.auth.api.pojo.login.LoginUser;
|
||||||
import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
|
import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
|
||||||
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
|
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
|
||||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||||
|
@ -17,7 +19,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户收藏信息业务实现层
|
* 用户收藏信息业务实现层
|
||||||
|
@ -86,6 +90,42 @@ public class SysUserFavoriteServiceImpl extends ServiceImpl<SysUserFavoriteMappe
|
||||||
return sysUserFavorite;
|
return sysUserFavorite;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Long> getFavoriteBusinessId(Long userId, String favType) {
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(userId) || ObjectUtil.isEmpty(favType)) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
LambdaQueryWrapper<SysUserFavorite> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(SysUserFavorite::getUserId, userId);
|
||||||
|
queryWrapper.eq(SysUserFavorite::getFavType, favType);
|
||||||
|
|
||||||
|
// 只查询业务id
|
||||||
|
queryWrapper.select(SysUserFavorite::getBusinessId);
|
||||||
|
|
||||||
|
List<SysUserFavorite> sysUserFavoriteList = this.list(queryWrapper);
|
||||||
|
if (ObjectUtil.isEmpty(sysUserFavoriteList)) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
return sysUserFavoriteList.stream().map(SysUserFavorite::getBusinessId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Long> getCurrentUserFavoriteBusinessId(String favType) {
|
||||||
|
if (ObjectUtil.isEmpty(favType)) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
LoginUser loginUserNullable = LoginContext.me().getLoginUserNullable();
|
||||||
|
if (loginUserNullable == null) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.getFavoriteBusinessId(loginUserNullable.getUserId(), favType);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建查询wrapper
|
* 创建查询wrapper
|
||||||
*
|
*
|
||||||
|
@ -109,5 +149,4 @@ public class SysUserFavoriteServiceImpl extends ServiceImpl<SysUserFavoriteMappe
|
||||||
|
|
||||||
return queryWrapper;
|
return queryWrapper;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue