fix: bug修复

This commit is contained in:
landaiqing
2024-07-23 14:53:52 +08:00
parent ed11089c34
commit 9bf1881310
8 changed files with 62 additions and 60 deletions

View File

@@ -22,7 +22,7 @@ public class ThreadPoolConfig {
public ThreadPoolExecutor getLabelThreadPool() {
return new ThreadPoolExecutor(20, 100, 5,
TimeUnit.SECONDS, new LinkedBlockingDeque<>(40),
new CustomNameThreadFactory("rotateCaptcha"),
new CustomNameThreadFactory("share"),
new ThreadPoolExecutor.CallerRunsPolicy());
}
}

View File

@@ -105,7 +105,8 @@ public class SchisandraShareDetailController {
@GetMapping("returncount")
public Result returncount(String detailId) {
try {
return Result.ok(schisandraShareDetailDomainService.getDetailsById(detailId).getCommentCount());
Long count = schisandraShareDetailDomainService.getDetailsCommentCount(detailId);
return Result.ok(count);
} catch (Exception e) {
return Result.fail("获取评论数量失败!!!");
}
@@ -178,7 +179,7 @@ public class SchisandraShareDetailController {
@GetMapping("get_detail")
public Result selectDetail(@RequestParam("Id") String Id,String userId) {
try {
SchisandraShareDetailBO resultList = schisandraShareDetailDomainService.getDetailsById2(Id,userId);
SchisandraShareDetailBO resultList = schisandraShareDetailDomainService.getDetailsById(Id,userId);
HashMap<String, Object> map = new HashMap<>();
map.put("Id", Id);
map.put("Views", true);

View File

@@ -4,46 +4,48 @@ public enum TypeName {
/**
* 阿里oss
*/
阿里云OSS("ali"),
ali("ali","阿里云OSS"),
/**
* Minio oss
*/
MinIO("minio"),
minio("minio","MinIO"),
/**
* 又拍OSS
*/
又拍云USS("up"),
up("up","又拍OSS"),
/**
* SFTP
*/
sftp("sftp"),
sftp("sftp","sftp"),
/**
* 腾讯OSS
*/
腾讯云COS("tencent"),
tencent("tencent","腾讯云COS"),
/**
* 百度OSS
*/
百度云BOS("baidu"),
baidu("baidu","百度网盘"),
/**
* 华为OSS
*/
华为云OBS("huawei"),
huawei("huawei","华为云OSS"),
/**
* 网易 OSS
*/
网易云NOS("wangyi"),
wangyi("wangyi","网易云"),
/**
* 七牛 oss
*/
七牛云Kodo("qiniu");
qiniu("qiniu","七牛云OSS");
public String type;
public String typeName;
TypeName(String type) {
TypeName(String type,String typeName) {
this.type = type;
this.typeName = typeName;
}
public static TypeName getByType(String type) {
for (TypeName resultKeyEnum : TypeName.values()) {

View File

@@ -29,9 +29,7 @@ public interface SchisandraShareDetailDomainService {
List<SchisandraShareDetailBO> list(String circleId,String userId);
SchisandraShareDetailBO getDetailsById2(String Id,String userId);
SchisandraShareDetailBO getDetailsById(String Id);
SchisandraShareDetailBO getDetailsById(String Id,String userId);
Boolean addDetail(SchisandraShareDetailBO schisandraShareDetailBO);
@@ -43,4 +41,6 @@ public interface SchisandraShareDetailDomainService {
Boolean updateDetailLikes(String id,Boolean isLike);
List<SchisandraShareDetailBO> queryAllDetails();
Long getDetailsCommentCount(String detailId);
}

View File

@@ -14,10 +14,14 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import static com.schisandra.share.common.enums.TypeName.getByType;
/**
* 分享详情表 领域service实现了
*
@@ -70,7 +74,7 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
@Transactional
@Override
public List<SchisandraShareDetailBO> list(String circleId,String userId) {
public List<SchisandraShareDetailBO> list(String circleId, String userId) {
List<SchisandraShareDetail> schisandraShareDetails = schisandraShareDetailService.queryByCircleId(circleId);
List<SchisandraShareDetailBO> shareDetailBOList = SchisandraShareDetailBOConverter.INSTANCE.convertEntityToBOList(schisandraShareDetails);
LinkedList<SchisandraShareDetailBO> resultList = new LinkedList<>();
@@ -79,7 +83,7 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
SchisandraShareDetailBO schisandraShareDetailBO = new SchisandraShareDetailBO();
SchisandraUserLikesComment schisandraUserLikesComment =
schisandraUserLikesCommentService.queryByuserIdAndCommentId(shareDetailBO.getId(), userId);
if(schisandraUserLikesComment!=null){
if (schisandraUserLikesComment != null) {
schisandraShareDetailBO.setIsLike(true);
}
schisandraShareDetailBO.setCircleId(shareDetailBO.getCircleId());
@@ -106,17 +110,17 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
}
@Override
public SchisandraShareDetailBO getDetailsById2(String Id,String userId) {
public SchisandraShareDetailBO getDetailsById(String Id, String userId) {
SchisandraShareDetail schisandraShareDetails = schisandraShareDetailService.queryById(Id);
SchisandraShareDetailBO schisandraShareDetailBO = SchisandraShareDetailBOConverter.INSTANCE.convertEntityToBO(schisandraShareDetails);
SchisandraUserFavorites schisandraUserFavorites = schisandraUserFavoritesService.selectFavor(Id, userId);
if(schisandraUserFavorites!=null){
if (schisandraUserFavorites != null) {
schisandraShareDetailBO.setIsFavor(true);
}
SchisandraUserLikesDetail schisandraUserLikesDetail = schisandraUserLikesDetailService.selectLike(Id, userId);
if(schisandraUserLikesDetail!=null){
if (schisandraUserLikesDetail != null) {
schisandraShareDetailBO.setIsLike(true);
}
@@ -142,35 +146,6 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
return schisandraShareDetailBO;
}
@Override
public SchisandraShareDetailBO getDetailsById(String 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);
Assert.notNull(schisandraShareUrlDetailBOS.stream().map(SchisandraShareUrlDetailBO::getUrlId).collect(Collectors.toList()), "分享链接为空");
List<String> 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<String> 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;
}
@Override
public Boolean addDetail(SchisandraShareDetailBO schisandraShareDetailBO) {
SchisandraShareDetail schisandraShareDetail = SchisandraShareDetailBOConverter.INSTANCE.convertBOToEntity(schisandraShareDetailBO);
@@ -186,10 +161,23 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
schisandraShareDetailTagService.insert(schisandraShareDetailTag);
}
List<SchisandraShareUrlBO> urls_list = schisandraShareDetailBO.getUrls();
List<SchisandraShareUrl> urls = SchisandraShareUrlBOConverter.INSTANCE.convertBOToEntityList(urls_list);
schisandraShareUrlService.insertBatch(urls);
ArrayList<SchisandraShareUrl> newUrls = new ArrayList<>();
urls.forEach(url -> {
SchisandraShareUrl schisandraShareUrl = new SchisandraShareUrl();
schisandraShareUrl.setUrl(url.getUrl());
schisandraShareUrl.setDescription(url.getDescription());
schisandraShareUrl.setType(url.getType());
if (url.getPassword() == null) {
schisandraShareUrl.setPassword("");
}
schisandraShareUrl.setPassword(url.getPassword());
schisandraShareUrl.setTypeName(Objects.requireNonNull(getByType(url.getType())).typeName);
newUrls.add(schisandraShareUrl);
});
int insertBatch = schisandraShareUrlService.insertBatch(newUrls);
assert insertBatch > 0;
for (SchisandraShareUrl url : urls) {
SchisandraShareUrlDetail schisandraShareUrlDetail = new SchisandraShareUrlDetail();
schisandraShareUrlDetail.setUrlId(url.getId());
@@ -264,4 +252,10 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe
List<SchisandraShareDetailBO> shareDetailBOList = SchisandraShareDetailBOConverter.INSTANCE.convertEntityToBOList(schisandraShareDetails);
return shareDetailBOList;
}
@Override
public Long getDetailsCommentCount(String detailId) {
Long count = schisandraShareDetailService.getDetailsCommentCount(detailId);
return count;
}
}

View File

@@ -75,4 +75,6 @@ public interface SchisandraShareDetailService {
List<SchisandraShareDetail> queryAllDeatiles();
List<SchisandraShareDetail> queryByIds(List<String> Ids);
Long getDetailsCommentCount(String detailId);
}

View File

@@ -1,5 +1,6 @@
package com.schisandra.share.infra.basic.service.impl;
import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.core.update.UpdateWrapper;
import com.mybatisflex.core.util.UpdateEntity;
import com.schisandra.share.infra.basic.dao.SchisandraShareDetailDao;
@@ -142,6 +143,14 @@ public class SchisandraShareDetailServiceImpl implements SchisandraShareDetailSe
return this.schisandraShareDetailDao.selectListByIds(ids);
}
@Override
public Long getDetailsCommentCount(String detailId) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.select(SchisandraShareDetailTableDef.SCHISANDRA_SHARE_DETAIL.COMMENT_COUNT).from(SchisandraShareDetailTableDef.SCHISANDRA_SHARE_DETAIL).where(SchisandraShareDetailTableDef.SCHISANDRA_SHARE_DETAIL.ID.eq(detailId));
return this.schisandraShareDetailDao.selectOneByQueryAs(queryWrapper, Long.class);
}
@Override
public List<SchisandraShareDetail> queryAllDeatiles() {
return schisandraShareDetailDao.selectAll();

View File

@@ -1,8 +1,7 @@
package com.schisandra.share.infra.basic.service.impl;
import com.schisandra.share.common.enums.TypeName;
import com.schisandra.share.infra.basic.entity.SchisandraShareUrl;
import com.schisandra.share.infra.basic.dao.SchisandraShareUrlDao;
import com.schisandra.share.infra.basic.entity.SchisandraShareUrl;
import com.schisandra.share.infra.basic.service.SchisandraShareUrlService;
import org.springframework.stereotype.Service;
@@ -51,7 +50,7 @@ public class SchisandraShareUrlServiceImpl implements SchisandraShareUrlService
*/
@Override
public int update(SchisandraShareUrl schisandraShareUrl) {
return this.schisandraShareUrlDao.update(schisandraShareUrl,true);
return this.schisandraShareUrlDao.update(schisandraShareUrl, true);
}
/**
@@ -72,11 +71,6 @@ public class SchisandraShareUrlServiceImpl implements SchisandraShareUrlService
@Override
public int insertBatch(List<SchisandraShareUrl> schisandraShareUrls) {
for (SchisandraShareUrl schisandraShareUrl : schisandraShareUrls) {
if(schisandraShareUrl.getTypeName()!=null){
schisandraShareUrl.setTypeName(String.valueOf(TypeName.getByType(schisandraShareUrl.getTypeName())));
}else continue;
}
return this.schisandraShareUrlDao.insertBatch(schisandraShareUrls);
}