package com.fdkankan.fusion.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fdkankan.fusion.common.PageInfo; import com.fdkankan.fusion.entity.CaseOverview; import com.fdkankan.fusion.entity.CaseTabulation; import com.fdkankan.fusion.entity.CommonUpload; import com.fdkankan.fusion.mapper.ICaseOverviewMapper; import com.fdkankan.fusion.request.CaseOverviewParam; import com.fdkankan.fusion.service.ICaseOverviewService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fdkankan.fusion.service.ICaseTabulationService; import com.fdkankan.fusion.service.ICommonUploadService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.HashMap; import java.util.List; import java.util.stream.Collectors; /** *

* 服务实现类 *

* * @author * @since 2025-05-13 */ @Service @Slf4j public class CaseOverviewServiceImpl extends ServiceImpl implements ICaseOverviewService { @Autowired ICaseTabulationService caseTabulationService; @Autowired ICommonUploadService commonUploadService; @Override public Object pageList(CaseOverviewParam param) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); if(StringUtils.isNotBlank(param.getTitle())){ wrapper.like(CaseOverview::getTitle,param.getTitle()); } wrapper.orderByDesc(CaseOverview::getId); Page page = this.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper); List collect = page.getRecords().stream().map(CaseOverview::getListCover).filter(StringUtils::isNotBlank).collect(Collectors.toList()); HashMap map = commonUploadService.getByUrls(collect); for (CaseOverview record : page.getRecords()) { CommonUpload commonUpload = map.get(record.getListCover()); if(commonUpload != null){ record.setFileDir(commonUpload.getUnzipPath()); } } return PageInfo.PageInfo(page); } @Override public List getByCaseId(String caseId) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(CaseOverview::getCaseId,caseId); wrapper.orderByDesc(CaseOverview::getId); return this.list(wrapper); } @Override public void updateTitleById(Integer overviewId, String filesTitle) { LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); wrapper.eq(CaseOverview::getId,overviewId); wrapper.set(CaseOverview::getTitle,filesTitle); this.update(wrapper); } @Override public void updateListCoverById(Integer overviewId, String listCover) { LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); wrapper.eq(CaseOverview::getId,overviewId); wrapper.set(CaseOverview::getListCover,listCover); this.update(wrapper); } @Override public CaseOverview getByNumAndSubGroup(String num, Integer subGroup) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(CaseOverview::getNum,num); wrapper.eq(CaseOverview::getSubGroup,subGroup); List list = this.list(wrapper); if(list ==null || list.isEmpty()){ return null; } return list.get(0); } }