| | |
| | | package zy.cloud.wms.manager.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.core.exception.CoolException; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import zy.cloud.wms.manager.entity.WaveDetl; |
| | | import zy.cloud.wms.manager.mapper.WaveMapper; |
| | | import zy.cloud.wms.manager.entity.Wave; |
| | | import zy.cloud.wms.manager.service.OrderService; |
| | | import zy.cloud.wms.manager.service.WaveDetlService; |
| | | import zy.cloud.wms.manager.service.WaveService; |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.HashSet; |
| | | import java.util.List; |
| | | |
| | | @Service("waveService") |
| | | public class WaveServiceImpl extends ServiceImpl<WaveMapper, Wave> implements WaveService { |
| | | @Autowired |
| | | private WaveDetlService waveDetlService; |
| | | @Autowired |
| | | private OrderService orderService; |
| | | @Autowired |
| | | private WaveService waveService; |
| | | |
| | | /** |
| | | * 通过波次生成拣货单 |
| | | * @param wave |
| | | * @param userId |
| | | * @param hostId |
| | | */ |
| | | @Override |
| | | public void createOut(Wave wave, Long userId, Long hostId) { |
| | | HashSet<String> orderIds = new HashSet<>(); |
| | | /** |
| | | * 控管 |
| | | */ |
| | | List<WaveDetl> waveDetls = waveDetlService.selectList(new EntityWrapper<WaveDetl>() |
| | | .eq("wave_id", wave.getId())); |
| | | if (Cools.isEmpty(waveDetls)) { |
| | | throw new CoolException("找不到该波次单的详情,请联系管理员"); |
| | | } |
| | | |
| | | /** |
| | | * 更改出库单状态,从"生成波次"到"波次拣货中" |
| | | */ |
| | | for (WaveDetl waveDetl : waveDetls) { |
| | | String orderNos = waveDetl.getOrderNos(); |
| | | String[] split = orderNos.split(","); |
| | | for (String s : split) { |
| | | orderIds.add(s); |
| | | } |
| | | } |
| | | for (String s : new ArrayList<String>(orderIds)) { |
| | | orderService.changeSettleTo12(s); |
| | | } |
| | | /** |
| | | * 更改波次单状态,从"待处理"到"处理中" |
| | | */ |
| | | wave.setStatus((short) 1); |
| | | waveService.update(wave,new EntityWrapper<Wave>() |
| | | .eq("id",wave.getId())); |
| | | } |
| | | } |