package com.yuanchu.mom.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.dto.BushingDto;
import com.yuanchu.mom.dto.FibersDto;
import com.yuanchu.mom.mapper.InsBushingMapper;
import com.yuanchu.mom.pojo.InsBushing;
import com.yuanchu.mom.service.InsBushingService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
*
* 光纤配置的套管表 服务实现类
*
*
* @author 江苏鵷雏网络科技有限公司
* @since 2024-05-30 05:58:16
*/
@Service
@AllArgsConstructor
public class InsBushingServiceImpl extends ServiceImpl implements InsBushingService {
private InsBushingMapper insBushingMapper;
@Override
public List selectBushingBySampleId(Integer sampleId) {
List insBushings = insBushingMapper.selectList(Wrappers.lambdaQuery().eq(InsBushing::getInsSampleId, sampleId));
List bushingDtos = new ArrayList<>();
for (InsBushing insBushing : insBushings) {
BushingDto bushingDto = JSON.parseObject(JSON.toJSONString(insBushing), BushingDto.class);
bushingDto.setFiber(insBushingMapper.selectFiberByBushingId(bushingDto.getId()));
if(bushingDto.getFiber().size()==0){
bushingDto.setFibers(insBushingMapper.selectFibersByBushingId(insBushing.getId()));
for (FibersDto fibers : bushingDto.getFibers()) {
fibers.setFiber(insBushingMapper.selectFiberByFibersId(fibers.getId()));
}
}
bushingDtos.add(bushingDto);
}
return bushingDtos;
}
}