自动化立体仓库 - WCS系统
*
lsh
2024-10-17 6e5dbbf19de06b0307ac7841bb326d2d88e8d357
src/main/java/com/zy/core/cache/MessageQueue.java
@@ -17,6 +17,8 @@
    // 堆垛机mq交换机
    private static final Map<Integer, LinkedBlockingQueue<Task>> CRN_EXCHANGE = new ConcurrentHashMap<>();
    // RGV mq交换机
    private static final Map<Integer, LinkedBlockingQueue<Task>> RGV_EXCHANGE = new ConcurrentHashMap<>();
    // 输送线mq交换机
    private static final Map<Integer, ConcurrentLinkedQueue<Task>> DEVP_EXCHANGE = new ConcurrentHashMap<>();
    // 条码扫描仪mq交换机
@@ -28,6 +30,10 @@
    // 台车mq交换机
    private static final Map<Integer, ConcurrentLinkedQueue<Task>> CAR_EXCHANGE = new ConcurrentHashMap<>();
    private static final Map<Integer, ConcurrentLinkedQueue<Task>> JAR_EXCHANGE = new ConcurrentHashMap<>();
    private static final Map<Integer, ConcurrentLinkedQueue<Task>> STE_EXCHANGE = new ConcurrentHashMap<>();
    /**
     * mq 交换机初始化
     */
@@ -35,6 +41,9 @@
        switch (type) {
            case Crn:
                CRN_EXCHANGE.put(slave.getId(), new LinkedBlockingQueue<>(1));
                break;
            case Rgv:
                RGV_EXCHANGE.put(slave.getId(), new LinkedBlockingQueue<>(1));
                break;
            case Devp:
                DEVP_EXCHANGE.put(slave.getId(), new ConcurrentLinkedQueue<>());
@@ -51,6 +60,12 @@
            case Car:
                CAR_EXCHANGE.put(slave.getId(), new ConcurrentLinkedQueue<>());
                break;
            case Jar:
                JAR_EXCHANGE.put(slave.getId(), new ConcurrentLinkedQueue<>());
                break;
            case Ste:
                STE_EXCHANGE.put(slave.getId(), new ConcurrentLinkedQueue<>());
                break;
            default:
                break;
        }
@@ -64,6 +79,8 @@
        switch (type) {
            case Crn:
                return CRN_EXCHANGE.get(id).offer(task);
            case Rgv:
                return RGV_EXCHANGE.get(id).offer(task);
            case Devp:
                return DEVP_EXCHANGE.get(id).offer(task);
            case Barcode:
@@ -74,6 +91,10 @@
                return SCALE_EXCHANGE.get(id).offer(task);
            case Car:
                return CAR_EXCHANGE.get(id).offer(task);
            case Jar:
                return JAR_EXCHANGE.get(id).offer(task);
            case Ste:
                return STE_EXCHANGE.get(id).offer(task);
            default:
                return false;
        }
@@ -87,6 +108,8 @@
        switch (type) {
            case Crn:
                return CRN_EXCHANGE.get(id).poll();
            case Rgv:
                return RGV_EXCHANGE.get(id).poll();
            case Devp:
                return DEVP_EXCHANGE.get(id).poll();
            case Barcode:
@@ -97,6 +120,10 @@
                return SCALE_EXCHANGE.get(id).poll();
            case Car:
                return CAR_EXCHANGE.get(id).poll();
            case Jar:
                return JAR_EXCHANGE.get(id).poll();
            case Ste:
                return STE_EXCHANGE.get(id).poll();
            default:
                return null;
        }
@@ -109,6 +136,8 @@
        switch (type) {
            case Crn:
                return CRN_EXCHANGE.get(id).peek();
            case Rgv:
                return RGV_EXCHANGE.get(id).peek();
            case Devp:
                return DEVP_EXCHANGE.get(id).peek();
            case Barcode:
@@ -119,6 +148,10 @@
                return SCALE_EXCHANGE.get(id).peek();
            case Car:
                return CAR_EXCHANGE.get(id).peek();
            case Jar:
                return JAR_EXCHANGE.get(id).peek();
            case Ste:
                return STE_EXCHANGE.get(id).peek();
            default:
                return null;
        }
@@ -128,6 +161,9 @@
        switch (type) {
            case Crn:
                CRN_EXCHANGE.get(id).clear();
                break;
            case Rgv:
                RGV_EXCHANGE.get(id).clear();
                break;
            case Devp:
                DEVP_EXCHANGE.get(id).clear();
@@ -144,6 +180,12 @@
            case Car:
                CAR_EXCHANGE.get(id).clear();
                break;
            case Jar:
                JAR_EXCHANGE.get(id).clear();
                break;
            case Ste:
                STE_EXCHANGE.get(id).clear();
                break;
            default:
                break;
        }