12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- package com.fdkankan.fusion.service.impl;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.fdkankan.fusion.common.ResultCode;
- import com.fdkankan.fusion.entity.CaseFusion;
- import com.fdkankan.fusion.entity.CaseView;
- import com.fdkankan.fusion.entity.FusionMeter;
- import com.fdkankan.fusion.entity.FusionNum;
- import com.fdkankan.fusion.exception.BusinessException;
- import com.fdkankan.fusion.mapper.IFusionMeterMapper;
- import com.fdkankan.fusion.service.ICaseFusionService;
- import com.fdkankan.fusion.service.ICaseService;
- import com.fdkankan.fusion.service.IFusionMeterService;
- 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.ArrayList;
- import java.util.List;
- import java.util.stream.Collectors;
- /**
- * <p>
- * 服务实现类
- * </p>
- *
- * @author
- * @since 2022-08-11
- */
- @Service
- public class FusionMeterServiceImpl extends ServiceImpl<IFusionMeterMapper, FusionMeter> implements IFusionMeterService {
- @Autowired
- ICaseFusionService caseFusionService;
- @Override
- public List<FusionMeter> getListByFusionId(Integer fusionId, String meterTitle) {
- LambdaQueryWrapper<FusionMeter> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(FusionMeter::getFusionId,fusionId);
- if(StringUtils.isNotBlank(meterTitle)){
- wrapper.like(FusionMeter::getMeterTitle,meterTitle);
- }
- return this.list(wrapper);
- }
- @Override
- public FusionMeter add(FusionMeter fusionMeter) {
- if(fusionMeter.getFusionId() == null || fusionMeter.getLength() == null
- || fusionMeter.getMeterType() == null || StringUtils.isEmpty(fusionMeter.getPosition())){
- throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
- }
- String meterTitle = "总长度";
- if(fusionMeter.getMeterType() == 2){
- meterTitle = "总面积";
- }
- fusionMeter.setMeterTitle(meterTitle);
- this.save(fusionMeter);
- return fusionMeter;
- }
- @Override
- public void deleteByModelId(Integer modelId) {
- LambdaQueryWrapper<FusionMeter> wrapper = new LambdaQueryWrapper<>();
- wrapper.like(FusionMeter::getPosition,"%\"modelId\":\""+modelId+"\"%");
- this.remove(wrapper);
- }
- @Override
- public void deleteByFusionId(Integer fusionId) {
- LambdaQueryWrapper<FusionMeter> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(FusionMeter::getFusionId,fusionId);
- this.remove(wrapper);
- }
- @Override
- public void deleteByCaseId(Integer caseId) {
- LambdaQueryWrapper<CaseFusion> fnwr = new LambdaQueryWrapper<>();
- fnwr.eq(CaseFusion::getCaseId,caseId);
- List<CaseFusion> list = caseFusionService.list(fnwr);
- if(list.size() >0){
- List<Integer> fusionIds = list.parallelStream().map(CaseFusion::getFusionId).collect(Collectors.toList());
- if(fusionIds.size() >0){
- LambdaQueryWrapper<FusionMeter> wrapper = new LambdaQueryWrapper<>();
- wrapper.in(FusionMeter::getFusionId,fusionIds);
- this.remove(wrapper);
- }
- }
- }
- }
|