package com.vincent.rsf.server.manager.service.impl; 
 | 
  
 | 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 
 | 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 
 | 
import com.vincent.rsf.framework.common.R; 
 | 
import com.vincent.rsf.server.common.domain.BaseParam; 
 | 
import com.vincent.rsf.server.common.domain.PageParam; 
 | 
import com.vincent.rsf.server.manager.entity.WkOrderItem; 
 | 
import com.vincent.rsf.server.manager.mapper.WaveOrderRelaMapper; 
 | 
import com.vincent.rsf.server.manager.entity.WaveOrderRela; 
 | 
import com.vincent.rsf.server.manager.service.AsnOrderItemService; 
 | 
import com.vincent.rsf.server.manager.service.WaveOrderRelaService; 
 | 
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.stereotype.Service; 
 | 
  
 | 
import java.util.List; 
 | 
import java.util.Map; 
 | 
import java.util.stream.Collectors; 
 | 
  
 | 
@Service("waveOrderRelaService") 
 | 
public class WaveOrderRelaServiceImpl extends ServiceImpl<WaveOrderRelaMapper, WaveOrderRela> implements WaveOrderRelaService { 
 | 
  
 | 
    @Autowired 
 | 
    private AsnOrderItemService asnOrderItemService; 
 | 
  
 | 
  
 | 
    @Override 
 | 
    public R relaPage(BaseParam baseParam, Map<String, Object> params) { 
 | 
        List<WaveOrderRela> orderRelas = this.baseMapper.selectList(new LambdaQueryWrapper<WaveOrderRela>() 
 | 
                .eq(WaveOrderRela::getWaveId, Long.parseLong(params.get("waveId").toString()))); 
 | 
        if (orderRelas.isEmpty()) { 
 | 
            return R.ok(); 
 | 
        } 
 | 
        List<Long> orderIds = orderRelas.stream().map(WaveOrderRela::getOrderItemId).collect(Collectors.toList()); 
 | 
        PageParam<WkOrderItem, BaseParam> pageParam = new PageParam<>(baseParam, WkOrderItem.class); 
 | 
        QueryWrapper<WkOrderItem> wrapper = pageParam.buildWrapper(true); 
 | 
        wrapper.in("id", orderIds); 
 | 
        return R.ok().add(asnOrderItemService.page(pageParam, wrapper)); 
 | 
    } 
 | 
} 
 |