TaxAutoPush.java 1.08 KB
package com.diligrp.tax.boot.queue;

import org.springframework.amqp.core.*;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @Author: zhangmeiyang
 * @CreateTime: 2024-09-02 15:51
 * @Version: todo
 */
@Configuration
public class TaxAutoPush {
    public static final String NORMAL_EXCHANGE = "tax-agent.exchange";
    public static final String NORMAL_QUEUE = "tax-agent.queue";
    public static final String NORMAL_ROUTING = "tax-agent.routing.process";

    @Bean("normalExchange")
    public DirectExchange normalExchange() {
        return new DirectExchange(NORMAL_EXCHANGE, true, false);
    }

    @Bean("normalQueue")
    public Queue normalQueue() {
        return new Queue(NORMAL_QUEUE);
    }

    @Bean("normalBinding")
    public Binding normalBinding(@Qualifier("normalQueue") Queue normalQueue, @Qualifier("normalExchange") DirectExchange normalExchange) {
        return BindingBuilder.bind(normalQueue).to(normalExchange).with(NORMAL_ROUTING);
    }
}