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/ZfContactDownlServiceImpl.java | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 157 insertions(+), 1 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactDownlServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactDownlServiceImpl.java index 568f860..8c1a2e1 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactDownlServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfContactDownlServiceImpl.java @@ -1,2 +1,158 @@ -package com.ruoyi.service.impl;public class ZfContactDownlService { + +package com.ruoyi.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +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.utils.MapUtils; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.domain.*; +import com.ruoyi.mapper.ZfDownloadMapper; +import com.ruoyi.mapper.ZfShareMapper; +import com.ruoyi.service.*; +import lombok.extern.slf4j.Slf4j; +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.*; +import java.util.stream.Collectors; + +@Service +@Slf4j +public class ZfContactDownlServiceImpl extends ServiceImpl<ZfDownloadMapper, ZfDownload> implements ZfContactDownlService { + @Resource + EsService esService; + + @Resource + ZfContactShraServiceImpl zfContactShraService; + + @Resource + ZfContactService zfContactService; + + + @Resource + ZInfoUserService zInfoUserService; + + @Resource + private RestHighLevelClient restHighLevelClient; + + private LambdaQueryWrapper<ZfDownload> buildCondition(ZfDownload zfDownload, Long userId) { + LambdaQueryWrapper<ZfDownload> lqw = new LambdaQueryWrapper<>(); + lqw.in(ZfDownload::getDownloadId,userId); + lqw.orderByDesc(ZfDownload::getDownloadId); + lqw.like(zfDownload.getDownloadId() != null, ZfDownload::getDownloadId, zfDownload.getDownloadId()) + .like(zfDownload.getDownloadContent() != null, ZfDownload::getDownloadContent, zfDownload.getDownloadContent()) + .eq( ZfDownload::getSysMenuId, zfDownload.getSysMenuId()); + return lqw; + } + private LambdaQueryWrapper<ZfDownload> uniqueCondition(ZfDownload zfDownload) { + LambdaQueryWrapper<ZfDownload> lqw = new LambdaQueryWrapper<>(); + lqw.eq(StringUtils.isNotEmpty(String.valueOf(zfDownload.getDownloadId())), ZfDownload::getDownloadId, zfDownload.getDownloadId()) + .eq(StringUtils.isNotEmpty(String.valueOf(zfDownload.getDownloadContent())), ZfDownload::getDownloadContent, zfDownload.getDownloadContent()) + .eq(ZfDownload::getSysMenuId, zfDownload.getSysMenuId()); + return lqw; + } + + public Long getUserId() { + ZInfoUser myself = zInfoUserService.getMyself(); + return myself.getUserId(); + } + @Override + public AjaxResult addData(ZfDownload zfDownload) { + zfDownload.setDownloadId(getUserId()); + LambdaQueryWrapper<ZfDownload> lqw = uniqueCondition(zfDownload); + List<ZfDownload> list = list(lqw); + if (list.size() > 0) { + throw new RuntimeException("璇峰嬁閲嶅涓嬭浇鏁版嵁"); + } + + zfDownload.setDownloadId(getUserId()); + zfDownload.setShareId(zfContactShraService.getShareId(zfDownload)); + if (save(zfDownload)) { + EsModel esModel = new EsModel(); + Integer inte = zfDownload.getId().intValue(); + String uuid = UUID.randomUUID().toString().replace("-", ""); + esModel.setId(uuid); + esModel.setCtId(Long.valueOf(inte)); + esModel.setCtTableName("閫氳褰�"); + + esModel.setBy1(String.valueOf(zfDownload.getDownloadId())); + esModel.setBy2(String.valueOf(zfDownload.getDownloadContent())); + esModel.setBy3(String.valueOf(zfDownload.getShareId())); + //杩欓噷瀛樺偍鏌ヨ璇︽儏鐨勮矾寰� + esService.insertTable(esModel); + return AjaxResult.success(); + } else { + return AjaxResult.error(); + } + } + + @Override + public Boolean deleteData(Long[] ids) { + List<Long> id = new ArrayList<>(); + + LambdaQueryWrapper<ZfDownload> lqw = new LambdaQueryWrapper<>(); + lqw.in(ids != null, ZfDownload::getDownloadContent, ids) + .eq(ZfDownload::getSysMenuId, 2021L); + + List<ZfDownload> zfDownloads = list(lqw); + System.out.println(zfDownloads); + if (zfDownloads.size() == 0){ + return true; + } + for (ZfDownload zfDownload: zfDownloads) { + id.add(zfDownload.getId()); + } + + System.out.println(id); + + if (removeByIds(id)) { + + //鍒犻櫎es涓殑鏁版嵁 + zfDownloads.stream().forEach(zfDoctorDownload -> { + EsModel esModel = esService.findByCtId(zfDoctorDownload.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); + } + } + }); + return true; + } else { + return false; + } + } + + @Override + public AjaxResult selectDoctorList(ZfDownload zfDownload, Integer pageNo, Integer pageSize) { + ZInfoUser myself = zInfoUserService.getMyself(); + LambdaQueryWrapper<ZfDownload> lqw = buildCondition(zfDownload,myself.getUserId()); + List<ZfDownload> beanRecords = list(lqw); + List<ZfContact> bs = new ArrayList<>(); + for (ZfDownload a: beanRecords) { + if (zfContactService.getById(a.getDownloadContent()) != null) { + ZfContact ds = zfContactService.getById(a.getDownloadContent()); + ds.setShareId(a.getShareId().intValue()); + bs.add(ds); + } + } + List<ZfContact> record = bs.stream().skip((pageNo-1)*pageSize).limit(pageSize).collect(Collectors.toList()); + + int totalPage = (bs.size() -1) / pageSize +1; + + Page<ZfContact> zfContactPage = new Page<>(pageNo, pageSize,totalPage); + HashMap<String, Object> data = MapUtils.getShareResult(zfContactPage, record,bs.size()); + return AjaxResult.success(data); + } + } -- Gitblit v1.9.1