From 0ba11af53ae1f4bc8ce16417fa9c56ac4f1b032c Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期三, 30 七月 2025 18:30:18 +0800
Subject: [PATCH] 会员判断
---
zhang-content/src/main/java/com/ruoyi/service/impl/ZfCollectionDownlServiceImpl.java | 154 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 153 insertions(+), 1 deletions(-)
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfCollectionDownlServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfCollectionDownlServiceImpl.java
index 8d35dfe..2120092 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfCollectionDownlServiceImpl.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfCollectionDownlServiceImpl.java
@@ -1,4 +1,156 @@
package com.ruoyi.service.impl;
-public class ZfCollectionShareServiceImpl {
+
+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 ZfCollectionDownlServiceImpl extends ServiceImpl<ZfDownloadMapper, ZfDownload> implements ZfCollectionDownloadService {
+ @Resource
+ EsService esService;
+
+ @Resource
+ ZfCollectionShareService zfCollectionShareService;
+
+ @Resource
+ ZfCollectionService zfCollectionService;
+
+
+ @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(zfCollectionShareService.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, 2018L);
+
+ List<ZfDownload> zfDownloads = list(lqw);
+ System.out.println(zfDownloads);
+ if (zfDownloads.size() == 0){
+ return true;
+ }
+ for (ZfDownload zfDownload: zfDownloads) {
+ id.add(zfDownload.getId());
+ }
+ 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<ZfCollection> bs = new ArrayList<>();
+ for (ZfDownload a: beanRecords) {
+ if (zfCollectionService.getById(a.getDownloadContent()) != null) {
+ ZfCollection ds = zfCollectionService.getById(a.getDownloadContent());
+ ds.setShareId(a.getShareId().intValue());
+ bs.add(ds);
+ }
+ }
+ List<ZfCollection> record = bs.stream().skip((pageNo-1)*pageSize).limit(pageSize).collect(Collectors.toList());
+
+ int totalPage = (bs.size() -1) / pageSize +1;
+
+ Page<ZfCollection> zfCollectionPage = new Page<>(pageNo, pageSize,totalPage);
+ HashMap<String, Object> data = MapUtils.getShareResult(zfCollectionPage, record,bs.size());
+ return AjaxResult.success(data);
+ }
+
}
--
Gitblit v1.9.1