from flask import Blueprint

# 首先创建主蓝图，避免子模块导入时出现循环依赖
inbound_bp = Blueprint('inbound', __name__)

# 导入各子模块的蓝图（此时 inbound_bp 已定义，子模块可以安全导入它）
from .buy import inbound_buy_bp
from .semi import inbound_semi_bp
from .base import inbound_base_bp
from .product import inbound_product_bp
from .inbound_summary import bp as inbound_summary_bp
from .stock import bp as inbound_stock_bp

# 导入 service 模块，使其路由装饰器可以正常注册到 inbound_bp 上
from . import service

# 注册子蓝图
inbound_bp.register_blueprint(inbound_buy_bp, url_prefix='/buy')
inbound_bp.register_blueprint(inbound_semi_bp, url_prefix='/semi')
inbound_bp.register_blueprint(inbound_base_bp, url_prefix='/base')
inbound_bp.register_blueprint(inbound_product_bp, url_prefix='/product')
inbound_bp.register_blueprint(inbound_summary_bp, url_prefix='/summary')
inbound_bp.register_blueprint(inbound_stock_bp, url_prefix='/stock')

# service 模块的路由已经直接附加到 inbound_bp，无需再注册子蓝图
