| | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.AgvBasDevp; |
| | | import com.zy.asrs.entity.AgvLocMast; |
| | | import com.zy.asrs.entity.AgvWaitPakin; |
| | | import com.zy.asrs.entity.AgvWrkMast; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.common.model.DetlDto; |
| | | import com.zy.common.model.StartupDto; |
| | | import com.zy.common.service.AgvCommonService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | |
| | | private AgvWrkMastService agvWrkMastService; |
| | | @Autowired |
| | | private AgvWrkDetlService agvWrkDetlService; |
| | | @Autowired |
| | | private MatService matService; |
| | | |
| | | @Override |
| | | public StartupDto createWaitPainWrkMastStart(List<AgvBasDevp> agvBasDevpList, Long userId) { |
| | |
| | | //生成工作档 |
| | | AgvWrkMast wrkMast = createWrkMast(agvBasDevp, agvLocMast, now, userId); |
| | | //生成工作档明细 |
| | | createWrkDetl(agvWaitPakinList,wrkMast,userId); |
| | | createWrkDetlReWrite(agvWaitPakinList,wrkMast,userId); |
| | | //更新源站点信息 |
| | | updateAgvBasDevp(agvBasDevp); |
| | | //更新目标库位状态 |
| | |
| | | /* |
| | | 生成工作档明细 |
| | | */ |
| | | private void createWrkDetl(List<AgvWaitPakin> agvWaitPakinList, AgvWrkMast wrkMast, Long userId){ |
| | | /* private void createWrkDetl(List<AgvWaitPakin> agvWaitPakinList, AgvWrkMast wrkMast, Long userId){ |
| | | List<DetlDto> detlDtos = new ArrayList<>(); |
| | | agvWaitPakinList.forEach(agvWaitPakin -> { |
| | | DetlDto detlDto = new DetlDto(agvWaitPakin.getMatnr(), agvWaitPakin.getBatch(), agvWaitPakin.getAnfme()); |
| | |
| | | } |
| | | }); |
| | | agvWrkDetlService.createWorkDetail(wrkMast.getWrkNo(), detlDtos, wrkMast.getBarcode(), userId); |
| | | |
| | | }*/ |
| | | /* |
| | | 生成工作档明细 |
| | | */ |
| | | private void createWrkDetlReWrite(List<AgvWaitPakin> agvWaitPakinList, AgvWrkMast wrkMast, Long userId){ |
| | | Date now = new Date(); |
| | | agvWaitPakinList.stream().forEach(agvWaitPakin -> { |
| | | Mat mat = matService.selectByMatnr(agvWaitPakin.getMatnr()); |
| | | if (Cools.isEmpty(mat)) { |
| | | throw new CoolException(agvWaitPakin.getMatnr() + "商品维护失败"); |
| | | } |
| | | AgvWrkDetl wrkDetl = new AgvWrkDetl(); |
| | | wrkDetl.sync(mat); |
| | | wrkDetl.setWrkNo(wrkMast.getWrkNo()); |
| | | wrkDetl.setOrderNo(agvWaitPakin.getOrderNo()); |
| | | wrkDetl.setIoTime(now); |
| | | wrkDetl.setBatch(agvWaitPakin.getBatch()); |
| | | wrkDetl.setAnfme(agvWaitPakin.getAnfme()); // 数量 |
| | | wrkDetl.setZpallet(agvWaitPakin.getZpallet()); // 托盘条码 |
| | | wrkDetl.setAppeUser(userId); |
| | | wrkDetl.setAppeTime(now); |
| | | wrkDetl.setModiUser(userId); |
| | | wrkDetl.setModiTime(now); |
| | | if (!agvWrkDetlService.insert(wrkDetl)) { |
| | | throw new CoolException("保存工作明细失败"); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | /* |