| | |
| | | package com.ruoyi.productionPlan.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.production.dto.ProductOrderDto; |
| | | import com.ruoyi.production.dto.ProductionProductMainDto; |
| | | import com.ruoyi.production.mapper.ProductOrderMapper; |
| | | import com.ruoyi.production.mapper.ProductionOrderRouteMapper; |
| | | import com.ruoyi.production.mapper.ProductionProductMainMapper; |
| | | import com.ruoyi.production.pojo.ProductionProductMain; |
| | | import com.ruoyi.productionPlan.dto.OrderDto; |
| | | import com.ruoyi.productionPlan.dto.ProductionPlanDto; |
| | | import com.ruoyi.productionPlan.dto.TrackDto; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.productionPlan.mapper.ProductionPlanMapper; |
| | | import com.ruoyi.productionPlan.pojo.ProductOrderPlan; |
| | | import com.ruoyi.productionPlan.mapper.ProductOrderPlanMapper; |
| | | import com.ruoyi.productionPlan.service.ProductOrderPlanService; |
| | | 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; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | @Service |
| | | public class ProductOrderPlanServiceImpl extends ServiceImpl<ProductOrderPlanMapper, ProductOrderPlan> implements ProductOrderPlanService { |
| | | |
| | | @Autowired |
| | | private ProductOrderPlanMapper productOrderPlanMapper; |
| | | |
| | | @Autowired |
| | | private ProductionPlanMapper productionPlanMapper; |
| | | |
| | | @Autowired |
| | | private ProductOrderMapper productOrderMapper; |
| | | |
| | | @Autowired |
| | | private ProductionProductMainMapper productionProductMainMapper; |
| | | |
| | | @Override |
| | | public TrackDto trackProgressByNo(Long productionPlanId) { |
| | | TrackDto trackDto = new TrackDto(); |
| | | //生产计划数据 |
| | | ProductionPlanDto productionPlanDto=productionPlanMapper.selectProductionPlanDtoById(productionPlanId); |
| | | trackDto.setProductionPlanDto(productionPlanDto); |
| | | //生产订单数据 |
| | | List<OrderDto> orderDtos = listByApplyNo(productionPlanDto); |
| | | trackDto.setOrderDtoList(orderDtos); |
| | | return trackDto; |
| | | } |
| | | |
| | | private List<OrderDto> listByApplyNo(ProductionPlanDto productionPlanDto) { |
| | | List<OrderDto> orderDtos = new ArrayList<>(); |
| | | //1.先查询该生产计划下所有关联的生产订单 |
| | | List<ProductOrderPlan> productOrderPlans = productOrderPlanMapper.selectList(Wrappers.<ProductOrderPlan>lambdaQuery() |
| | | .eq(ProductOrderPlan::getProductionPlanId, productionPlanDto.getId())); |
| | | if (CollectionUtils.isEmpty(productOrderPlans)){ |
| | | return null; |
| | | } |
| | | productOrderPlans.forEach(productOrderPlan -> { |
| | | OrderDto orderDto = new OrderDto(); |
| | | //生产订单信息 |
| | | ProductOrderDto productOrderDto=productOrderMapper.getProductOrderDto(productOrderPlan.getProductOrderId()); |
| | | orderDto.setProductOrderDto(productOrderDto); |
| | | //报工详情 |
| | | List<ProductionProductMainDto> productionProductMainDtos = productionProductMainMapper.selectProductionProductMainDto(productOrderPlan.getProductOrderId()); |
| | | orderDto.setProductionProductMainDtos(productionProductMainDtos); |
| | | orderDtos.add(orderDto); |
| | | }); |
| | | return orderDtos; |
| | | } |
| | | } |