src/main/java/com/zy/asrs/controller/WorkController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/WorkService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/WorkController.java
@@ -65,6 +65,13 @@ map.put("desc", siteId + "(拣料出库口)"); result.add(map); } List<Integer> agvAvailableInSite = basDevpService.getAgvAvailableInSite(); for (Integer siteId : agvAvailableInSite) { Map<String, Object> map = new HashMap<>(); map.put("siteId", siteId); map.put("desc", siteId + "(小车工作区)"); result.add(map); } return R.ok().add(result); } src/main/java/com/zy/asrs/service/WorkService.java
@@ -25,7 +25,7 @@ * @param locDetls 待出库物料 * @param ioType 入出库类型 */ void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, Integer ioType, Long userId); void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, Integer ioType, Long userId, Integer agvSite); /** * 空板入库 src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
@@ -1,6 +1,7 @@ package com.zy.asrs.service.impl; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.BasDevp; import com.zy.asrs.mapper.BasDevpMapper; @@ -54,18 +55,25 @@ throw new CoolException(devpNo+"站点不存在"); } if (put) { if(station.getAutoing()==null || !station.getAutoing().equals("Y")) { throw new CoolException(devpNo+"站点不是自动状态"); // 小车工作区 if (!Cools.isEmpty(station.getFronting()) && station.getFronting().equals("Y")) { // 常规站点 } else { if(station.getAutoing()==null || !station.getAutoing().equals("Y")) { throw new CoolException(devpNo+"站点不是自动状态"); } if(station.getLoading()==null || !station.getLoading().equals("Y")) { throw new CoolException(devpNo+"站点无物"); } if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo() < 9990) { throw new CoolException(devpNo+"站点已有工作号"); } if(wrkMastService.getWorkingMast(devpNo)>0){ throw new CoolException(devpNo+"站点不能同时生成两笔入库工作档"); } } if(station.getLoading()==null || !station.getLoading().equals("Y")) { throw new CoolException(devpNo+"站点无物"); } if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo() < 9990) { throw new CoolException(devpNo+"站点已有工作号"); } if(wrkMastService.getWorkingMast(devpNo)>0){ throw new CoolException(devpNo+"站点不能同时生成两笔入库工作档"); } } return station; } src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -185,6 +185,11 @@ public void startupFullTakeStore(StockOutParam param, Long userId) { // 目标站点状态检测 BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite()); int agvSite = 0; if (!Cools.isEmpty(staNo.getFronting()) && staNo.getFronting().equals("Y")) { agvSite = staNo.getDevNo(); staNo = basDevpService.checkSiteStatus(201); } // 获取库位明细 List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { @@ -198,7 +203,7 @@ } if (!locDetlDtos.isEmpty()) { // 启动出库开始 101.出库 stockOut(staNo, locDetlDtos, null, userId); stockOut(staNo, locDetlDtos, null, userId, agvSite); } else { throw new CoolException("库位物料不存在"); } @@ -206,7 +211,7 @@ @Override @Transactional public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Integer ioType, Long userId) { public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Integer ioType, Long userId, Integer agvSite) { // 合并同类项 Set<String> locNos = new HashSet<>(); locDetlDtos.forEach(dto -> locNos.add(dto.getLocDetl().getLocNo())); @@ -259,6 +264,7 @@ wrkMast.setExitMk("N"); // 退出 wrkMast.setEmptyMk("N"); // 空板 wrkMast.setLinkMis("N"); wrkMast.setCtnKind(agvSite); // 出库下的小车工作区站好 wrkMast.setAppeUser(userId); // 操作人员数据 wrkMast.setAppeTime(new Date()); wrkMast.setModiUser(userId); @@ -427,6 +433,11 @@ public void locCheckOut(StockOutParam param, Long userId) { // 目标站点状态检测 BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite()); int agvSite = 0; if (!Cools.isEmpty(staNo.getFronting()) && staNo.getFronting().equals("Y")) { agvSite = staNo.getDevNo(); staNo = basDevpService.checkSiteStatus(201); } // 获取库位明细 List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { @@ -445,7 +456,7 @@ } if (!locDetlDtos.isEmpty()) { // 启动出库开始 107.盘点出库 stockOut(staNo, locDetlDtos, 107, userId); stockOut(staNo, locDetlDtos, 107, userId, agvSite); } else { throw new CoolException("库位物料不存在"); }