package com.vincent.rsf.server.manager.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.server.manager.entity.WarehouseAreas; import com.vincent.rsf.server.manager.mapper.WarehouseMapper; import com.vincent.rsf.server.manager.entity.Warehouse; import com.vincent.rsf.server.manager.service.WarehouseAreasService; import com.vincent.rsf.server.manager.service.WarehouseService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; @Service("warehouseService") public class WarehouseServiceImpl extends ServiceImpl implements WarehouseService { @Autowired private WarehouseAreasService warehouseAreasService; @Override public List getAllWarehouseAreas() { List warehouses = this.list(new LambdaQueryWrapper<>()); if (warehouses.isEmpty()) { throw new CoolException("仓库为空,请添加仓库后再操作!!"); } List warehouseAreas = warehouseAreasService.list(new LambdaQueryWrapper<>()); if (warehouseAreas.isEmpty()) { return warehouses; } warehouses.forEach(warehouse -> { List areas = new ArrayList<>(); warehouseAreas.forEach(warehouseAreas1 -> { if (warehouse.getId().equals(warehouseAreas1.getWarehouseId())) { areas.add(warehouseAreas1); } }); warehouse.setChildren(areas); }); return warehouses; } }