From d17c089f1d7ff3be848b05161917346e7f664a1d Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期二, 26 四月 2022 15:17:53 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/manager/service/impl/WaveServiceImpl.java | 80 +++++++++++++++++++++++++++++++++++---- 1 files changed, 71 insertions(+), 9 deletions(-) diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/WaveServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/WaveServiceImpl.java index 841a1cb..4f12b29 100644 --- a/src/main/java/zy/cloud/wms/manager/service/impl/WaveServiceImpl.java +++ b/src/main/java/zy/cloud/wms/manager/service/impl/WaveServiceImpl.java @@ -2,18 +2,19 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; +import com.core.common.R; import com.core.exception.CoolException; import org.springframework.beans.factory.annotation.Autowired; -import zy.cloud.wms.manager.entity.WaveDetl; +import zy.cloud.wms.common.model.PickOutDto; +import zy.cloud.wms.manager.entity.*; 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 zy.cloud.wms.manager.service.*; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.HashSet; import java.util.List; @@ -25,23 +26,76 @@ private OrderService orderService; @Autowired private WaveService waveService; + @Autowired + private PickoutService pickoutService; + @Autowired + private PickoutDetlService pickoutDetlService; + @Autowired + private MatService matService; /** * 閫氳繃娉㈡鐢熸垚鎷h揣鍗� - * @param wave + * @param * @param userId * @param hostId */ @Override - public void createOut(Wave wave, Long userId, Long hostId) { + public R createOut(List<PickOutDto> pickOutDtosk, Long userId, Long hostId) { HashSet<String> orderIds = new HashSet<>(); /** * 鎺х */ + if (Cools.isEmpty(pickOutDtosk)) { + throw new CoolException("鏁版嵁浼犺緭閿欒,璇疯仈绯荤鐞嗗憳"); + } + Wave wave = waveService.selectOne(new EntityWrapper<Wave>() + .eq("id", pickOutDtosk.get(0).getWaveId())); List<WaveDetl> waveDetls = waveDetlService.selectList(new EntityWrapper<WaveDetl>() .eq("wave_id", wave.getId())); - if (Cools.isEmpty(waveDetls)) { - throw new CoolException("鎵句笉鍒拌娉㈡鍗曠殑璇︽儏,璇疯仈绯荤鐞嗗憳"); + + /** + * 鐢熸垚鎷h揣鍗� + */ + Pickout pickout = new Pickout(); + pickout.setHostId(hostId); + pickout.setUserId(userId); + pickout.setWrkNo("PO-"+new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())); + pickout.setWrkSts(1L); + pickout.setCreateBy(userId.intValue()); + pickout.setUpdateBy(userId.intValue()); + pickout.setOrderQty(wave.getOrdersQty()); + pickout.setWaveNo(wave.getWaveNo()); + pickoutService.insert(pickout); + for (PickOutDto pickOutDto : pickOutDtosk) { + Mat mat = matService.selectByMatnr(hostId, pickOutDto.getMatnr()); + if (Cools.isEmpty(mat)) { + pickoutService.delete(new EntityWrapper<Pickout>() + .eq("id",pickout.getId())); + throw new CoolException("鏌ヨ涓嶅埌璇ョ墿鏂欐槑缁�"); + + } + PickoutDetl pickoutDetl = new PickoutDetl(); + pickoutDetl.setHeadId(pickout.getId()); + if (!Cools.isEmpty(pickOutDto.getNodeId())) { + + pickoutDetl.setNodeId(pickOutDto.getNodeId().longValue()); + } + + pickoutDetl.setNodeName(pickOutDto.getLocNo()); + pickoutDetl.setAnfme(pickOutDto.getReduce().doubleValue()); + pickoutDetl.setMatnr(pickOutDto.getMatnr()); + pickoutDetl.setMaktx(mat.getMaktx()); + pickoutDetl.setName(mat.getName()); + pickoutDetl.setSpecs(mat.getSpecs()); + pickoutDetl.setModel(mat.getModel()); + pickoutDetl.setUnit(mat.getUnit()); + pickoutDetl.setPrice(mat.getPrice()); + pickoutDetl.setWeight(mat.getWeight()); + pickoutDetl.setStatus(1); + pickoutDetl.setCreateBy(userId.intValue()); + pickoutDetl.setUpdateBy(userId.intValue()); + pickoutDetl.setWrkNo(pickout.getWrkNo()); + pickoutDetlService.insert(pickoutDetl); } /** @@ -63,5 +117,13 @@ wave.setStatus((short) 1); waveService.update(wave,new EntityWrapper<Wave>() .eq("id",wave.getId())); + + + return R.ok(); + } + + @Override + public String getCurrNum(String waveNo) { + return this.baseMapper.getCurrNum(waveNo); } } -- Gitblit v1.9.1