| | |
| | | import com.zy.common.service.CommonService; |
| | | import com.zy.common.web.param.ReplenishmentParam; |
| | | import com.zy.common.web.param.SearchLocParam; |
| | | import lombok.Synchronized; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.io.IOException; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static jdk.nashorn.internal.runtime.regexp.joni.Config.log; |
| | | |
| | | /** |
| | | * Created by vincent on 2020/10/30 |
| | |
| | | throw new CoolException(dto.getLocNo() + "目标库位已被占用"); |
| | | } |
| | | |
| | | Date now = new Date(); |
| | | for (LocDetl locDetl : locDetls) { |
| | | locDetl.setLocNo(dto.getLocNo());//修改目标库位 |
| | | locDetl.setAppeTime(now); |
| | | locDetl.setModiTime(now); |
| | | if (!locDetlService.insert(locDetl)) { |
| | | throw new CoolException("库存明细更新失败"); |
| | | } |
| | | } |
| | | // Date now = new Date(); |
| | | // for (LocDetl locDetl : locDetls) { |
| | | // locDetl.setLocNo(dto.getLocNo());//修改目标库位 |
| | | // locDetl.setAppeTime(now); |
| | | // locDetl.setModiTime(now); |
| | | // if (!locDetlService.insert(locDetl)) { |
| | | // throw new CoolException("库存明细更新失败"); |
| | | // } |
| | | // } |
| | | |
| | | //检查目标库位,库存明细是否添加成功 |
| | | List<LocDetl> checkLocDetls = locDetlService.selectByLocNo(dto.getLocNo()); |
| | | if (checkLocDetls.isEmpty()) { |
| | | throw new CoolException("库存明细迁移失败"); |
| | | } |
| | | // //检查目标库位,库存明细是否添加成功 |
| | | // List<LocDetl> checkLocDetls = locDetlService.selectByLocNo(dto.getLocNo()); |
| | | // if (checkLocDetls.isEmpty()) { |
| | | // throw new CoolException("库存明细迁移失败"); |
| | | // } |
| | | |
| | | // //清空源库位数据 |
| | | LocMast locMast1 = locMastService.selectByLoc(wrkMast.getSourceLocNo()); |
| | |
| | | } |
| | | |
| | | //获取回库提升机目标站 |
| | | Integer staNo = liftNo * 100 + locMast1.getLev1(); |
| | | Integer staNo = liftNo * 100 + locMast.getLev1(); |
| | | |
| | | // 更新工作档数据状态 |
| | | wrkMast.setIoType(wrkMast.getIoType() - 50); // 入出库类型: 103->53,104->54 |
| | |
| | | */ |
| | | @PostMapping("/start") |
| | | @ResponseBody |
| | | public R start(@RequestBody ReplenishmentParam param){ |
| | | |
| | | @Transactional |
| | | public synchronized R start(@RequestBody ReplenishmentParam param){ |
| | | log.info("agv start param: " + param.toString()); |
| | | String containerCode = param.getContainerCode(); |
| | | if(Cools.isEmpty(containerCode)){ |
| | | throw new CoolException("料箱码为空"); |
| | |
| | | } |
| | | |
| | | //入库任务 |
| | | if (!Cools.isEmpty(agvWaitPakinService.selectByContainerCode(containerCode))){ |
| | | if (!Cools.isEmpty(agvWaitPakinService.selectByContainerCode(containerCode)) && Cools.isEmpty(agvWrkMast)){ |
| | | //绑定站点 |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(param.getDevNo(),"F",containerCode); |
| | | //生成工作档 |
| | |
| | | @PostMapping("/current/containerCode") |
| | | @ResponseBody |
| | | public R move(@RequestBody ReplenishmentParam param){ |
| | | |
| | | log.info("current containerCode: " + param.toString()); |
| | | |
| | | if(Cools.isEmpty(currentContainerMap)){ |
| | | currentContainerMap = new HashMap<>(); |
| | |
| | | @ResponseBody |
| | | public R containerMove(@RequestBody ReplenishmentParam param){ |
| | | |
| | | String devNo = param.getDevNo(); |
| | | String containerCode = currentContainerMap.get(devNo); |
| | | String devNo = Cools.eq("CS-310",param.getDevNo()) ? "310-1" : Cools.eq("CS-311",param.getDevNo()) ? "312-2" : Cools.eq("CS-312",param.getDevNo()) ? "314-1" : Cools.eq("CS-313",param.getDevNo()) ? "316-1" : null; |
| | | |
| | | if(Cools.isEmpty(devNo)){ |
| | | return R.error("站点有误"); |
| | | } |
| | | |
| | | AgvBasDevp agvBasDevp = agvBasDevpService.selectById(devNo); |
| | | String containerCode = agvBasDevp.getBarcode(); |
| | | |
| | | // String devNo = param.getDevNo(); |
| | | // if(Cools.isEmpty(currentContainerMap)){ |
| | | // currentContainerMap = new HashMap<>(); |
| | | // } |
| | | // String containerCode = currentContainerMap.get(devNo); |
| | | |
| | | AgvBasDevpDto agvBasDevpDto = new AgvBasDevpDto(); |
| | | |
| | |
| | | agvBasDevpDto.setAgvWaitPakins(agvWaitPakinList); |
| | | } |
| | | |
| | | System.out.println("currentContainerMap: " + currentContainerMap); |
| | | //System.out.println("currentContainerMap: " + currentContainerMap); |
| | | |
| | | |
| | | System.out.println("agvBasDevpDto: " + agvBasDevpDto); |
| | | //System.out.println("agvBasDevpDto: " + agvBasDevpDto); |
| | | |
| | | return R.ok(agvBasDevpDto); |
| | | } |