wu
2024-01-18 65bed7f78be75f0ba279885de647d76bc91d9336
springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java
@@ -31,45 +31,84 @@
        String A02glassid1 = spianService.queGlassid("DB103.156", 14).toString();
        String B01glassid = spianService.queGlassid("DB103.184", 14).toString();
        String B02glassid = spianService.queGlassid("DB103.198", 14).toString();
        List<Short> DeviceList = S7control.getinstance().ReadWord("DB103.0", 10);
        if (types == 0) {// 终止进片任务
            List<StorageTask> cageList = homeMapper.SelectTaskByState(types);
            for (StorageTask storageTask : cageList) {
                // 判断出片任务位置并清除对应玻璃id
                if (storageTask.getGlassId() == A01glassid1 || storageTask.getGlassId() == A01glassid2) {
                if ((storageTask.getGlassId() == A01glassid1 || storageTask.getGlassId() == A01glassid2)&&DeviceList.get(4)==0) {
                    outSliceServive.StopTask(storageTask.getGlassId(), types);
                    ClearGlassId("DB101.10.0");
                } else if (storageTask.getGlassId() == B01glassid) {
                } else if (storageTask.getGlassId() == B01glassid&&DeviceList.get(2)==0) {
                    outSliceServive.StopTask(storageTask.getGlassId(), types);
                    ClearGlassId("DB101.10.2");
                } else if (storageTask.getGlassId() == B02glassid) {
                } else if (storageTask.getGlassId() == B02glassid&&DeviceList.get(3)==0) {
                    ClearGlassId("DB101.10.3");
                    outSliceServive.StopTask(storageTask.getGlassId(), types);
                }
                }\
            }
            // 发送终止进片任务信号
        } else {// 终止出片任务
            List<StorageCage> storageCages = homeMapper.selectinout(3);
            for (StorageCage storageCage : storageCages) {
                List<StorageCage> storageCagess = homeMapper.SelectStoragesGlassById(storageCage.getGlassId());
                for (StorageCage storageCagez : storageCagess) {
                    if (storageCagez.getState().equals("2")) {// 调拨进片
                        outSliceServive.StopTask(storageCagez.getGlassId(), 0);
                    } else {// 出片
                        outSliceServive.StopTask(storageCagez.getGlassId(), types);
            List<StorageTask> cageLists = homeMapper.SelectTaskByState(types);
            List<StorageTask> cageList2 = homeMapper.SelectTaskByState(2);
            if (cageList2!=null) {
                cageLists.add(cageList2.get(0));
                    }
                    // 判断出片任务位置并清除对应玻璃id
                    if (storageCagez.getGlassId() == A02glassid1) {
                        outSliceServive.StopTask(storageCagez.getGlassId(), types);
            for (StorageTask cageList : cageLists) {
                if (cageList.getTaskType().equals("1")) {
                    if(cageList.getGlassId() ==A02glassid1&&DeviceList.get(5)==0){
                        outSliceServive.StopTask(cageList.getGlassId(), types);
                        ClearGlassId("DB101.10.1");
                    } else if (storageCagez.getGlassId() == B01glassid) {
                        outSliceServive.StopTask(storageCagez.getGlassId(), types);
                    }
                    else if(cageList.getGlassId() ==B01glassid&&DeviceList.get(2)==0){
                        outSliceServive.StopTask(cageList.getGlassId(), types);
                        ClearGlassId("DB101.10.2");
                    } else if (storageCagez.getGlassId() == B02glassid) {
                    }
                    else if(cageList.getGlassId() ==B02glassid&&DeviceList.get(3)==0){
                        outSliceServive.StopTask(cageList.getGlassId(), types);
                        ClearGlassId("DB101.10.3");
                        outSliceServive.StopTask(storageCagez.getGlassId(), types);
                    }
                }else if (cageList.getTaskType().equals("2")) {
                    if(cageList.getGlassId() ==A02glassid1&&DeviceList.get(5)==0){
                        outSliceServive.StopTask(cageList.getGlassId(), 2);
                        ClearGlassId("DB101.10.1");
                    }
                    else if(cageList.getGlassId() ==B01glassid&&DeviceList.get(2)==0){
                        outSliceServive.StopTask(cageList.getGlassId(), 2);
                        ClearGlassId("DB101.10.2");
                    }
                    else if(cageList.getGlassId() ==B02glassid&&DeviceList.get(3)==0){
                        outSliceServive.StopTask(cageList.getGlassId(), 2);
                        ClearGlassId("DB101.10.3");
                    }
                }
            }
            // List<StorageCage> storageCages = homeMapper.selectinout(3);
            // for (StorageCage storageCage : storageCages) {
            //     List<StorageCage> storageCagess = homeMapper.SelectStoragesGlassById(storageCage.getGlassId());
            //     for (StorageCage storageCagez : storageCagess) {
            //         if (storageCagez.getState().equals("2")) {// 调拨进片
            //             outSliceServive.StopTask(storageCagez.getGlassId(), 0);
            //         } else {// 出片
            //             outSliceServive.StopTask(storageCagez.getGlassId(), types);
            //         }
            //         // 判断出片任务位置并清除对应玻璃id
            //         if (storageCagez.getGlassId() == A02glassid1&&DeviceList.get(5)==0) {
            //             outSliceServive.StopTask(storageCagez.getGlassId(), types);
            //             ClearGlassId("DB101.10.1");
            //         } else if (storageCagez.getGlassId() == B01glassid&&DeviceList.get(2)==0) {
            //             outSliceServive.StopTask(storageCagez.getGlassId(), types);
            //             ClearGlassId("DB101.10.2");
            //         } else if (storageCagez.getGlassId() == B02glassid&&DeviceList.get(3)==0) {
            //             ClearGlassId("DB101.10.3");
            //             outSliceServive.StopTask(storageCagez.getGlassId(), types);
            //         }
            //     }
            // }
        }
    }
@@ -94,6 +133,7 @@
        if (S7control.getinstance().CheckConnected() == true) {
            // 判断进出还是出片任务
            Short type = homeMapper.SelectTaskByGlassId(glassid);
            if (type != null) {
            if (type == 0) {
                // 进片
                outSliceServive.StopTask(glassid, 0);
@@ -105,6 +145,7 @@
                outSliceServive.StopTask(glassid, 0);
                outSliceServive.StopTask(glassid, 1);
            }
            }
            ClearGlassId(position);
            map.put("message", "200");
        } else {