#!/usr/bin/env python # -*- coding: utf-8 -*- """ 系统内部服务API配置 用于配置与系统内部服务通信的相关参数 """ import os from typing import Dict, Any, Optional, List # 天系统内部服务API端点配置 tf_api_endpoints = { "login": "/sys/ext/login", "create_task": "/task", "choose_amr": "/taskBlock", "add_action": "/taskBlockAction", "closure_task": "/taskBlock/{}/closure", "get_task_block": "/taskBlock/{id}", "get_task_block_action": "/taskBlockAction/{id}", "set_task_in_progress": "/task/vwedtask/{id}/inprogress", "set_task_completed": "/task/vwedtask/{id}/completed", "set_task_terminated": "/task/vwedtask/{id}/terminated", "set_task_failed": "/task/vwedtask/{id}/failed", "set_task_description": "/task/vwedtask/{id}/description", "get_amr_info": "/task/vwedtask/getAmrInfo" } # 系统内部服务API HTTP方法配置 tf_api_methods = { "login": "POST", "create_task": "POST", "choose_amr": "POST", "add_action": "POST", "closure_task": "PUT", "get_task_block": "GET", "get_task_block_action": "GET", "set_task_in_progress": "PUT", "set_task_completed": "PUT", "set_task_terminated": "PUT", "set_task_failed": "PUT", "set_task_description": "PUT", "get_amr_info": "GET" } # 外部任务类型对应的优先级 TASK_TYPE_PRIORITY={ "GT": "6", # 缸体 "GG": "5", # 缸盖 "QZ": "4", # 曲轴 "ZG": "3",# "PHZ": "2", "LG": "1", "OR": "1" } # 外部任务对应所属库区 TASK_TYPE_AREA={ "GT": "ZK/ZKG", "GG": "ZK/ZKG", "QZ": "KW", "ZG": "ZK/ZKG", "PHZ": "AGW/PL", "LG": "AGW/PL" } # 从环境变量读取配置,或使用默认值 TF_API_BASE_URL = os.getenv("TF_API_BASE_URL", "http://192.168.189.206:8080/jeecg-boot") # TF_API_BASE_URL = os.getenv("TF_API_BASE_URL", "http://111.231.146.230:4080/jeecg-boot") TF_API_TIMEOUT = int(os.getenv("TF_API_TIMEOUT", "10")) # 减少超时时间从60秒到10秒 TF_API_RETRY_TIMES = int(os.getenv("TF_API_RETRY_TIMES", "3")) TF_API_MOCK_MODE = False TF_API_TOKEN_HEADER = os.getenv("TF_API_TOKEN_HEADER", "X-Access-Token") # token请求头名称 TF_API_TOKEN = os.getenv("TF_API_TOKEN", "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NDk3NzY1MzEsInVzZXJuYW1lIjoiYWRtaW4ifQ.uRLHZuRQTrR2fHyA-dMzP46yXAa5wdjfdUcmr9PNY4g") TF_WEB_POST = os.getenv("TF_WEB_POST", "false").lower() == "true" # 是否过账,从环境变量读取 sync_disabled_label = "sync_disabled" # 是否限制接口调用的变量名 # MQTT服务配置 MQTT_CONFIG = { "host": os.getenv("MQTT_HOST", "192.168.189.97"), "port": int(os.getenv("MQTT_PORT", "1883")), "username": os.getenv("MQTT_USERNAME", ""), "password": os.getenv("MQTT_PASSWORD", ""), "keepalive": int(os.getenv("MQTT_KEEPALIVE", "60")), "reconnect_delay": int(os.getenv("MQTT_RECONNECT_DELAY", "5")), "max_retries": int(os.getenv("MQTT_MAX_RETRIES", "3")) } # 外部接口叫料模板id CM_ID = os.getenv("CM_ID", "571985c1-cfa5-4186-8acd-6e3868a5e08c") # 送货模板id DG_ID = os.getenv("DG_ID", "e22cacb4-a580-45ba-949e-356f57fa1a43") def get_tf_api_config() -> Dict[str, Any]: """获取天风系统API配置""" return { "base_url": TF_API_BASE_URL, "timeout": TF_API_TIMEOUT, "retry_times": TF_API_RETRY_TIMES, "mock_mode": TF_API_MOCK_MODE, "endpoints": tf_api_endpoints, "methods": tf_api_methods, "token_header": TF_API_TOKEN_HEADER }