56 lines
1.6 KiB
Python
56 lines
1.6 KiB
Python
|
|
import os
|
|||
|
|
import sys
|
|||
|
|
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|||
|
|
from service.api_http_client import BaseHttpClient
|
|||
|
|
from config.ini_manager import ini_manager
|
|||
|
|
|
|||
|
|
|
|||
|
|
class JBLService(BaseHttpClient):
|
|||
|
|
"""搅拌楼服务类,提供搅拌楼服务相关的API调用"""
|
|||
|
|
|
|||
|
|
def __init__(self):
|
|||
|
|
"""初始化搅拌楼服务"""
|
|||
|
|
super().__init__()
|
|||
|
|
self._host = ini_manager.jbl_api_url
|
|||
|
|
|
|||
|
|
def is_finish_jb(self)->bool:
|
|||
|
|
"""
|
|||
|
|
获取搅拌机状态信息
|
|||
|
|
Returns:
|
|||
|
|
是否下料完成
|
|||
|
|
"""
|
|||
|
|
url = f"{self._host}/API/flag"
|
|||
|
|
|
|||
|
|
# 调用API获取数据
|
|||
|
|
response_data = self.request(method='GET', url=url, timeout=ini_manager.api_timeout,
|
|||
|
|
retries=ini_manager.api_max_retries, retry_interval=ini_manager.api_retry_interval)
|
|||
|
|
|
|||
|
|
# 解析数据
|
|||
|
|
data = response_data.get('records', {})
|
|||
|
|
if not data:
|
|||
|
|
print(f"未获取到搅拌机记录信息")
|
|||
|
|
return None
|
|||
|
|
|
|||
|
|
_flag=data.get('Flag', '')
|
|||
|
|
if _flag=='1xnwq)A':
|
|||
|
|
print(f"搅拌机下料完成")
|
|||
|
|
return True
|
|||
|
|
else:
|
|||
|
|
print(f"搅拌机状态:{_flag}, 下料未完成")
|
|||
|
|
return False
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
app_jbl_service = JBLService()
|
|||
|
|
|
|||
|
|
if __name__ == "__main__":
|
|||
|
|
# 创建楼服务实例
|
|||
|
|
status = app_jbl_service.is_finish_jb()
|
|||
|
|
if status:
|
|||
|
|
print("搅拌机下料完成")
|
|||
|
|
else:
|
|||
|
|
print("搅拌机下料未完成")
|
|||
|
|
|
|||
|
|
|