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/ZfEventServiceImpl.java | 129 +++++++++++++++++++++++++++++++++--------- 1 files changed, 100 insertions(+), 29 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEventServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEventServiceImpl.java index e3688dd..d6f18db 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEventServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEventServiceImpl.java @@ -1,6 +1,7 @@ package com.ruoyi.service.impl; +import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -18,11 +19,18 @@ import com.ruoyi.service.*; 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.data.elasticsearch.core.ElasticsearchRestTemplate; +import org.springframework.security.core.parameters.P; 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.*; import java.util.stream.Collectors; @@ -51,7 +59,10 @@ ZAuthorityService zAuthorityService; //鍔犲叆鍒癳s涓� @Resource - private esService esSer; + private EsService esSer; + + @Resource + private RestHighLevelClient restHighLevelClient; private LambdaQueryWrapper<ZfEvent> buildCondition(ZfEvent zfEvent,List<Long> familyIdList) { LambdaQueryWrapper<ZfEvent> lqw = new LambdaQueryWrapper<>(); lqw.orderByDesc(ZfEvent::getCreateTime); @@ -313,26 +324,26 @@ @Override public AjaxResult addData(ZfEvent zfEvent) { -// ZInfoUser myself = zInfoUserService.getMyself(); -// Long familyId = myself.getFamilyId(); -// -// if(familyId == null){ -// throw new RuntimeException("鎮ㄨ繕鏈姞鍏ヤ换浣曞搴�"); -// } -// -// List<ZAuthority> authority = zAuthorityService.getAuthority(); -// List<Long> familyIdList = authority.stream().filter(auth -> auth.getAuthority().toString().equals(EVENT_LIST_ADD)).map(ZAuthority::getFid).collect(Collectors.toList()); -// familyIdList.add(familyId); -// -// if (zfEvent.getFamilyId()!=null && !familyIdList.contains(zfEvent.getFamilyId())) { -// throw new RuntimeException("浣犳病鏈夋潈闄愭搷浣滄瀹跺涵鐨勬暟鎹�"); -// } -// -// -// if(zfEvent.getFamilyId() == null){ -// //榛樿娣诲姞鑷繁瀹跺涵鐨勬暟鎹� -// zfEvent.setFamilyId(familyId); -// } + ZInfoUser myself = zInfoUserService.getMyself(); + Long familyId = myself.getFamilyId(); + + if(familyId == null){ + throw new RuntimeException("鎮ㄨ繕鏈姞鍏ヤ换浣曞搴�"); + } + + List<ZAuthority> authority = zAuthorityService.getAuthority(); + List<Long> familyIdList = authority.stream().filter(auth -> auth.getAuthority().toString().equals(EVENT_LIST_ADD)).map(ZAuthority::getFid).collect(Collectors.toList()); + familyIdList.add(familyId); + + if (zfEvent.getFamilyId()!=null && !familyIdList.contains(zfEvent.getFamilyId())) { + throw new RuntimeException("浣犳病鏈夋潈闄愭搷浣滄瀹跺涵鐨勬暟鎹�"); + } + + + if(zfEvent.getFamilyId() == null){ + //榛樿娣诲姞鑷繁瀹跺涵鐨勬暟鎹� + zfEvent.setFamilyId(familyId); + } //鍒ゆ柇鏄惁鏈夐噸澶嶆暟鎹� LambdaQueryWrapper<ZfEvent> lqw = uniqueCondition(zfEvent); @@ -343,20 +354,18 @@ } if (save(zfEvent)) { - // 椋� 鍔犲叆 EsModel esModel = new EsModel(); Integer inte = zfEvent.getId(); String uuid = UUID.randomUUID().toString().replace("-",""); esModel.setId(uuid); esModel.setCtId(Long.valueOf(inte)); - esModel.setCtName(zfEvent.getTitle()); - esModel.setCtContent(zfEvent.getAddress()); - esModel.setBy1(zfEvent.getRemark()); + esModel.setCtTableName("瀹跺ぇ浜嬭"); + esModel.setBy1(zfEvent.getAddress()); + esModel.setBy2(zfEvent.getPeople()); + esModel.setBy3(zfEvent.getTitle()); + esModel.setRemark(zfEvent.getRemark()); //杩欓噷瀛樺偍鏌ヨ璇︽儏鐨勮矾寰� esModel.setBy5("/family/zfEvent"); - // esModel.setCtTableName("tb_ajk"); - // esModel.setCtName("澶у"); - // esModel.setCtContent("澶у濂斤紝鎵嶆槸鐪熺殑濂�");//澶勪簨鐢� esSer.insertTable(esModel); return AjaxResult.success(); @@ -425,6 +434,7 @@ ZfLogService zfLogService; @Override + @Transactional public AjaxResult updateData(ZfEvent zfEvent) { ZInfoUser myself = zInfoUserService.getMyself(); Long familyId = myself.getFamilyId(); @@ -447,7 +457,54 @@ zfLog.setUpdater(zInfoUserService.getMyself().getNickName()); zfLogService.save(zfLog); - if(updateById(zfEvent)){ + if(zfEventService.updateById(zfEvent)){ + //鍒版暟鎹簱涓煡璇㈠搴旂殑鏁版嵁 + ZfEvent dataById = getById(zfEvent.getId()); + + //鍏堝埌es涓煡璇㈠埌瀵瑰簲閭f潯鏁版嵁鍦╡s鐨刬d + EsModel esResult = esSer.findByCtId(dataById.getId(), "瀹跺ぇ浜嬭"); + + //鎿嶄綔es淇敼鏁版嵁 + EsModel newModel = new EsModel(); + if(zfEvent.getAddress()!=null){ + newModel.setBy1(zfEvent.getAddress()); + }else { + newModel.setBy1(dataById.getAddress()); + } + + if(zfEvent.getPeople()!=null){ + newModel.setBy2(zfEvent.getPeople()); + }else { + newModel.setBy2(dataById.getPeople()); + } + + if(zfEvent.getTitle()!=null){ + newModel.setBy3(zfEvent.getTitle()); + }else { + newModel.setBy3(dataById.getTitle()); + } + + if(zfEvent.getRemark()!=null){ + newModel.setRemark(zfEvent.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(); @@ -472,7 +529,21 @@ } } + List<ZfEvent> zfEvents = listByIds(Arrays.asList(ids)); + if (zfEventService.removeByIds(Arrays.asList(ids))) { + + //鍒犻櫎es涓殑鏁版嵁 + zfEvents.stream().forEach(zfEvent -> { + EsModel esModel = esSer.findByCtId(zfEvent.getId(), "瀹跺ぇ浜嬭"); + 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