From b02beccf4567068cb47a3f1181a00039456c872d Mon Sep 17 00:00:00 2001 From: zqy <2522236926@qq.com> Date: 星期三, 06 八月 2025 15:37:20 +0800 Subject: [PATCH] 用户修改姓名和电话同步修改uaid --- zhang-content/src/main/java/com/ruoyi/service/impl/IZfPropertyServiceImpl.java | 210 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 193 insertions(+), 17 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/IZfPropertyServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/IZfPropertyServiceImpl.java index 4c460e2..9fffd7f 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/IZfPropertyServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/IZfPropertyServiceImpl.java @@ -1,30 +1,30 @@ package com.ruoyi.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.SysUser; +import com.ruoyi.common.core.domain.entity.EsModel; + import com.ruoyi.common.utils.MapUtils; -import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; -import com.ruoyi.common.utils.bean.BeanUtils; import com.ruoyi.common.utils.poi.ExcelUtil; -import com.ruoyi.constant.MenuAuthority; import com.ruoyi.domain.*; import com.ruoyi.mapper.ZfPropertyMapper; -import com.ruoyi.service.IZfPropertyService; -import com.ruoyi.service.ZAuthorityService; -import com.ruoyi.service.ZInfoUserService; -import com.ruoyi.util.ArraysUtil; +import com.ruoyi.service.*; 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.text.ParseException; -import java.text.SimpleDateFormat; +import java.io.IOException; +import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @@ -51,6 +51,21 @@ @Resource ZfPropertyMapper zfPropertyMapper; + + @Resource + EsService esService; + + @Resource + RestHighLevelClient restHighLevelClient; + + @Resource + private IZfPropertyDownloadService zfPropertyDownloadService; + + @Resource + private IZfPropertyShareService iZfPropertyShareService; + + @Resource + private MemoBookService memoBookService; // private LambdaQueryWrapper<ZfProperty> buildCondition(ZfProperty zfProperty) { @@ -80,7 +95,6 @@ .in(ZfProperty::getFamilyId,familyIdList) .eq(zfProperty.getHappenTime()!=null,ZfProperty::getHappenTime,zfProperty.getHappenTime()) .between(zfProperty.getHappenStartTime() != null && zfProperty.getHappenEndTime() != null, ZfProperty::getHappenTime, zfProperty.getHappenStartTime(), zfProperty.getHappenEndTime()); - lqw.orderByDesc(ZfProperty::getCreateTime); return lqw; @@ -212,17 +226,35 @@ //瑕佹煡鑷繁瀹跺涵鐨� ZInfoUser myself = zInfoUserService.getMyself(); Long familyId = myself.getFamilyId(); + + //鏌ョ湅鐖舵瘝瀹跺涵鐨勬暟鎹� + Long fatherFaId = 0L; + if(myself.getFatherId()!=null) + fatherFaId = zInfoUserService.getInfoById(myself.getFatherId()).getFamilyId(); + Long motherFaId = 0L; + if(myself.getMomId()!=null) + motherFaId = zInfoUserService.getInfoById(myself.getMomId()).getFamilyId(); + //涔熻鏌ュ埆浜烘巿鏉冪殑 List<ZAuthority> authority = zAuthorityService.getAuthority(); List<Long> idList = authority.stream().filter(auth -> auth.getAuthority().toString().equals(PROPERTY_LIST)).map(ZAuthority::getFid).collect(Collectors.toList()); //鍔犱笂鑷繁瀹跺涵鐨刬d idList.add(familyId); + + //鍔犱笂鐖舵瘝瀹舵棌id + idList.add(fatherFaId); + idList.add(motherFaId); + List<Long> fms = zInfoUserService.findByUaidToFaid(myself.getUaid()).stream().map(ZInfoUser::getFamilyId).collect(Collectors.toList()); + if(!fms.isEmpty()) + { + idList.addAll(fms); + } // String familyIds = listFamilyIds(); // String secondFamilyAuthority = listSecondFamilyIds(); LambdaQueryWrapper<ZfProperty> lqw = buildCondition(zfProperty, idList); List<ZfProperty> beanRecords = list(lqw); log.info("浠庢暟鎹簱涓煡鍒扮殑涓�:{}", beanRecords); - return markOwnData(familyId, beanRecords); + return markOwnData(familyId, fatherFaId, motherFaId, beanRecords); } // private static List<ZfProperty> markOwnData(String familyIds, List<ZfProperty> beanRecords) { @@ -248,12 +280,35 @@ //瑕佹煡鑷繁瀹跺涵鐨� ZInfoUser myself = zInfoUserService.getMyself(); + if(myself==null) + { + // System.out.println("ssssss"); + return AjaxResult.success("鎮ㄦ病鍔犲叆鍒板搴旂殑瀹跺涵锛岃鑱旂郴绠$悊鍛�"); + } Long familyId = myself.getFamilyId(); //涔熻鏌ュ埆浜烘巿鏉冪殑 List<ZAuthority> authority = zAuthorityService.getAuthority(); List<Long> idList = authority.stream().filter(auth -> auth.getAuthority().toString().equals(PROPERTY_LIST)).map(ZAuthority::getFid).collect(Collectors.toList()); + + //鏌ョ湅鐖舵瘝鐨勬暟鎹細 + Long fatherFaId = 0L; + if(myself.getFatherId()!=null) + fatherFaId = zInfoUserService.getInfoById(myself.getFatherId()).getFamilyId(); + Long motherFaId = 0L; + if(myself.getMomId()!=null) + motherFaId = zInfoUserService.getInfoById(myself.getMomId()).getFamilyId(); + //鍔犱笂鑷繁瀹跺涵鐨刬d idList.add(familyId); + + //鍔犱笂鐖舵瘝瀹舵棌id + idList.add(fatherFaId); + idList.add(motherFaId); + List<Long> fms = zInfoUserService.findByUaidToFaid(myself.getUaid()).stream().map(ZInfoUser::getFamilyId).collect(Collectors.toList()); + if(!fms.isEmpty()) + { + idList.addAll(fms); + } // String familyIds = listFamilyIds(); // String secondFamilyAuthority = listSecondFamilyIds(); LambdaQueryWrapper<ZfProperty> lqw = buildCondition(zfProperty, idList); @@ -263,22 +318,22 @@ List<ZfProperty> beanRecords = pageResult.getRecords();//寰楀埌鏌ヨ鍑烘潵鐨勬暟鎹� - List<ZfProperty> dtoResult = markOwnData(familyId, beanRecords); + List<ZfProperty> dtoResult = markOwnData(familyId,fatherFaId, motherFaId, beanRecords); HashMap<String, Object> data = MapUtils.getResult(pageResult, dtoResult); return AjaxResult.success(data); } - public List<ZfProperty> markOwnData(Long familyId,List<ZfProperty> beanRecords){ + public List<ZfProperty> markOwnData(Long familyId,Long fatherFamilyId, Long motherFamilyId,List<ZfProperty> beanRecords){ return beanRecords.stream().peek( bean -> { - if (bean.getFamilyId() == familyId) { + if (Objects.equals(bean.getFamilyId(), familyId) ||(fatherFamilyId!=0L && fatherFamilyId.equals(familyId))||(motherFamilyId!=0L && motherFamilyId.equals(familyId))) { bean.setOwnData(1); } else { bean.setOwnData(0); } } - ).collect(Collectors.toList()); + ).sorted((a,b)-> b.getOwnData()-a.getOwnData()).collect(Collectors.toList()); } @Override @@ -289,6 +344,12 @@ else list = list(); return list; + } + + @Override + public AjaxResult selectType() { + List<String> lis = list(new QueryWrapper<ZfProperty>().select("distinct (type)").lambda()).stream().map(ZfProperty::getType).collect(Collectors.toList()); + return AjaxResult.success(lis); } @Override @@ -377,17 +438,40 @@ } if (save(zfProperty)) { + + EsModel esModel = new EsModel(); + Integer inte = zfProperty.getId().intValue(); + String uuid = UUID.randomUUID().toString().replace("-",""); + esModel.setId(uuid); + esModel.setCtId(Long.valueOf(inte)); + esModel.setCtTableName("瀹跺涵璧勪骇"); + esModel.setBy1(zfProperty.getType()); + esModel.setBy2(zfProperty.getTitle()); + esModel.setBy3(zfProperty.getLocation()); + esModel.setBy4(zfProperty.getHolder()); + esModel.setBy5("/family/zfProperty"); + esModel.setBy6(zfProperty.getAddress()); + esModel.setRemark(zfProperty.getRemark()); + //杩欓噷瀛樺偍鏌ヨ璇︽儏鐨勮矾寰� + esService.insertTable(esModel); + return AjaxResult.success(); } else { return AjaxResult.error(); } } + + + @Resource + ZfLogService zfLogService; + @Override public AjaxResult updateData(ZfProperty zfProperty) { ZInfoUser myself = zInfoUserService.getMyself(); - Long familyId = myself.getFamilyId(); + Long familyId = myself.getFamilyId(); + // System.out.println("sssssssssssss"); //鍏堟牴鎹甶d鏌ヨ鍑烘暟鎹殑familyId锛岀湅鐪嬫湁娌℃湁鏉冮檺鎿嶄綔 Long dataFamilyId = getById(zfProperty.getId()).getFamilyId(); @@ -399,7 +483,75 @@ throw new RuntimeException("浣犳病鏈夋潈闄愭搷浣滄瀹跺涵鐨勬暟鎹�"); } + //鎿嶄綔鍚庡姞鍏ユ棩蹇� + ZfLog zfLog = new ZfLog(); + zfLog.setUpdateTime(LocalDateTime.now()); + zfLog.setModule("瀹跺涵璧勪骇"); + zfLog.setUpdater(zInfoUserService.getMyself().getNickName()); + zfLogService.save(zfLog); + if(updateById(zfProperty)){ + //鍒版暟鎹簱涓煡璇㈠搴旂殑鏁版嵁 + ZfProperty dataById = getById(zfProperty.getId()); + //鍏堝埌es涓煡璇㈠埌瀵瑰簲閭f潯鏁版嵁鍦╡s鐨刬d + EsModel esResult = esService.findByCtId(dataById.getId().intValue(), "瀹跺涵璧勪骇"); + if (esResult == null){ + return AjaxResult.success(); + } + + //鎿嶄綔es淇敼鏁版嵁 + EsModel newModel = new EsModel(); + if(zfProperty.getType()!=null){ + newModel.setBy1(zfProperty.getType()); + }else { + newModel.setBy1(dataById.getType()); + } + + if(zfProperty.getTitle()!=null){ + newModel.setBy2(zfProperty.getTitle()); + }else { + newModel.setBy2(dataById.getTitle()); + } + + if(zfProperty.getLocation()!=null){ + newModel.setBy3(zfProperty.getLocation()); + }else { + newModel.setBy3(dataById.getLocation()); + } + + if(zfProperty.getHolder()!=null){ + newModel.setBy4(zfProperty.getHolder()); + }else { + newModel.setBy4(dataById.getHolder()); + } + + if(zfProperty.getAddress()!=null){ + newModel.setBy6(zfProperty.getAddress()); + }else { + newModel.setBy6(dataById.getAddress()); + } + + if(zfProperty.getRemark()!=null){ + newModel.setRemark(zfProperty.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(), + "by6",newModel.getBy6(), + "remark",newModel.getRemark() + ); + try { + restHighLevelClient.update(updateRequest, RequestOptions.DEFAULT); + } catch (IOException e) { + throw new RuntimeException(e); + } return AjaxResult.success(); }else { return AjaxResult.error(); @@ -423,9 +575,33 @@ if (!familyIdList.contains(data.getFamilyId())){ throw new RuntimeException("浣犳病鏈夋潈闄愭搷浣滄瀹跺涵鐨勬暟鎹�"); } + List<MemoBook> memoBookService1 = memoBookService.selectByIdAFid(data.getId().longValue(),2007L); + if (memoBookService1.size() != 0 && !memoBookService.removeByIds(memoBookService1)) + return AjaxResult.error(); + } + List<ZfProperty> zfPropertys = listByIds(Arrays.asList(ids)); + + if (! (zfPropertyDownloadService.deleteData(ids) && iZfPropertyShareService.deleteByContentId(ids))){ + return AjaxResult.error(); + } if (zfPropertyService.removeByIds(Arrays.asList(ids))) { + + //鍒犻櫎es涓殑鏁版嵁 + zfPropertys.stream().forEach(zfProperty -> { + EsModel esModel = esService.findByCtId(zfProperty.getId().intValue(), "瀹跺涵璧勪骇"); + if(esModel!=null) + { + DeleteRequest deleteRequest = new DeleteRequest("allsearchdata", esModel.getId()); + try { + restHighLevelClient.delete(deleteRequest,RequestOptions.DEFAULT); + } catch (IOException e) { + throw new RuntimeException(e); + }} + }); + System.out.println("15165132165346153246153"); + return AjaxResult.success(); }else { return AjaxResult.error(); -- Gitblit v1.9.1