feat: 返回用户收藏列表
This commit is contained in:
@@ -5,14 +5,17 @@ import com.google.common.base.Preconditions;
|
||||
import com.schisandra.share.application.convert.SchisandraUserFavoritesDTOConverter;
|
||||
import com.schisandra.share.application.dto.SchisandraUserFavoritesDTO;
|
||||
import com.schisandra.share.common.entity.Result;
|
||||
import com.schisandra.share.common.utils.CaffeineUtil;
|
||||
import com.schisandra.share.domain.bo.SchisandraUserFavoritesBO;
|
||||
import com.schisandra.share.domain.service.SchisandraUserFavoritesDomainService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 收藏表 controller
|
||||
@@ -28,26 +31,46 @@ public class SchisandraUserFavoritesController {
|
||||
@Resource
|
||||
private SchisandraUserFavoritesDomainService schisandraUserFavoritesDomainService;
|
||||
|
||||
@Resource
|
||||
CaffeineUtil caffeineUtil;
|
||||
|
||||
/**
|
||||
* 新增收藏表
|
||||
* 我的收藏
|
||||
* @param userId
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("myfavor")
|
||||
public Result<SchisandraUserFavoritesDTO> myfavor(String userId) {
|
||||
try{
|
||||
if (log.isInfoEnabled()) {
|
||||
log.info("SchisandraUserFavoritesController.myfavor.userId:{}", JSON.toJSONString(userId));
|
||||
}
|
||||
Preconditions.checkNotNull(userId, "userId不能为空");
|
||||
List<SchisandraUserFavoritesBO> result= (List<SchisandraUserFavoritesBO>) caffeineUtil
|
||||
.caffeineBuild().getIfPresent("myfavor"+userId);
|
||||
if(result!=null){
|
||||
return Result.ok(result);
|
||||
}
|
||||
result = schisandraUserFavoritesDomainService.returnMyFavor(userId);
|
||||
return Result.ok(result);
|
||||
} catch (Exception e) {
|
||||
log.error("SchisandraUserFavoritesController.myfavor.error:{}", e.getMessage(), e);
|
||||
return Result.fail("获取用户收藏表失败");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增收藏
|
||||
*/
|
||||
@RequestMapping("add")
|
||||
public Result<Boolean> add(@RequestBody SchisandraUserFavoritesDTO schisandraUserFavoritesDTO) {
|
||||
|
||||
try {
|
||||
if (log.isInfoEnabled()) {
|
||||
log.info("SchisandraUserFavoritesController.add.dto:{}", JSON.toJSONString(schisandraUserFavoritesDTO));
|
||||
}
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getId(), "不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getUserId(), "不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getDetailId(), "不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getCircleId(), "不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getExtJson(), "不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getCreatedBy(), "创建人不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getCreatedTime(), "创建时间不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getUpdateBy(), "更新人不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getUpdateTime(), "更新时间不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getIsDeleted(), "不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getUserId(), "userId不能为空");
|
||||
Preconditions.checkNotNull(schisandraUserFavoritesDTO.getDetailId(), "detailId不能为空");
|
||||
SchisandraUserFavoritesBO SchisandraUserFavoritesBO = SchisandraUserFavoritesDTOConverter.INSTANCE.convertDTOToBO(schisandraUserFavoritesDTO);
|
||||
return Result.ok(schisandraUserFavoritesDomainService.add(SchisandraUserFavoritesBO));
|
||||
} catch (Exception e) {
|
||||
|
@@ -5,6 +5,8 @@ import com.schisandra.share.infra.basic.entity.SchisandraUserFavorites;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 收藏表 bo转换器
|
||||
*
|
||||
@@ -19,4 +21,5 @@ public interface SchisandraUserFavoritesBOConverter {
|
||||
SchisandraUserFavorites convertBOToEntity(SchisandraUserFavoritesBO schisandraUserFavoritesBO);
|
||||
SchisandraUserFavoritesBO convertEntityToBO(SchisandraUserFavorites schisandraUserFavorites);
|
||||
|
||||
List<SchisandraUserFavoritesBO> convertEntityToBOList(List<SchisandraUserFavorites> schisandraUserFavorites);
|
||||
}
|
||||
|
@@ -2,6 +2,8 @@ package com.schisandra.share.domain.service;
|
||||
|
||||
import com.schisandra.share.domain.bo.SchisandraUserFavoritesBO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 收藏表 领域service
|
||||
*
|
||||
@@ -25,4 +27,6 @@ public interface SchisandraUserFavoritesDomainService {
|
||||
*/
|
||||
Boolean delete(SchisandraUserFavoritesBO schisandraUserFavoritesBO);
|
||||
|
||||
List<SchisandraUserFavoritesBO> returnMyFavor(String userId);
|
||||
|
||||
}
|
||||
|
@@ -10,6 +10,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 收藏表 领域service实现了
|
||||
@@ -45,4 +46,10 @@ public class SchisandraUserFavoritesDomainServiceImpl implements SchisandraUserF
|
||||
return schisandraUserFavoritesService.update(schisandraUserFavorites) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SchisandraUserFavoritesBO> returnMyFavor(String userId){
|
||||
List<SchisandraUserFavoritesBO> schisandraUserFavoritesBOS = SchisandraUserFavoritesBOConverter.INSTANCE.convertEntityToBOList(schisandraUserFavoritesService.returnMyFavor(userId));
|
||||
return schisandraUserFavoritesBOS;
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -2,6 +2,8 @@ package com.schisandra.share.infra.basic.service;
|
||||
|
||||
import com.schisandra.share.infra.basic.entity.SchisandraUserFavorites;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 收藏表 表服务接口
|
||||
*
|
||||
@@ -42,5 +44,5 @@ public interface SchisandraUserFavoritesService {
|
||||
*/
|
||||
boolean deleteById(Long id);
|
||||
|
||||
|
||||
List<SchisandraUserFavorites> returnMyFavor(String userId);
|
||||
}
|
||||
|
@@ -1,11 +1,14 @@
|
||||
package com.schisandra.share.infra.basic.service.impl;
|
||||
|
||||
import com.mybatisflex.core.query.QueryWrapper;
|
||||
import com.schisandra.share.infra.basic.entity.SchisandraUserFavorites;
|
||||
import com.schisandra.share.infra.basic.dao.SchisandraUserFavoritesDao;
|
||||
import com.schisandra.share.infra.basic.entity.table.SchisandraUserFavoritesTableDef;
|
||||
import com.schisandra.share.infra.basic.service.SchisandraUserFavoritesService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 收藏表 表服务实现类
|
||||
@@ -63,5 +66,17 @@ public class SchisandraUserFavoritesServiceImpl implements SchisandraUserFavorit
|
||||
return this.schisandraUserFavoritesDao.deleteById(id) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SchisandraUserFavorites> returnMyFavor(String userId) {
|
||||
QueryWrapper wrapper = QueryWrapper.create()
|
||||
.select(SchisandraUserFavoritesTableDef.SCHISANDRA_USER_FAVORITES.ID,
|
||||
SchisandraUserFavoritesTableDef.SCHISANDRA_USER_FAVORITES.DETAIL_ID,
|
||||
SchisandraUserFavoritesTableDef.SCHISANDRA_USER_FAVORITES.CIRCLE_ID,
|
||||
SchisandraUserFavoritesTableDef.SCHISANDRA_USER_FAVORITES.CREATED_TIME)
|
||||
.where(SchisandraUserFavoritesTableDef.SCHISANDRA_USER_FAVORITES.USER_ID.eq(userId))
|
||||
.orderBy(SchisandraUserFavoritesTableDef.SCHISANDRA_USER_FAVORITES.CREATED_TIME,false);
|
||||
return this.schisandraUserFavoritesDao.selectListByQuery(wrapper);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user