From 5be62132d4654e16be0bcc7c1ab1304a307ada5c Mon Sep 17 00:00:00 2001 From: zqy <2522236926@qq.com> Date: 星期一, 05 八月 2024 20:17:40 +0800 Subject: [PATCH] 分享 --- zhang-content/src/main/java/com/ruoyi/service/impl/ZfPetSharServiceImpl.java | 188 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 187 insertions(+), 1 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfPetSharServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfPetSharServiceImpl.java index 280141b..3874756 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfPetSharServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfPetSharServiceImpl.java @@ -1,6 +1,192 @@ package com.ruoyi.service.impl; -public class ZfPetSharServiceImpl { +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.SysUser; +import com.ruoyi.common.utils.MapUtils; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.domain.*; +import com.ruoyi.mapper.ZfShareMapper; +import com.ruoyi.service.TravelDetailService; +import com.ruoyi.service.ZInfoUserService; +import com.ruoyi.service.ZfPetService; +import com.ruoyi.service.ZfPetSharService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.stream.Collectors; + +@Service +@Slf4j +public class ZfPetSharServiceImpl extends ServiceImpl<ZfShareMapper, ZfShare> implements ZfPetSharService { + + @Resource + ZfPetService zfPetService; + + @Resource + private ZInfoUserService zInfoUserService; + + private LambdaQueryWrapper<ZfShare> uniqueCondition(ZfShare zfShare) { + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.eq(StringUtils.isNotEmpty(String.valueOf(zfShare.getShareId())), ZfShare::getShareId, zfShare.getShareId()); + lqw.eq(StringUtils.isNotEmpty(String.valueOf(zfShare.getShareContent())), ZfShare::getShareContent, zfShare.getShareContent()); + lqw.eq(StringUtils.isNotEmpty(String.valueOf(zfShare.getSysMenuId())), ZfShare::getSysMenuId, zfShare.getSysMenuId()); + return lqw; + } + + @Override + public List<ZfShare> getAuthority() { + SysUser user = SecurityUtils.getLoginUser().getUser(); + Long userId = user.getUserId(); + + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.eq(ZfShare::getShareId,userId); + + return list(lqw); + } + + public Long getUserId(){ + ZInfoUser myself = zInfoUserService.getMyself(); + return myself.getUserId(); + + } + + public void addData(ZfShare za) + { + LambdaQueryWrapper<ZfShare> lqw = uniqueCondition(za); + List<ZfShare> list = list(lqw); + + if(list.size()>0){ + throw new RuntimeException("璇峰嬁鍒嗕韩閲嶅鏁版嵁"); + } + else { + save(za); + } + + } + + @Override + public AjaxResult saveZa(ShareMore shareMore) { + Long [] shareIds = shareMore.getShareIds(); + Long [] shareContents = shareMore.getShareContents(); + for (Long shareId : shareIds) { + for (Long shareContent : shareContents) { + ZfShare za = new ZfShare(); + za.setUserId(getUserId()); + za.setShareContent(shareContent); + za.setShareId(shareId); + za.setSysMenuId(2022L); + addData(za); + } + } + // Long [] + // if(bl) + return AjaxResult.success("鍒嗕韩鎴愬姛!"); + } + + @Override + public AjaxResult listByFidAid(ShareMore shareMore, Integer pageNo, Integer pageSize) { + Long [] shareIds = shareMore.getShareIds(); + List<ZfPet> beanRecord3 = new ArrayList<>(); + for (Long shareId : shareIds) { + { + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.eq(ZfShare::getShareId,shareId) + .eq(ZfShare::getSysMenuId,shareMore.getSysMenuId()) + .eq(ZfShare::getUserId, getUserId()); + List<ZfShare> beanRecords = list(lqw); + for (ZfShare beanRecord : beanRecords ) { + beanRecord3.add(zfPetService.getById(beanRecord.getShareContent())); + } + } + } + List<ZfPet> record = beanRecord3.stream().skip((pageNo-1)*pageSize).limit(pageSize).collect(Collectors.toList()); + + int totalPage = (beanRecord3.size() -1) / pageSize +1; + + Page<ZfPet> zfPetPage = new Page<>(pageNo, pageSize,totalPage); + HashMap<String, Object> data = MapUtils.getShareResult(zfPetPage, record,beanRecord3.size()); + + return AjaxResult.success(data); + } + + @Override + public AjaxResult deleteZa(ShareMore shareMore) { + Long [] shareIds = shareMore.getShareIds(); + Long [] shareContents = shareMore.getShareContents(); + for(Long shareId : shareIds) + for(Long shareContent: shareContents) + { + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.eq(ZfShare::getShareId,shareId) + .eq(ZfShare::getShareContent, shareContent) + .eq(ZfShare::getSysMenuId, shareMore.getSysMenuId()) + .eq(ZfShare::getUserId, getUserId()); + + remove(lqw); + // addData(za); + } + return AjaxResult.success("鏁版嵁鏀跺洖鎴愬姛!"); + } + + @Override + public AjaxResult listByUserId() { + HashMap<Long,List<ZfPet>> bs = new HashMap<>(); + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.eq(ZfShare::getShareId,getUserId()); + lqw.eq(ZfShare::getSysMenuId,2022L); + List<ZfShare> beanRecords = list(lqw); + List<ZfPet> b1 = new ArrayList<>(); + for (ZfShare beanRecord : beanRecords ) { + b1.add(zfPetService.getById(beanRecord.getShareContent())); + bs.put(beanRecord.getUserId(),b1); + } + log.info("浠庢暟鎹簱涓煡鍒扮殑涓�:{}", bs); + return AjaxResult.success(bs); + } + + @Override + public AjaxResult listUserId(Integer pageNo, Integer pageSize) { + List<ZfPet> bs = new ArrayList<>(); + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.eq(ZfShare::getShareId,getUserId()); + lqw.eq(ZfShare::getSysMenuId,2022L); + List<ZfShare> beanRecords = list(lqw); + for (ZfShare beanRecord : beanRecords ) { + ZfPet bs2 = zfPetService.getById(beanRecord.getShareContent()); + bs2.setShareId(beanRecord.getUserId().intValue()); + bs.add(bs2); + } + log.info("浠庢暟鎹簱涓煡鍒扮殑涓�:{}", bs); + List<ZfPet> record = bs.stream().skip((pageNo-1)*pageSize).limit(pageSize).collect(Collectors.toList()); + + int totalPage = (bs.size() -1) / pageSize +1; + + Page<ZfPet> zfPetPage = new Page<>(pageNo, pageSize,totalPage); + HashMap<String, Object> data = MapUtils.getShareResult(zfPetPage, record,bs.size()); + return AjaxResult.success(data); + } + + @Override + public Long getShareId(ZfDownload zfDownload) { + LambdaQueryWrapper<ZfShare> lqw = new LambdaQueryWrapper<>(); + lqw.eq(ZfShare::getShareId, zfDownload.getDownloadId()) + .eq(ZfShare::getShareContent, zfDownload.getDownloadContent()) + .eq(ZfShare::getSysMenuId, zfDownload.getSysMenuId()); + List<ZfShare> beanRecords = list(lqw); + if (beanRecords.size() != 0){ + return beanRecords.get(0).getUserId(); + } + else { + return null; + } + } } -- Gitblit v1.9.1