feat: 分享圈列表,分享详情

This commit is contained in:
sjm
2024-07-15 23:14:46 +08:00
parent 5e868abcd7
commit 0cc06a171c
28 changed files with 234 additions and 115 deletions

View File

@@ -4,7 +4,6 @@ import cn.hutool.extra.spring.SpringUtil;
import com.alibaba.fastjson.JSON;
import com.google.common.base.Preconditions;
import com.schisandra.oss.application.convert.SchisandraOssAliDTOConverter;
import com.schisandra.oss.application.convert.SchisandraOssMinioDTOConverter;
import com.schisandra.oss.application.dto.SchisandraOssAliDTO;
import com.schisandra.oss.application.oss.constant.OssConstant;
import com.schisandra.oss.application.oss.core.ali.AliOssClient;
@@ -12,11 +11,9 @@ import com.schisandra.oss.application.oss.core.ali.AliOssConfiguration;
import com.schisandra.oss.application.oss.model.OssInfo;
import com.schisandra.oss.common.entity.Result;
import com.schisandra.oss.domain.bo.SchisandraOssAliBO;
import com.schisandra.oss.domain.bo.SchisandraOssMinioBO;
import com.schisandra.oss.domain.redis.RedisUtil;
import com.schisandra.oss.domain.service.SchisandraOssAliDomainService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.ApplicationContext;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -28,7 +25,9 @@ import java.io.InputStream;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.concurrent.TimeUnit;
/**
@@ -51,6 +50,37 @@ public class SchisandraOssAliController {
@Resource
RedisUtil redisUtil;
/**
* @description: 预览文件
* @param: [userId, bucket, filePath]
* @return: com.schisandra.oss.common.entity.Result<java.lang.String>
* @date: 2024/6/27 10:14
*/
@PostMapping("previewFile")
public Result<String> previewMinioFile(@RequestParam String userId, @RequestParam String bucket, @RequestParam String filePath) throws IOException {
Preconditions.checkNotNull(userId, "不能为空");
Preconditions.checkNotNull(bucket, "不能为空");
Preconditions.checkNotNull(filePath, "不能为空");
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
bean.getAliOssConfig().setBucketName(bucket);
try {
Date date = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
String formattedDate = dateFormat.format(date);
String key = redisUtil.buildKey(USER_OSS_PREFIX, "previewFile", formattedDate, userId, filePath);
HashMap<Object, Object> map = new HashMap<>();
String url = bean.getAliPreviewUrl(filePath);
map.put("url", url);
map.put("time", formattedDate);
redisUtil.setNx(key, map, 30L, TimeUnit.DAYS);
return Result.ok(url);
} catch (Exception e) {
return Result.fail(e.getMessage());
}
}
/**
* 返回ali表所有数据
*
@@ -59,7 +89,7 @@ public class SchisandraOssAliController {
@GetMapping("returnAll")
public Result returnAll() {
List<SchisandraOssAliBO> list = schisandraOssAliDomainService.selectAll();
if(list.isEmpty()){
if (list.isEmpty()) {
return Result.fail();
}
return Result.ok(SchisandraOssAliDTOConverter.INSTANCE.convertBOToDTOList(list));
@@ -67,7 +97,7 @@ public class SchisandraOssAliController {
@GetMapping("init")
public Result init(@RequestParam String userId,@RequestParam String Id) {
public Result init(@RequestParam String userId, @RequestParam String Id) {
if (log.isInfoEnabled()) {
log.info("SchisandraOssAliController.init.userId:{}", userId);
}
@@ -76,15 +106,15 @@ public class SchisandraOssAliController {
bo.setId(Long.valueOf(Id));
bo.setUserId(Long.valueOf(userId));
bo.setStatus(String.valueOf(true));
if(schisandraOssAliDomainService.update(bo)){
if (schisandraOssAliDomainService.update(bo)) {
return aliOssConfiguration.aliOssClient(userId);
}else{
} else {
return Result.fail("初始化失败");
}
}
@PostMapping("shutdown")
public Result shutdownAli(@RequestParam String userId,@RequestParam String Id){
public Result shutdownAli(@RequestParam String userId, @RequestParam String Id) {
if (log.isInfoEnabled()) {
log.info("SchisandraOssAliController.shutdown.userId:{}", JSON.toJSONString(userId));
}
@@ -92,10 +122,10 @@ public class SchisandraOssAliController {
bo.setId(Long.valueOf(Id));
bo.setUserId(Long.valueOf(userId));
bo.setStatus(String.valueOf(false));
if(schisandraOssAliDomainService.update(bo)){
SpringUtil.unregisterBean(OssConstant.OssType.ALI+ userId);
if (schisandraOssAliDomainService.update(bo)) {
SpringUtil.unregisterBean(OssConstant.OssType.ALI + userId);
return Result.ok("关闭成功");
}else{
} else {
return Result.fail("关闭失败");
}
}
@@ -168,13 +198,13 @@ public class SchisandraOssAliController {
@GetMapping("listDir")
public Result<String> listAliDir(@RequestParam String userId, @RequestParam String bucket, @RequestParam String prefix) throws Exception {
Preconditions.checkNotNull(userId, "不能为空");
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI+ userId);
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
bean.getAliOssConfig().setBucketName(bucket);
if (prefix == null)
prefix = "";
if(bean.listAliInfo(bucket, prefix) != null){
if (bean.listAliInfo(bucket, prefix) != null) {
return Result.ok(bean.listAliInfo(bucket, prefix));
}else{
} else {
return Result.fail("获取文件目录信息失败");
}
@@ -189,10 +219,10 @@ public class SchisandraOssAliController {
@PostMapping("seleteBucket")
public Result seleteBucket(@RequestParam String userId) {
Preconditions.checkNotNull(userId, "不能为空");
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI+ userId);
if(bean.selectAllBucket() != null){
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
if (bean.selectAllBucket() != null) {
return Result.ok(bean.selectAllBucket());
}else{
} else {
return Result.fail("查询失败");
}
@@ -209,11 +239,11 @@ public class SchisandraOssAliController {
public Result<String> createBucket(@RequestParam String userId, @RequestParam String bucket) {
Preconditions.checkNotNull(userId, "不能为空");
Preconditions.checkNotNull(bucket, "不能为空");
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI+ userId);
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
bean.getAliOssConfig().setBucketName(bucket);
if(bean.createBucket(bucket).equals(bucket)){
if (bean.createBucket(bucket).equals(bucket)) {
return Result.ok(bean.createBucket(bucket));
}else{
} else {
return Result.fail("创建失败");
}
}
@@ -231,9 +261,9 @@ public class SchisandraOssAliController {
Preconditions.checkNotNull(bucket, "不能为空");
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
bean.getAliOssConfig().setBucketName(bucket);
if(bean.deleteBucket(bucket).equals("yes")){
if (bean.deleteBucket(bucket).equals("yes")) {
return Result.ok(bean.deleteBucket(bucket));
}else{
} else {
return Result.fail("删除失败,或许桶已经不存在");
}
}
@@ -250,7 +280,10 @@ public class SchisandraOssAliController {
Preconditions.checkNotNull(userId, "不能为空");
Preconditions.checkNotNull(fileName, "不能为空");
Preconditions.checkNotNull(bucket, "不能为空");
// 获取文件输入流
InputStream is = file.getInputStream();
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
bean.getAliOssConfig().setBucketName(bucket);
//设置热力图
Date date = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
@@ -263,20 +296,16 @@ public class SchisandraOssAliController {
} else {
redisUtil.set(key, String.valueOf(1));
}
// 获取文件输入流
InputStream is = file.getInputStream();
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
bean.getAliOssConfig().setBucketName(bucket);
if(bean.upLoad(is, fileName, true) != null){
if (bean.upLoad(is, fileName, true) != null) {
return Result.ok(bean.upLoad(is, fileName, true));
}else{
} else {
return Result.fail();
}
}
/**
* @description: 下载文件
* @param: [schisandraOssAliDTO]

View File

@@ -8,11 +8,10 @@ import com.schisandra.share.common.entity.Result;
import com.schisandra.share.domain.bo.SchisandraShareCircleBO;
import com.schisandra.share.domain.service.SchisandraShareCircleDomainService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
* 分享圈 controller
@@ -32,25 +31,13 @@ public class SchisandraShareCircleController {
*/
@RequestMapping("add")
public Result<Boolean> add(@RequestBody SchisandraShareCircleDTO schisandraShareCircleDTO) {
try {
if (log.isInfoEnabled()) {
log.info("SchisandraShareCircleController.add.dto:{}", JSON.toJSONString(schisandraShareCircleDTO));
}
Preconditions.checkNotNull(schisandraShareCircleDTO.getId(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getUserId(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getParentId(), "默认0父id不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getName(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getIcon(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getDescription(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCount(), "分享总数不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getViews(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getExtJson(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCreatedBy(), "创建人不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCreatedTime(), "创建时间不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getUpdateBy(), "更新人不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getUpdateTime(), "更新时间不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getIsDeleted(), "不能为空");
SchisandraShareCircleBO SchisandraShareCircleBO = SchisandraShareCircleDTOConverter.INSTANCE.convertDTOToBO(schisandraShareCircleDTO);
return Result.ok(schisandraShareCircleDomainService.add(SchisandraShareCircleBO));
} catch (Exception e) {
@@ -60,6 +47,21 @@ public class SchisandraShareCircleController {
}
/**
* 分享圈列表返回
*/
@GetMapping("sharelist")
public Result<List<SchisandraShareCircleDTO>> getShareList() {
try {
List<SchisandraShareCircleBO> result = schisandraShareCircleDomainService.queryAll();
List<SchisandraShareCircleDTO> schisandraShareCircleDTOS = SchisandraShareCircleDTOConverter.INSTANCE.convertBOToDTOList(result);
return Result.ok(schisandraShareCircleDTOS);
}catch (Exception e) {
log.error("SchisandraShareCircleController.getShareList.error:{}", e.getMessage(), e);
return Result.fail("分享圈列表获取失败");
}
}
/**
* 修改分享圈
*/
@@ -78,12 +80,6 @@ public class SchisandraShareCircleController {
Preconditions.checkNotNull(schisandraShareCircleDTO.getDescription(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCount(), "分享总数不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getViews(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getExtJson(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCreatedBy(), "创建人不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCreatedTime(), "创建时间不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getUpdateBy(), "更新人不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getUpdateTime(), "更新时间不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getIsDeleted(), "不能为空");
SchisandraShareCircleBO schisandraShareCircleBO = SchisandraShareCircleDTOConverter.INSTANCE.convertDTOToBO(schisandraShareCircleDTO);
return Result.ok(schisandraShareCircleDomainService.update(schisandraShareCircleBO));
} catch (Exception e) {
@@ -111,12 +107,7 @@ public class SchisandraShareCircleController {
Preconditions.checkNotNull(schisandraShareCircleDTO.getDescription(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCount(), "分享总数不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getViews(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getExtJson(), "不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCreatedBy(), "创建人不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getCreatedTime(), "创建时间不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getUpdateBy(), "更新人不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getUpdateTime(), "更新时间不能为空");
Preconditions.checkNotNull(schisandraShareCircleDTO.getIsDeleted(), "不能为空");
SchisandraShareCircleBO schisandraShareCircleBO = SchisandraShareCircleDTOConverter.INSTANCE.convertDTOToBO(schisandraShareCircleDTO);
return Result.ok(schisandraShareCircleDomainService.delete(schisandraShareCircleBO));
} catch (Exception e) {

View File

@@ -28,6 +28,17 @@ public class SchisandraShareDetailController {
private SchisandraShareDetailDomainService schisandraShareDetailDomainService;
/**
*查询详细信息
*/
@PostMapping("get_detail")
public Result selectDetail(@RequestParam("Id") Long Id){
SchisandraShareDetailBO resultList = schisandraShareDetailDomainService.getDetailsById(Id);
return Result.ok(resultList);
}
/**
* @description: 查询分享列表
* @param: []
@@ -45,7 +56,7 @@ public class SchisandraShareDetailController {
/**
* 新增分享详情表
*/
@RequestMapping("add")
@PostMapping("add")
public Result<Boolean> add(@RequestBody SchisandraShareDetailDTO schisandraShareDetailDTO) {
try {
@@ -80,7 +91,7 @@ public class SchisandraShareDetailController {
/**
* 修改分享详情表
*/
@RequestMapping("update")
@PostMapping("update")
public Result<Boolean> update(@RequestBody SchisandraShareDetailDTO schisandraShareDetailDTO) {
try {
@@ -115,7 +126,7 @@ public class SchisandraShareDetailController {
/**
* 删除分享详情表
*/
@RequestMapping("delete")
@PostMapping("delete")
public Result<Boolean> delete(@RequestBody SchisandraShareDetailDTO schisandraShareDetailDTO) {
try {

View File

@@ -54,35 +54,10 @@ public class SchisandraShareCircleDTO implements Serializable {
*/
private Long views;
/**
*
*/
private String extJson;
/**
* 创建人
*/
private String createdBy;
private String avatar;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updateBy;
/**
* 更新时间
*/
private Date updateTime;
/**
*
*/
private Integer isDeleted;
private String nickName;
}

View File

@@ -83,5 +83,9 @@ public class SchisandraShareCircleBO implements Serializable {
*/
private Integer isDeleted;
private String avatar;
private String nickName;
}

View File

@@ -95,11 +95,13 @@ public class SchisandraShareDetailBO implements Serializable {
*/
private Integer isDeleted;
List<SchisandraShareTagsBO> tags;
private String nickname;
private String avatar;
List<SchisandraShareTagsBO> tags;
List<SchisandraShareUrlBO> urls;
}

View File

@@ -5,6 +5,8 @@ import com.schisandra.share.infra.basic.entity.SchisandraShareCircle;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
/**
* 分享圈 bo转换器
*
@@ -18,5 +20,5 @@ public interface SchisandraShareCircleBOConverter {
SchisandraShareCircle convertBOToEntity(SchisandraShareCircleBO schisandraShareCircleBO);
SchisandraShareCircleBO convertEntityToBO(SchisandraShareCircle schisandraShareCircle);
List<SchisandraShareCircleBO> convertEntityToBOList(List<SchisandraShareCircle> schisandraShareCircles);
}

View File

@@ -5,6 +5,8 @@ import com.schisandra.share.infra.basic.entity.SchisandraShareUrl;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
/**
* 分享链接 bo转换器
*
@@ -19,4 +21,5 @@ public interface SchisandraShareUrlBOConverter {
SchisandraShareUrl convertBOToEntity(SchisandraShareUrlBO schisandraShareUrlBO);
SchisandraShareUrlBO convertEntityToBO(SchisandraShareUrl schisandraShareUrl);
List<SchisandraShareUrlBO> convertEntityToBOList(List<SchisandraShareUrl> schisandraShareUrlS);
}

View File

@@ -5,6 +5,8 @@ import com.schisandra.share.infra.basic.entity.SchisandraShareUrlDetail;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
/**
* 分享链接/分享详情映射表 bo转换器
*
@@ -19,4 +21,5 @@ public interface SchisandraShareUrlDetailBOConverter {
SchisandraShareUrlDetail convertBOToEntity(SchisandraShareUrlDetailBO schisandraShareUrlDetailBO);
SchisandraShareUrlDetailBO convertEntityToBO(SchisandraShareUrlDetail schisandraShareUrlDetail);
List<SchisandraShareUrlDetailBO> convertEntityToBOList(List<SchisandraShareUrlDetail> schisandraShareUrlDetailS);
}

View File

@@ -27,4 +27,7 @@ public interface SchisandraShareCircleDomainService {
*/
Boolean delete(SchisandraShareCircleBO schisandraShareCircleBO);
SchisandraShareCircleBO queryById(Long id);
List<SchisandraShareCircleBO> queryAll();
}

View File

@@ -28,4 +28,6 @@ public interface SchisandraShareDetailDomainService {
Boolean delete(SchisandraShareDetailBO schisandraShareDetailBO);
List<SchisandraShareDetailBO> list(Long circleId);
SchisandraShareDetailBO getDetailsById(Long Id);
}

View File

@@ -6,12 +6,14 @@ import com.schisandra.share.domain.bo.SchisandraShareCircleBO;
import com.schisandra.share.domain.service.SchisandraShareCircleDomainService;
import com.schisandra.share.infra.basic.entity.SchisandraShareCircle;
import com.schisandra.share.infra.basic.service.SchisandraShareCircleService;
import com.schisandra.share.infra.entity.AuthUserInfoEntity;
import com.schisandra.share.infra.rpc.UserRpc;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
import java.util.ArrayList;
/**
* 分享圈 领域service实现了
@@ -26,6 +28,9 @@ public class SchisandraShareCircleDomainServiceImpl implements SchisandraShareCi
@Resource
private SchisandraShareCircleService schisandraShareCircleService;
@Resource
UserRpc userInfoRpc;
@Override
public Boolean add(SchisandraShareCircleBO schisandraShareCircleBO) {
SchisandraShareCircle schisandraShareCircle = SchisandraShareCircleBOConverter.INSTANCE.convertBOToEntity(schisandraShareCircleBO);
@@ -47,4 +52,31 @@ public class SchisandraShareCircleDomainServiceImpl implements SchisandraShareCi
return schisandraShareCircleService.update(schisandraShareCircle) > 0;
}
@Override
public SchisandraShareCircleBO queryById(Long id) {
return SchisandraShareCircleBOConverter.INSTANCE.convertEntityToBO(schisandraShareCircleService.queryById(id));
}
@Override
public List<SchisandraShareCircleBO> queryAll() {
List<SchisandraShareCircleBO> schisandraShareCircleBO_list = SchisandraShareCircleBOConverter.INSTANCE.convertEntityToBOList(schisandraShareCircleService.queryAll());
ArrayList<SchisandraShareCircleBO> arrayList = new ArrayList<>();
for (SchisandraShareCircleBO schisandraShareCircleBO : schisandraShareCircleBO_list) {
SchisandraShareCircleBO shareCircleBO = new SchisandraShareCircleBO();
AuthUserInfoEntity info = userInfoRpc.getUserInfo(schisandraShareCircleBO.getUserId());
shareCircleBO.setUserId(schisandraShareCircleBO.getUserId());
shareCircleBO.setParentId(schisandraShareCircleBO.getParentId());
shareCircleBO.setId(schisandraShareCircleBO.getId());
shareCircleBO.setIcon(schisandraShareCircleBO.getIcon());
shareCircleBO.setDescription(schisandraShareCircleBO.getDescription());
shareCircleBO.setViews(schisandraShareCircleBO.getViews());
shareCircleBO.setCount(schisandraShareCircleBO.getCount());
shareCircleBO.setAvatar(info.getAvatar());
shareCircleBO.setNickName(info.getNickName());
arrayList.add(shareCircleBO);
}
return arrayList;
}
}

View File

@@ -1,19 +1,11 @@
package com.schisandra.share.domain.service.impl;
import com.schisandra.share.common.enums.IsDeletedFlagEnum;
import com.schisandra.share.domain.bo.SchisandraShareDetailBO;
import com.schisandra.share.domain.bo.SchisandraShareDetailTagBO;
import com.schisandra.share.domain.bo.SchisandraShareTagsBO;
import com.schisandra.share.domain.convert.SchisandraShareDetailBOConverter;
import com.schisandra.share.domain.convert.SchisandraShareDetailTagBOConverter;
import com.schisandra.share.domain.convert.SchisandraShareTagsBOConverter;
import com.schisandra.share.domain.bo.*;
import com.schisandra.share.domain.convert.*;
import com.schisandra.share.domain.service.SchisandraShareDetailDomainService;
import com.schisandra.share.infra.basic.entity.SchisandraShareDetail;
import com.schisandra.share.infra.basic.entity.SchisandraShareDetailTag;
import com.schisandra.share.infra.basic.entity.SchisandraShareTags;
import com.schisandra.share.infra.basic.service.SchisandraShareDetailService;
import com.schisandra.share.infra.basic.service.SchisandraShareDetailTagService;
import com.schisandra.share.infra.basic.service.SchisandraShareTagsService;
import com.schisandra.share.infra.basic.entity.*;
import com.schisandra.share.infra.basic.service.*;
import com.schisandra.share.infra.entity.AuthUserInfoEntity;
import com.schisandra.share.infra.rpc.UserRpc;
import lombok.extern.slf4j.Slf4j;
@@ -21,6 +13,8 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.print.DocFlavor;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
@@ -39,9 +33,12 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
private SchisandraShareDetailService schisandraShareDetailService;
@Resource
private SchisandraShareDetailTagService schisandraShareDetailTagService;
@Resource
private SchisandraShareTagsService schisandraShareTagsService;
@Resource
private SchisandraShareUrlDetailService schisandraShareUrlDetailService;
@Resource
private SchisandraShareUrlService schisandraShareUrlService;
@Resource
UserRpc userRpc;
@@ -98,4 +95,30 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
return resultList;
}
@Override
public SchisandraShareDetailBO getDetailsById(Long Id) {
SchisandraShareDetail schisandraShareDetails = schisandraShareDetailService.queryById(Id);
SchisandraShareDetailBO schisandraShareDetailBO = SchisandraShareDetailBOConverter.INSTANCE.convertEntityToBO(schisandraShareDetails);
AuthUserInfoEntity userInfo = userRpc.getUserInfo(schisandraShareDetailBO.getUserId());
schisandraShareDetailBO.setAvatar(userInfo.getAvatar());
schisandraShareDetailBO.setNickname(userInfo.getNickName());
List<SchisandraShareUrlDetail> schisandraShareUrlDetailS = schisandraShareUrlDetailService.queryByDetailId(Id);
List<SchisandraShareUrlDetailBO> schisandraShareUrlDetailBOS = SchisandraShareUrlDetailBOConverter.INSTANCE.convertEntityToBOList(schisandraShareUrlDetailS);
List<Long> urlIds = schisandraShareUrlDetailBOS.stream().map(SchisandraShareUrlDetailBO::getUrlId).collect(Collectors.toList());
List<SchisandraShareUrl> schisandraShareUrlS = schisandraShareUrlService.queryByIds(urlIds);
List<SchisandraShareUrlBO> schisandraShareUrlBOS = SchisandraShareUrlBOConverter.INSTANCE.convertEntityToBOList(schisandraShareUrlS);
schisandraShareDetailBO.setUrls(schisandraShareUrlBOS);
List<SchisandraShareDetailTag> schisandraShareDetailTags = schisandraShareDetailTagService.queryTagIdsByDetailId(schisandraShareDetailBO.getId());
List<SchisandraShareDetailTagBO> shareDetailTagBOList = SchisandraShareDetailTagBOConverter.INSTANCE.convertEntityToBOList(schisandraShareDetailTags);
List<Long> tagIds = shareDetailTagBOList.stream().map(SchisandraShareDetailTagBO::getTagId).collect(Collectors.toList());
List<SchisandraShareTags> shareTagList = schisandraShareTagsService.queryByIds(tagIds);
List<SchisandraShareTagsBO> shareTagsBOList = SchisandraShareTagsBOConverter.INSTANCE.convertEntityToBOList(shareTagList);
schisandraShareDetailBO.setTags(shareTagsBOList);
return schisandraShareDetailBO;
}
}

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareCircle implements Serializable {
/**
*
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareCommentReply implements Serializable {
/**
* 评论ID
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareDetail implements Serializable {
/**
*
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareDetailTag implements Serializable {
/**
*
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareMessage implements Serializable {
/**
* 主键
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareSensitiveWords implements Serializable {
/**
*
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareTags implements Serializable {
/**
*
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareUrl implements Serializable {
/**
*
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -4,6 +4,7 @@ import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import java.io.Serializable;
@@ -22,7 +23,7 @@ public class SchisandraShareUrlDetail implements Serializable {
/**
*
*/
@Id(value = "id", keyType = KeyType.Auto)
@Id(keyType=KeyType.Generator, value= KeyGenerators.flexId)
private Long id;
/**

View File

@@ -2,6 +2,8 @@ package com.schisandra.share.infra.basic.service;
import com.schisandra.share.infra.basic.entity.SchisandraShareCircle;
import java.util.List;
/**
* 分享圈 表服务接口
*
@@ -42,5 +44,9 @@ public interface SchisandraShareCircleService {
*/
boolean deleteById(Long id);
/**
* 查询所有数据
*/
List<SchisandraShareCircle> queryAll();
}

View File

@@ -2,6 +2,8 @@ package com.schisandra.share.infra.basic.service;
import com.schisandra.share.infra.basic.entity.SchisandraShareUrlDetail;
import java.util.List;
/**
* 分享链接/分享详情映射表 表服务接口
*
@@ -42,5 +44,5 @@ public interface SchisandraShareUrlDetailService {
*/
boolean deleteById(Long id);
List<SchisandraShareUrlDetail> queryByDetailId(Long detailId);
}

View File

@@ -2,6 +2,8 @@ package com.schisandra.share.infra.basic.service;
import com.schisandra.share.infra.basic.entity.SchisandraShareUrl;
import java.util.List;
/**
* 分享链接 表服务接口
*
@@ -43,4 +45,5 @@ public interface SchisandraShareUrlService {
boolean deleteById(Long id);
List<SchisandraShareUrl> queryByIds(List<Long> Ids);
}

View File

@@ -6,6 +6,7 @@ import com.schisandra.share.infra.basic.service.SchisandraShareCircleService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
* 分享圈 表服务实现类
@@ -63,5 +64,10 @@ public class SchisandraShareCircleServiceImpl implements SchisandraShareCircleSe
return this.schisandraShareCircleDao.deleteById(id) > 0;
}
@Override
public List<SchisandraShareCircle> queryAll() {
return this.schisandraShareCircleDao.selectAll();
}
}

View File

@@ -2,10 +2,12 @@ package com.schisandra.share.infra.basic.service.impl;
import com.schisandra.share.infra.basic.entity.SchisandraShareUrlDetail;
import com.schisandra.share.infra.basic.dao.SchisandraShareUrlDetailDao;
import com.schisandra.share.infra.basic.entity.table.SchisandraShareUrlDetailTableDef;
import com.schisandra.share.infra.basic.service.SchisandraShareUrlDetailService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
* 分享链接/分享详情映射表 表服务实现类
@@ -63,5 +65,11 @@ public class SchisandraShareUrlDetailServiceImpl implements SchisandraShareUrlDe
return this.schisandraShareUrlDetailDao.deleteById(id) > 0;
}
@Override
public List<SchisandraShareUrlDetail> queryByDetailId(Long detailId) {
return this.schisandraShareUrlDetailDao.selectListByCondition(
SchisandraShareUrlDetailTableDef.SCHISANDRA_SHARE_URL_DETAIL.DETAIL_ID.eq(detailId)
);
}
}

View File

@@ -1,11 +1,13 @@
package com.schisandra.share.infra.basic.service.impl;
import com.schisandra.share.infra.basic.entity.SchisandraShareTags;
import com.schisandra.share.infra.basic.entity.SchisandraShareUrl;
import com.schisandra.share.infra.basic.dao.SchisandraShareUrlDao;
import com.schisandra.share.infra.basic.service.SchisandraShareUrlService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
* 分享链接 表服务实现类
@@ -63,5 +65,8 @@ public class SchisandraShareUrlServiceImpl implements SchisandraShareUrlService
return this.schisandraShareUrlDao.deleteById(id) > 0;
}
@Override
public List<SchisandraShareUrl> queryByIds(List<Long> Ids) {
return this.schisandraShareUrlDao.selectListByIds(Ids);
}
}