wu
2024-06-24 09a010c5dc11c68a866a6075a74bd1bbefb4a9a8
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownCacheGlassTask.java
@@ -129,12 +129,12 @@
            }
        }
        if (("1".equals(G11RobotTaskRequestWord) || "1".equals(G06RobotTaskRequestWord)) || "1".equals(G13RobotTaskRequestWord)) {
            log.info("4、有机器人下片请求,执行下片任务");
        if (("0".equals(G11RobotTaskRequestWord) || "0".equals(G06RobotTaskRequestWord)) || "0".equals(G13RobotTaskRequestWord)) {
            log.info("4、有下片完成信号更新落架数量");
            insertdownglassinfo();
        }
        //自动绑定架子,如果工位表没有绑定架子,默认将笼子中数量最多的流程卡号绑定机器手2的空架子
    }
@@ -155,9 +155,10 @@
        }
        log.info("2、获取到的玻璃信息为{}", glassInfo);
        if (glassInfo.getGlassId().equals(downStorageCageDetailsService.DirectConnection())) {
        if (downStorageCageDetailsService.DirectConnection(glassInfo)) {
            //直通
            log.info("3、如果当前玻璃属于版图id和片序的顺序则直通,执行下片任务");
            //log.info("3、如果当前玻璃属于版图id和片序的顺序则直通,执行下片任务");
          log.info("3、如果当前玻璃属于流程卡中的片序的顺序则直通,执行下片任务");
            DownWorkstation downWorkstation = downWorkstationService.getOne(new LambdaQueryWrapper<DownWorkstation>().eq(DownWorkstation::getFlowCardId, glassInfo.getFlowCardId()));
            int WorkstationId = downWorkstation.getWorkstationId();
            DownGlassTask downGlassTask = downStorageCageService.createDownGlassTask(glassInfo, "0", String.valueOf(WorkstationId), "3");
@@ -165,7 +166,9 @@
        } else {
            log.info("4、如果不属于版图id和片序的顺序执行进片任务");
           // log.info("4、如果不属于版图id和片序的顺序执行进片任务");
            log.info("4、如果不属于流程卡中的片序的顺序执行进片任务");
            //添加进片任务  查找空格
            List<DownStorageCageDetails> list = downStorageCageService.selectCacheEmpty();
            if (list.size() > 0) {
@@ -201,11 +204,12 @@
     * @param MESSendingWord
     */
    private Boolean outTo(String MESSendingWord) {
        log.info("单片情况根据传入的料架号 查询符合按照版图id和片序出片,并且优先出满架的小片");
       // log.info("单片情况根据传入的料架号 查询符合按照版图id和片序出片,并且优先出满架的小片");
        log.info("单片情况根据传入的料架号 查询符合按照流程卡中顺序出片,并且优先出满架的小片");
        List<DownStorageCageDetails> list1to3 = downStorageCageDetailsService.CacheOut1(1, 3);
        List<DownStorageCageDetails> list4to6 = downStorageCageDetailsService.CacheOut1(4, 6);
        List<DownStorageCageDetails> list1to6 = downStorageCageDetailsService.CacheOut1(1, 6);
//        List<DownStorageCageDetails> list1to3 = downStorageCageDetailsService.CacheOut1(1, 3);
//        List<DownStorageCageDetails> list4to6 = downStorageCageDetailsService.CacheOut1(4, 6);
        List<DownStorageCageDetails> list1to6 = downStorageCageDetailsService.CacheOut2(1, 6);
        DownStorageCageDetails selectedItem = null;
@@ -214,27 +218,28 @@
        // 优先 超出尺寸优先人工出片 人工处理
        if (!list1to6.isEmpty()) {
            DownStorageCageDetails item3 = list1to6.get(0);
            //后期有生产规则
            if (item3.getHeight() >= 2500 && item3.getWidth() >= 2660) {
                log.info("人工处理");
                selectedItem = item3;
                endCell = "7";
            } else if (!list4to6.isEmpty() && !list1to6.isEmpty()) {
                log.info("前后端都空闲 优先后端出片并且优先满架");
                selectedItem = list4to6.get(0);
            } else if (!!list1to6.isEmpty()) {
                log.info("前后端都空闲优先满架");
                selectedItem = list1to6.get(0);
            }
        }
        // 按照版图id和片序符合前端出片
        if (selectedItem == null && !list1to3.isEmpty()) {
            log.info("前端出片");
            selectedItem = list1to3.get(0);
        }
        // 按照版图id和片序符合后端出片
        if (selectedItem == null && !list4to6.isEmpty()) {
            log.info("后端出片");
            selectedItem = list4to6.get(0);
        }
//        if (selectedItem == null && !list1to3.isEmpty()) {
//            log.info("前端出片");
//            selectedItem = list1to3.get(0);
//        }
//
//        // 按照版图id和片序符合后端出片
//        if (selectedItem == null && !list4to6.isEmpty()) {
//            log.info("后端出片");
//            selectedItem = list4to6.get(0);
//        }
        if (selectedItem != null) {
            DownWorkstation downWorkstation = downWorkstationService.getOne(
@@ -286,11 +291,11 @@
                    DownWorkstation downWorkstation1 = downWorkstationService.selectByFlowCardId(downGlassInfo.getFlowCardId());
                    downWorkstationService.updateracksnumber(downGlassInfo.getFlowCardId(), downWorkstation1.getRacksnumber() + 1);
                    log.info("更新落架数量");
                    LambdaQueryWrapper<DownGlassTask> wrapper = new LambdaQueryWrapper<>();
                    wrapper.eq(DownGlassTask::getGlassId, newdownGlassInfo.getGlassId());
                    DownGlassTask updateDetail = new DownGlassTask();
                    updateDetail.setTaskStauts(2);
                    downGlassTaskService.update(updateDetail, wrapper);
//                    LambdaQueryWrapper<DownGlassTask> wrapper = new LambdaQueryWrapper<>();
//                    wrapper.eq(DownGlassTask::getGlassId, newdownGlassInfo.getGlassId());
//                    DownGlassTask updateDetail = new DownGlassTask();
//                    updateDetail.setTaskStauts(2);
//                    downGlassTaskService.update(updateDetail, wrapper);
                    sequence++; // 递增顺序字段值