package com.fdkankan.fusion.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.fdkankan.fusion.entity.CaseFiles; import com.fdkankan.fusion.entity.CaseOverview; import com.fdkankan.fusion.entity.CaseTabulation; import com.fdkankan.fusion.mapper.ICaseTabulationMapper; import com.fdkankan.fusion.service.ICaseFilesService; import com.fdkankan.fusion.service.ICaseOverviewService; import com.fdkankan.fusion.service.ICaseTabulationService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** *

* 服务实现类 *

* * @author * @since 2025-05-13 */ @Service public class CaseTabulationServiceImpl extends ServiceImpl implements ICaseTabulationService { @Autowired ICaseFilesService caseFilesService; @Autowired ICaseOverviewService caseOverviewService; @Override public List getByCaseId(String caseId) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(CaseTabulation::getCaseId,caseId); wrapper.isNull(CaseTabulation::getOverviewId); wrapper.orderByDesc(CaseTabulation::getId); return this.list(wrapper); } @Override public List getByOverviewId(String overviewId) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(CaseTabulation::getOverviewId,overviewId); wrapper.orderByDesc(CaseTabulation::getId); return this.list(wrapper); } @Override public void addOrUpdate(CaseTabulation caseTabulation) { this.saveOrUpdate(caseTabulation); if(StringUtils.isNotBlank(caseTabulation.getListCover()) || caseTabulation.getOverviewId() != null){ CaseFiles caseFiles = new CaseFiles(); if(caseTabulation.getId()!=null){ CaseTabulation db = this.getById(caseTabulation.getId()); if(caseTabulation.getOverviewId() == null){ caseTabulation.setOverviewId(db.getOverviewId()); } CaseFiles dbCaseFile = caseFilesService.getByTabulation(caseTabulation.getId()); if(dbCaseFile != null){ caseFiles.setFilesId(dbCaseFile.getFilesId()); } } if(caseTabulation.getOverviewId()!=null){ CaseFiles dbCaseFile = caseFilesService.getByOverviewId(caseTabulation.getOverviewId()); if(dbCaseFile != null){ caseFiles.setFilesId(dbCaseFile.getFilesId()); } } caseFiles.setCaseId(caseTabulation.getCaseId()); caseFiles.setFilesUrl(caseTabulation.getListCover()); if(StringUtils.isBlank(caseTabulation.getListCover())){ CaseOverview caseOverview = caseOverviewService.getById(caseTabulation.getOverviewId()); caseFiles.setFilesUrl(caseOverview.getListCover()); } if(caseTabulation.getOverviewId() != null){ //平面图 caseFiles.setFilesTypeId(41); caseFiles.setFilesTitle("平面图"); caseFiles.setOverviewId(caseTabulation.getOverviewId() ); caseFiles.setTabulationId(caseTabulation.getId() ); }else { caseFiles.setFilesTypeId(42); caseFiles.setFilesTitle("方位图"); caseFiles.setTabulationId(caseTabulation.getId() ); } caseFilesService.saveOrUpdate(caseFiles); } } }