From ca054d1db9256bc8d367486b0d78e89cd4fd7fdb Mon Sep 17 00:00:00 2001 From: zqy <2522236926@qq.com> Date: 星期二, 22 十月 2024 20:41:10 +0800 Subject: [PATCH] 删除时会连着分享和下载的数据一起删掉 --- zhang-content/src/main/java/com/ruoyi/service/impl/ZIdeaShareServiceImpl.java | 50 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 47 insertions(+), 3 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZIdeaShareServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZIdeaShareServiceImpl.java index 48ab898..b80f54a 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZIdeaShareServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZIdeaShareServiceImpl.java @@ -5,19 +5,22 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.EsModel; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.MapUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.domain.*; import com.ruoyi.mapper.ZfShareMapper; +import com.ruoyi.service.*; import com.ruoyi.service.ZIdeaShareService; -import com.ruoyi.service.ZInfoUserService; -import com.ruoyi.service.ZIdeaService; -import com.ruoyi.service.ZIdeaShareService; +import org.elasticsearch.action.delete.DeleteRequest; +import org.elasticsearch.client.RequestOptions; +import org.elasticsearch.client.RestHighLevelClient; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -33,6 +36,12 @@ private ZfShareMapper zfShareMapper; @Resource private ZInfoUserService zInfoUserService; + + @Resource + private RestHighLevelClient restHighLevelClient; + + @Resource + EsService esService; private LambdaQueryWrapper<ZfShare> uniqueCondition(ZfShare zfShare) { LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); @@ -197,5 +206,40 @@ return AjaxResult.success(zInfoUsers); } + @Override + public Boolean deleteByContentId(Long[] ids) { + List<Long> id = new ArrayList<>(); + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.in(ids != null, ZfShare::getShareContent, ids) + .eq(ZfShare::getSysMenuId, 2027L); + + List<ZfShare> zfShares = list(lqw); + if (zfShares.size() == 0) { + return true; + } + for (ZfShare zfShare : zfShares) { + id.add(zfShare.getId()); + } + + System.out.println(id); + if (removeByIds(id)) { + //鍒犻櫎es涓殑鏁版嵁 + zfShares.forEach(zfDoctorDownload -> { + EsModel esModel = esService.findByCtId(zfDoctorDownload.getId().intValue(), "涓汉璐骇鍒嗕韩鍒犻櫎"); + if (esModel != null) { + DeleteRequest deleteRequest = new DeleteRequest("allsearchdata", esModel.getId()); + System.out.println(deleteRequest); + try { + restHighLevelClient.delete(deleteRequest, RequestOptions.DEFAULT); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + }); + return true; + } else { + return false; + } + } } -- Gitblit v1.9.1