#
Junjie
2023-11-10 87db4fd86c8d1053c2203ea923e239a2c9d7fa79
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1213,7 +1213,7 @@
            //获取提升机命令
            NyLiftCommand liftCommand = NyLiftUtils.getLiftCommand(liftProtocol.getLiftNo().intValue(), NyLiftTaskModelType.MOVE_TRAY.id, startSta, targetSta, wrkMast.getWrkNo());
            if (wrkMast.getIoType() == 53) {
            if (wrkMast.getIoType() == 53 || wrkMast.getIoType() == 57) {
                //拣料再回库,重新分配设备工作号
                Random random = new Random();
                int deviceWrk = Math.abs((liftCommand.getTaskNo().intValue() + random.nextInt(9999)));//获取设备工作号
@@ -2385,7 +2385,44 @@
                ledCommand.setStaNo(wrkMast.getStaNo());
                if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) {
                    List<WrkDetl> wrkDetls = wrkDetlService.findByWorkNo(wrkMast.getWrkNo());
                    wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme(),wrkDetl.getSpecs())));
                    for (WrkDetl wrkDetl : wrkDetls) {
                        LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("zpallet", wrkDetl.getZpallet()).eq("matnr", wrkDetl.getMatnr()));
                        List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("zpallet", wrkDetl.getZpallet()));
                        locDetls.forEach(locDetl1 -> {
                            //工作档中存在该物料则跳过
                            String suppCode = "";
                            if (wrkDetl.getMatnr().equals(locDetl1.getMatnr())) {
                                Double anfme = 0D;
                                if (locDetl != null) {
                                    anfme = locDetl.getAnfme();
                                }
                                if (wrkDetl.getSuppCode() != null) {
                                    suppCode = wrkDetl.getSuppCode();
                                }
                                ledCommand.getMatDtos()
                                        .add(new MatDto(wrkDetl.getMatnr()
                                                , wrkDetl.getMaktx()
                                                , wrkDetl.getAnfme()
                                                , (wrkDetl.getAnfme()-anfme)
                                                , wrkDetl.getSpecs()
                                                , suppCode));
                            } else {
                                if (locDetl1.getSuppCode() != null) {
                                    suppCode = locDetl1.getSuppCode();
                                }
                                ledCommand.getMatDtos()
                                        .add(new MatDto(locDetl1.getMatnr()
                                                , locDetl1.getMaktx()
                                                , 0D
                                                , locDetl1.getAnfme()
                                                , locDetl1.getSpecs()
                                                , suppCode));
                            }
                        });
                        //LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("zpallet", wrkDetl.getZpallet()).eq("matnr", wrkDetl.getMatnr()));
                    }
                }
                commands.add(ledCommand);
            }
@@ -2479,7 +2516,7 @@
            LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getId());
            // led显示默认内容
            if (reset && !ledThread.isLedMk()) {
                ledThread.setLedMk(true);
                ledThread.setLedMk(false);
                if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(2, new ArrayList<>()))) {
                    News.error("{}号LED命令下发失败!!![ip:{}] [port:{}]", led.getId(), led.getIp(), led.getPort());
                }else {