From 944a01d60ffd53ca3a3b87ccfcaedc096219aba2 Mon Sep 17 00:00:00 2001 From: whywhyo <1511349576@qq.com> Date: 星期日, 17 九月 2023 23:42:47 +0800 Subject: [PATCH] 77777 --- zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactServiceImpl.java | 99 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 95 insertions(+), 4 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactServiceImpl.java index 171b379..ddfe5d6 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactServiceImpl.java @@ -5,6 +5,7 @@ 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; @@ -18,16 +19,18 @@ import com.ruoyi.service.ZfContactService; import com.ruoyi.util.ArraysUtil; import lombok.extern.slf4j.Slf4j; +import org.elasticsearch.action.delete.DeleteRequest; +import org.elasticsearch.action.update.UpdateRequest; +import org.elasticsearch.client.RequestOptions; +import org.elasticsearch.client.RestHighLevelClient; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; +import java.io.IOException; import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; import static com.ruoyi.constant.MenuAuthority.*; @@ -51,6 +54,12 @@ @Resource ZAuthorityService zAuthorityService; + + @Resource + EsService esService; + + @Resource + RestHighLevelClient restHighLevelClient; private LambdaQueryWrapper<ZfContact> buildCondition(ZfContact zfContact,List<Long> familyIdList) { @@ -353,6 +362,21 @@ } if (save(zfContact)) { + + EsModel esModel = new EsModel(); + Integer inte = zfContact.getId().intValue(); + String uuid = UUID.randomUUID().toString().replace("-",""); + esModel.setId(uuid); + esModel.setCtId(Long.valueOf(inte)); + esModel.setCtTableName("閫氳褰�"); + esModel.setBy1(zfContact.getMyName()); + esModel.setBy2(zfContact.getNickName()); + esModel.setBy3(zfContact.getName()); + esModel.setBy4(zfContact.getWork()); + esModel.setBy5("/family/zfContact"); + esModel.setRemark(zfContact.getRemark()); + //杩欓噷瀛樺偍鏌ヨ璇︽儏鐨勮矾寰� + esService.insertTable(esModel); return AjaxResult.success(); } else { return AjaxResult.error(); @@ -458,6 +482,60 @@ zfLogService.save(zfLog); if(updateById(zfContact)){ + //鍒版暟鎹簱涓煡璇㈠搴旂殑鏁版嵁 + ZfContact dataById = getById(zfContact.getId()); + + //鍏堝埌es涓煡璇㈠埌瀵瑰簲閭f潯鏁版嵁鍦╡s鐨刬d + EsModel esResult = esService.findByCtId(dataById.getId().intValue(), "閫氳褰�"); + + //鎿嶄綔es淇敼鏁版嵁 + EsModel newModel = new EsModel(); + if(zfContact.getMyName()!=null){ + newModel.setBy1(zfContact.getMyName()); + }else { + newModel.setBy1(dataById.getMyName()); + } + + if(zfContact.getNickName()!=null){ + newModel.setBy2(zfContact.getNickName()); + }else { + newModel.setBy2(dataById.getNickName()); + } + + if(zfContact.getName()!=null){ + newModel.setBy3(zfContact.getName()); + }else { + newModel.setBy3(dataById.getName()); + } + + if(zfContact.getWork()!=null){ + newModel.setBy4(zfContact.getWork()); + }else { + newModel.setBy4(dataById.getWork()); + } + + if(zfContact.getRemark()!=null){ + newModel.setRemark(zfContact.getRemark()); + }else { + newModel.setRemark(dataById.getRemark()); + } + + + UpdateRequest updateRequest = new UpdateRequest("allsearchdata", esResult.getId()); + updateRequest.doc( + "by1",newModel.getBy1(), + "by2",newModel.getBy2(), + "by3",newModel.getBy3(), + "by4",newModel.getBy4(), + "remark",newModel.getRemark() + ); + + try { + restHighLevelClient.update(updateRequest, RequestOptions.DEFAULT); + } catch (IOException e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); }else { return AjaxResult.error(); @@ -481,7 +559,20 @@ } } + List<ZfContact> zfContacts = listByIds(Arrays.asList(ids)); + if (zfContactService.removeByIds(Arrays.asList(ids))) { + + //鍒犻櫎es涓殑鏁版嵁 + zfContacts.stream().forEach(zfContact -> { + EsModel esModel = esService.findByCtId(zfContact.getId().intValue(), "閫氳褰�"); + DeleteRequest deleteRequest = new DeleteRequest("allsearchdata", esModel.getId()); + try { + restHighLevelClient.delete(deleteRequest,RequestOptions.DEFAULT); + } catch (IOException e) { + throw new RuntimeException(e); + } + }); return AjaxResult.success(); }else { return AjaxResult.error(); -- Gitblit v1.9.1