From a950b043c82e66d42c8dec877fea2355a9d99a5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9D=B3=E4=B8=AD=E4=BC=9F?= Date: Mon, 17 Mar 2025 14:58:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 8 + .idea/inspectionProfiles/Project_Default.xml | 6 + .../inspectionProfiles/profiles_settings.xml | 6 + .idea/misc.xml | 7 + .idea/modules.xml | 8 + .idea/tianfeng_task.iml | 12 + README.md | 431 + __pycache__/app.cpython-312.pyc | Bin 0 -> 8261 bytes agents/__init__.py | 0 agents/base_agent.py | 3 + agents/llm/__init__.py | 0 agents/llm/base_llm.py | 3 + agents/llm/openai_llm.py | 3 + agents/prompts/__init__.py | 0 agents/prompts/task_analysis.py | 3 + agents/task_agent.py | 3 + agents/teams/__init__.py | 0 agents/tools/__init__.py | 0 agents/tools/task_tools.py | 3 + api/__init__.py | 0 api/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 203 bytes api/__pycache__/component_api.cpython-312.pyc | Bin 0 -> 4947 bytes api/__pycache__/models.cpython-312.pyc | Bin 0 -> 5462 bytes api/__pycache__/task_api.cpython-312.pyc | Bin 0 -> 14691 bytes api/__pycache__/workflow_api.cpython-312.pyc | Bin 0 -> 9182 bytes api/component_api.py | 133 + api/models.py | 93 + api/task_api.py | 431 + api/workflow_api.py | 184 + app.py | 186 + components/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 210 bytes .../base_components.cpython-312.pyc | Bin 0 -> 8645 bytes .../device_components.cpython-312.pyc | Bin 0 -> 2996 bytes .../flow_components.cpython-312.pyc | Bin 0 -> 7135 bytes .../http_components.cpython-312.pyc | Bin 0 -> 4498 bytes .../robot_components.cpython-312.pyc | Bin 0 -> 6127 bytes .../script_components.cpython-312.pyc | Bin 0 -> 3238 bytes .../site_components.cpython-312.pyc | Bin 0 -> 10043 bytes .../subtask_components.cpython-312.pyc | Bin 0 -> 2553 bytes .../task_components.cpython-312.pyc | Bin 0 -> 5433 bytes components/base_components.py | 222 + components/device_components.py | 89 + components/flow_components.py | 188 + components/http_components.py | 104 + components/robot_components.py | 176 + components/script_components.py | 74 + components/site_components.py | 296 + components/subtask_components.py | 75 + components/task_components.py | 142 + config/__init__.py | 0 config/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 206 bytes config/__pycache__/api_config.cpython-312.pyc | Bin 0 -> 2944 bytes .../component_config.cpython-312.pyc | Bin 0 -> 5312 bytes .../component_detail_config.cpython-312.pyc | Bin 0 -> 12445 bytes .../component_registry.cpython-312.pyc | Bin 0 -> 1273 bytes config/__pycache__/database.cpython-312.pyc | Bin 0 -> 12397 bytes config/__pycache__/settings.cpython-312.pyc | Bin 0 -> 5233 bytes .../__pycache__/task_config.cpython-312.pyc | Bin 0 -> 9101 bytes config/api_config.py | 62 + config/component_config.py | 127 + config/component_detail_config.py | 472 + config/component_registry.py | 23 + config/database.py | 347 + config/settings.py | 108 + config/task_config.py | 290 + core/__init__.py | 0 core/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 204 bytes core/__pycache__/component.cpython-312.pyc | Bin 0 -> 7172 bytes core/__pycache__/context.cpython-312.pyc | Bin 0 -> 4803 bytes core/__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 1542 bytes core/__pycache__/workflow.cpython-312.pyc | Bin 0 -> 13110 bytes core/component.py | 115 + core/context.py | 94 + core/exceptions.py | 31 + core/intelligence/__init__.py | 0 core/intelligence/embedding.py | 3 + core/intelligence/vector_store.py | 3 + core/workflow.py | 287 + data/__init__.py | 11 + data/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 417 bytes data/__pycache__/session.cpython-312.pyc | Bin 0 -> 9791 bytes data/migrations/__init__.py | 0 data/migrations/migration_manager.py | 0 data/migrations/versions.py | 0 data/models/__init__.py | 42 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1200 bytes data/models/__pycache__/base.cpython-312.pyc | Bin 0 -> 5214 bytes .../__pycache__/component.cpython-312.pyc | Bin 0 -> 7697 bytes .../component_parameter.cpython-312.pyc | Bin 0 -> 12707 bytes data/models/__pycache__/task.cpython-312.pyc | Bin 0 -> 8971 bytes .../__pycache__/task_backup.cpython-312.pyc | Bin 0 -> 6126 bytes .../task_edit_history.cpython-312.pyc | Bin 0 -> 7383 bytes .../task_flow_block.cpython-312.pyc | Bin 0 -> 7960 bytes .../__pycache__/task_record.cpython-312.pyc | Bin 0 -> 6240 bytes .../__pycache__/task_variable.cpython-312.pyc | Bin 0 -> 7617 bytes .../__pycache__/task_version.cpython-312.pyc | Bin 0 -> 5462 bytes .../user_operation.cpython-312.pyc | Bin 0 -> 5216 bytes data/models/base.py | 127 + data/models/component.py | 135 + data/models/component_parameter.py | 322 + data/models/subtask.py | 94 + data/models/task.py | 207 + data/models/task_backup.py | 148 + data/models/task_edit_history.py | 159 + data/models/task_flow.py | 262 + data/models/task_flow_block.py | 191 + data/models/task_import_export.py | 122 + data/models/task_input.py | 84 + data/models/task_record.py | 124 + data/models/task_variable.py | 164 + data/models/task_version.py | 143 + data/models/user_operation.py | 107 + data/session.py | 274 + logs/tianfeng_task.log | 12218 ++++++++++++++++ migrations/README.md | 79 + migrations/__init__.py | 3 + migrations/__pycache__/env.cpython-312.pyc | Bin 0 -> 4581 bytes .../migration_helpers.cpython-312.pyc | Bin 0 -> 10411 bytes migrations/alembic.ini | 48 + migrations/alembic.ini.tmp | 48 + migrations/env.py | 136 + migrations/migration_helpers.py | 275 + migrations/script.py.mako | 99 + migrations/versions/001_add_task_id_field.py | 55 + migrations/versions/81b754397c49_增加字段.py | 119 + migrations/versions/822a081a7774_增加字段.py | 109 + migrations/versions/__init__.py | 3 + .../001_add_task_id_field.cpython-312.pyc | Bin 0 -> 1751 bytes .../81b754397c49_增加字段.cpython-312.pyc | Bin 0 -> 5005 bytes .../822a081a7774_增加字段.cpython-312.pyc | Bin 0 -> 4358 bytes requirements.txt | 20 + scripts/__init__.py | 3 + scripts/direct_migration.py | 113 + scripts/generate_migration.py | 192 + scripts/run_migration.py | 341 + services/__init__.py | 0 services/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 208 bytes .../component_service.cpython-312.pyc | Bin 0 -> 2669 bytes .../__pycache__/task_service.cpython-312.pyc | Bin 0 -> 11043 bytes .../workflow_service.cpython-312.pyc | Bin 0 -> 6819 bytes services/agent/__init__.py | 0 services/agent/agent_gate.py | 0 services/component_service.py | 42 + services/intelligence/__init__.py | 0 services/intelligence/embedding.py | 3 + services/task_service.py | 275 + services/workflow_service.py | 148 + tests/__init__.py | 0 utils/__init__.py | 0 utils/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 205 bytes utils/__pycache__/logger.cpython-312.pyc | Bin 0 -> 2484 bytes utils/helpers.py | 45 + utils/logger.py | 61 + utils/validator.py | 52 + 天风任务-编辑页面说明.md | 367 + 天风任务模块需求文档.md | 1437 ++ 157 files changed, 23858 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/tianfeng_task.iml create mode 100644 README.md create mode 100644 __pycache__/app.cpython-312.pyc create mode 100644 agents/__init__.py create mode 100644 agents/base_agent.py create mode 100644 agents/llm/__init__.py create mode 100644 agents/llm/base_llm.py create mode 100644 agents/llm/openai_llm.py create mode 100644 agents/prompts/__init__.py create mode 100644 agents/prompts/task_analysis.py create mode 100644 agents/task_agent.py create mode 100644 agents/teams/__init__.py create mode 100644 agents/tools/__init__.py create mode 100644 agents/tools/task_tools.py create mode 100644 api/__init__.py create mode 100644 api/__pycache__/__init__.cpython-312.pyc create mode 100644 api/__pycache__/component_api.cpython-312.pyc create mode 100644 api/__pycache__/models.cpython-312.pyc create mode 100644 api/__pycache__/task_api.cpython-312.pyc create mode 100644 api/__pycache__/workflow_api.cpython-312.pyc create mode 100644 api/component_api.py create mode 100644 api/models.py create mode 100644 api/task_api.py create mode 100644 api/workflow_api.py create mode 100644 app.py create mode 100644 components/__init__.py create mode 100644 components/__pycache__/__init__.cpython-312.pyc create mode 100644 components/__pycache__/base_components.cpython-312.pyc create mode 100644 components/__pycache__/device_components.cpython-312.pyc create mode 100644 components/__pycache__/flow_components.cpython-312.pyc create mode 100644 components/__pycache__/http_components.cpython-312.pyc create mode 100644 components/__pycache__/robot_components.cpython-312.pyc create mode 100644 components/__pycache__/script_components.cpython-312.pyc create mode 100644 components/__pycache__/site_components.cpython-312.pyc create mode 100644 components/__pycache__/subtask_components.cpython-312.pyc create mode 100644 components/__pycache__/task_components.cpython-312.pyc create mode 100644 components/base_components.py create mode 100644 components/device_components.py create mode 100644 components/flow_components.py create mode 100644 components/http_components.py create mode 100644 components/robot_components.py create mode 100644 components/script_components.py create mode 100644 components/site_components.py create mode 100644 components/subtask_components.py create mode 100644 components/task_components.py create mode 100644 config/__init__.py create mode 100644 config/__pycache__/__init__.cpython-312.pyc create mode 100644 config/__pycache__/api_config.cpython-312.pyc create mode 100644 config/__pycache__/component_config.cpython-312.pyc create mode 100644 config/__pycache__/component_detail_config.cpython-312.pyc create mode 100644 config/__pycache__/component_registry.cpython-312.pyc create mode 100644 config/__pycache__/database.cpython-312.pyc create mode 100644 config/__pycache__/settings.cpython-312.pyc create mode 100644 config/__pycache__/task_config.cpython-312.pyc create mode 100644 config/api_config.py create mode 100644 config/component_config.py create mode 100644 config/component_detail_config.py create mode 100644 config/component_registry.py create mode 100644 config/database.py create mode 100644 config/settings.py create mode 100644 config/task_config.py create mode 100644 core/__init__.py create mode 100644 core/__pycache__/__init__.cpython-312.pyc create mode 100644 core/__pycache__/component.cpython-312.pyc create mode 100644 core/__pycache__/context.cpython-312.pyc create mode 100644 core/__pycache__/exceptions.cpython-312.pyc create mode 100644 core/__pycache__/workflow.cpython-312.pyc create mode 100644 core/component.py create mode 100644 core/context.py create mode 100644 core/exceptions.py create mode 100644 core/intelligence/__init__.py create mode 100644 core/intelligence/embedding.py create mode 100644 core/intelligence/vector_store.py create mode 100644 core/workflow.py create mode 100644 data/__init__.py create mode 100644 data/__pycache__/__init__.cpython-312.pyc create mode 100644 data/__pycache__/session.cpython-312.pyc create mode 100644 data/migrations/__init__.py create mode 100644 data/migrations/migration_manager.py create mode 100644 data/migrations/versions.py create mode 100644 data/models/__init__.py create mode 100644 data/models/__pycache__/__init__.cpython-312.pyc create mode 100644 data/models/__pycache__/base.cpython-312.pyc create mode 100644 data/models/__pycache__/component.cpython-312.pyc create mode 100644 data/models/__pycache__/component_parameter.cpython-312.pyc create mode 100644 data/models/__pycache__/task.cpython-312.pyc create mode 100644 data/models/__pycache__/task_backup.cpython-312.pyc create mode 100644 data/models/__pycache__/task_edit_history.cpython-312.pyc create mode 100644 data/models/__pycache__/task_flow_block.cpython-312.pyc create mode 100644 data/models/__pycache__/task_record.cpython-312.pyc create mode 100644 data/models/__pycache__/task_variable.cpython-312.pyc create mode 100644 data/models/__pycache__/task_version.cpython-312.pyc create mode 100644 data/models/__pycache__/user_operation.cpython-312.pyc create mode 100644 data/models/base.py create mode 100644 data/models/component.py create mode 100644 data/models/component_parameter.py create mode 100644 data/models/subtask.py create mode 100644 data/models/task.py create mode 100644 data/models/task_backup.py create mode 100644 data/models/task_edit_history.py create mode 100644 data/models/task_flow.py create mode 100644 data/models/task_flow_block.py create mode 100644 data/models/task_import_export.py create mode 100644 data/models/task_input.py create mode 100644 data/models/task_record.py create mode 100644 data/models/task_variable.py create mode 100644 data/models/task_version.py create mode 100644 data/models/user_operation.py create mode 100644 data/session.py create mode 100644 logs/tianfeng_task.log create mode 100644 migrations/README.md create mode 100644 migrations/__init__.py create mode 100644 migrations/__pycache__/env.cpython-312.pyc create mode 100644 migrations/__pycache__/migration_helpers.cpython-312.pyc create mode 100644 migrations/alembic.ini create mode 100644 migrations/alembic.ini.tmp create mode 100644 migrations/env.py create mode 100644 migrations/migration_helpers.py create mode 100644 migrations/script.py.mako create mode 100644 migrations/versions/001_add_task_id_field.py create mode 100644 migrations/versions/81b754397c49_增加字段.py create mode 100644 migrations/versions/822a081a7774_增加字段.py create mode 100644 migrations/versions/__init__.py create mode 100644 migrations/versions/__pycache__/001_add_task_id_field.cpython-312.pyc create mode 100644 migrations/versions/__pycache__/81b754397c49_增加字段.cpython-312.pyc create mode 100644 migrations/versions/__pycache__/822a081a7774_增加字段.cpython-312.pyc create mode 100644 requirements.txt create mode 100644 scripts/__init__.py create mode 100644 scripts/direct_migration.py create mode 100644 scripts/generate_migration.py create mode 100644 scripts/run_migration.py create mode 100644 services/__init__.py create mode 100644 services/__pycache__/__init__.cpython-312.pyc create mode 100644 services/__pycache__/component_service.cpython-312.pyc create mode 100644 services/__pycache__/task_service.cpython-312.pyc create mode 100644 services/__pycache__/workflow_service.cpython-312.pyc create mode 100644 services/agent/__init__.py create mode 100644 services/agent/agent_gate.py create mode 100644 services/component_service.py create mode 100644 services/intelligence/__init__.py create mode 100644 services/intelligence/embedding.py create mode 100644 services/task_service.py create mode 100644 services/workflow_service.py create mode 100644 tests/__init__.py create mode 100644 utils/__init__.py create mode 100644 utils/__pycache__/__init__.cpython-312.pyc create mode 100644 utils/__pycache__/logger.cpython-312.pyc create mode 100644 utils/helpers.py create mode 100644 utils/logger.py create mode 100644 utils/validator.py create mode 100644 天风任务-编辑页面说明.md create mode 100644 天风任务模块需求文档.md diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..35410ca --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml +# 基于编辑器的 HTTP 客户端请求 +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..03d9549 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..7986b26 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..c5af0b4 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/tianfeng_task.iml b/.idea/tianfeng_task.iml new file mode 100644 index 0000000..ee0a77e --- /dev/null +++ b/.idea/tianfeng_task.iml @@ -0,0 +1,12 @@ + + + + + + + + + + \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..fb94241 --- /dev/null +++ b/README.md @@ -0,0 +1,431 @@ +# 天风任务模块 + +## 项目概述 + +天风任务模块是AMR(自主移动机器人)调度系统的核心组件之一,用于管理和监控机器人任务的全生命周期。该模块提供了低代码配置工具,使用户能够通过可视化界面设计和配置复杂的机器人任务流程,无需编写大量代码。系统支持任务版本控制、流程编辑、测试执行和源代码生成等功能,大幅提高了机器人任务配置的效率和灵活性。 + +## 项目架构 + +天风任务模块采用分层架构设计,遵循关注点分离原则,各层次职责明确,便于维护和扩展: + +### 1. 架构层次 + +- **表现层(API层)**:处理HTTP请求和响应,提供RESTful API接口 +- **业务逻辑层(Service层)**:实现核心业务逻辑,处理任务和工作流的创建、执行和管理 +- **代理层(Agents层)**:提供智能代理服务,支持任务自动化和优化(已设计,尚未实现) +- **领域层(Core层)**:定义核心领域模型和业务规则,包含工作流引擎和组件系统 +- **数据层(Data层)**:提供数据模型定义和数据访问功能,支持任务、流程、组件等数据的持久化 +- **智能服务层**:提供向量化和向量存储服务,支持知识检索和智能决策(已设计,尚未实现) +- **基础设施层**:提供数据持久化、日志记录、配置管理等基础服务 + +### 2. 设计模式 + +- **工厂模式**:用于组件的创建和注册 +- **策略模式**:用于实现不同类型组件的执行逻辑 +- **观察者模式**:用于任务状态变更通知 +- **命令模式**:用于任务执行和撤销操作 +- **组合模式**:用于构建组件树和工作流结构 +- **仓储模式**:用于数据访问和持久化 + +### 3. 系统架构图 + +``` + +-------------------+ + | 用户界面 | + +--------+----------+ + | + v ++------------------+ +----------+---------+ +| | | | +| 外部知识库 +------------->+ API层 | +| | | | ++------------------+ +----+------+--------+ + | | + | | + +----------------------------+ | + | | + v v ++----------+---------+ +---------+----------+ +| | | | +| Agent系统 |<------------>| 业务服务层 | +| (包含LLM功能) | | | ++----+---------------+ +--------+-----------+ + | | + | | + | v + | +--------+-----------+ + | | | + | | 工作流引擎 | + | | | + | +--------+-----------+ + | | + | | + | v + | +--------+-----------+ + | | | + +----------------------------->+ 组件系统 | + | | | + | +--------+-----------+ + | | + v v ++----+---------------+ +--------+-----------+ +| | | | +| 智能服务层 | | 外部系统/设备 | +| (向量化和向量存储) | | | ++----+---------------+ +--------------------+ + | + | + v ++----+---+ +| | +|向量数据库| +| | ++--------+ +``` + +> **注意**:架构图中的Agent系统、外部知识库、智能服务层和向量数据库部分已完成设计,但尚未实现。这些组件将在后续版本中逐步开发和集成。 + +## 项目结构 + +``` +tianfeng_task/ +├── api/ # API接口定义 +│ ├── task_api.py # 任务相关API +│ ├── workflow_api.py # 工作流相关API +│ └── component_api.py # 组件相关API +├── services/ # 业务服务层 +│ ├── task_service.py # 任务服务 +│ ├── workflow_service.py # 工作流服务 +│ ├── component_service.py # 组件服务 +│ └── editor_service.py # 编辑器服务 +├── agents/ # 智能代理层(已设计,尚未实现) +│ ├── base_agent.py # 代理基类 +│ ├── task_agent.py # 任务代理 +│ ├── llm/ # 大语言模型集成 +│ ├── prompts/ # 提示词模板 +│ ├── tools/ # 代理工具集 +│ └── teams/ # 代理团队协作 +├── components/ # 组件实现 +│ ├── base_components.py # 基础组件 +│ ├── flow_components.py # 流程控制组件 +│ ├── http_components.py # HTTP请求组件 +│ ├── robot_components.py # 机器人调度组件 +│ ├── script_components.py # 脚本组件 +│ ├── site_components.py # 库位组件 +│ ├── subtask_components.py # 子任务组件 +│ ├── task_components.py # 任务组件 +│ └── device_components.py # 设备组件 +├── core/ # 核心功能模块 +│ ├── component.py # 组件基类定义 +│ ├── context.py # 执行上下文 +│ ├── exceptions.py # 异常定义 +│ └── workflow.py # 工作流引擎 +├── data/ # 数据存储 +│ ├── models/ # 数据模型定义 +│ │ ├── base.py # 基础模型 +│ │ ├── task.py # 任务相关模型 +│ │ ├── task_flow.py # 任务流程模型 +│ │ ├── task_variable.py # 任务变量模型 +│ │ ├── task_edit_history.py # 编辑历史模型 +│ │ ├── component.py # 组件模型 +│ │ ├── robot.py # 机器人模型 +│ │ ├── storage.py # 库位模型 +│ │ ├── device.py # 设备模型 +│ │ └── user_operation.py # 用户操作日志模型 +│ ├── session.py # 数据库会话管理 +│ └── repositories/ # 数据仓储实现 +├── intelligent/ # 智能服务层(已设计,尚未实现) +│ ├── vectorization/ # 向量化服务 +│ ├── retrieval/ # 知识检索服务 +│ ├── embedding/ # 嵌入模型服务 +│ └── vector_store/ # 向量存储服务 +├── migrations/ # 数据库迁移 +│ ├── versions/ # 迁移版本 +│ ├── env.py # 迁移环境配置 +│ ├── script.py.mako # 迁移脚本模板 +│ └── alembic.ini # Alembic配置 +├── scripts/ # 脚本工具 +│ ├── generate_migration.py # 生成迁移脚本 +│ └── run_migration.py # 执行迁移脚本 +├── utils/ # 工具函数 +│ ├── logger.py # 日志工具 +│ ├── validators.py # 数据验证工具 +│ └── helpers.py # 辅助函数 +├── config/ # 配置文件 +│ ├── database.py # 数据库配置 +│ ├── component_registry.py # 组件注册配置 +│ └── settings.py # 应用设置 +├── logs/ # 日志文件 +├── tests/ # 测试代码 +│ ├── unit/ # 单元测试 +│ ├── integration/ # 集成测试 +│ └── fixtures/ # 测试数据 +├── app.py # 应用入口 +└── requirements.txt # 依赖包列表 +``` + +## 核心功能 + +### 1. 任务管理 + +- **任务创建**:支持创建普通任务和定时任务 +- **任务监控**:实时监控任务执行状态和进度 +- **任务操作**:支持启动、暂停、取消、重试等操作 +- **任务历史**:记录任务执行历史和结果 +- **版本控制**:支持任务版本管理,可以回滚到历史版本 +- **任务测试**:支持在测试环境中执行任务,验证任务配置 + +### 2. 任务编辑器 + +天风任务模块提供了强大的可视化编辑器,支持以下功能: + +- **流程图设计**:通过拖拽方式设计任务流程图 +- **属性配置**:配置组件和连接的属性 +- **变量管理**:定义和管理任务执行过程中的变量 +- **撤销/重做**:支持编辑操作的撤销和重做 +- **源代码生成**:自动生成任务执行的源代码 +- **版本备份**:支持任务配置的版本备份和恢复 + +### 3. 组件库 + +天风任务模块提供了丰富的组件库,用户可以通过拖拽组件和配置参数的方式设计复杂的任务流程: + +- **子任务组件**:支持任务的模块化和复用 +- **脚本组件**:支持编写自定义JavaScript脚本 +- **HTTP请求组件**:支持与外部系统进行通信 +- **任务组件**:提供任务数据管理和状态控制功能 +- **流程组件**:提供条件判断、循环、并行执行等流程控制功能 +- **基础组件**:提供数据验证、ID生成、时间处理等基础功能 +- **库位组件**:提供库位管理和操作功能 +- **机器人调度组件**:提供机器人选择、控制和状态监控功能 +- **设备组件**:提供与外部设备通信的功能 + +### 4. 智能代理系统(已设计,尚未实现) + +- **任务代理**:自动分析和优化任务流程 +- **LLM集成**:集成大语言模型,提供智能决策支持 +- **代理工具**:提供丰富的工具集,支持代理执行各种操作 +- **团队协作**:支持多代理协作完成复杂任务 +- **知识检索**:从外部知识库中检索相关信息,辅助决策 + +### 5. 智能服务层(已设计,尚未实现) + +- **向量化服务**:将文本、图像等数据转换为向量表示 +- **知识检索**:基于语义相似度进行知识检索 +- **嵌入模型**:提供多种嵌入模型,支持不同类型数据的向量化 +- **向量存储**:高效存储和检索向量数据 + +### 6. 工作流引擎 + +- **流程执行**:解析和执行任务流程图 +- **上下文管理**:管理任务执行过程中的变量和状态 +- **错误处理**:提供异常捕获和处理机制 +- **并行执行**:支持多分支并行执行 +- **动态加载**:支持动态加载和执行组件 + +### 7. 数据模型 + +系统提供了完善的数据模型,支持任务管理的各个方面: + +- **任务模型**:存储任务基本信息和配置 +- **任务版本**:管理任务的不同版本 +- **任务记录**:记录任务的执行情况 +- **任务流程节点**:存储流程图中的节点信息 +- **任务流程连接**:存储流程图中的连接信息 +- **任务变量定义**:管理任务中使用的变量 +- **任务编辑历史**:记录编辑操作,支持撤销/重做 +- **任务备份**:存储任务的备份数据 + +## 执行业务流程 + +### 系统启动流程 + +1. 应用启动(app.py) +2. 加载配置信息(config模块) +3. 初始化日志系统(utils.logger) +4. 初始化数据库连接(data.session) +5. 注册所有组件(config.component_registry) +6. 注册API路由(api模块) +7. 启动HTTP服务(uvicorn) + +### 任务创建流程 + +1. 用户在天风任务主页面点击"定义新任务"按钮 +2. 前端发送创建任务请求到API层(/api/tasks) +3. API层调用任务服务(task_service.py)创建任务记录 +4. 系统创建任务并返回任务ID +5. 前端跳转到任务编辑页面 +6. 用户通过拖拽组件设计任务流程 +7. 前端发送保存流程请求到API层(/api/workflows) +8. API层调用工作流服务(workflow_service.py)保存流程配置 +9. 系统将流程配置保存到数据库,创建新版本 + +### 任务编辑流程 + +1. 用户打开任务编辑页面 +2. 系统加载任务的最新版本和流程图数据 +3. 用户通过拖拽组件和连接设计流程图 +4. 用户配置组件属性和变量 +5. 系统记录每一步编辑操作,支持撤销/重做 +6. 用户点击保存按钮,系统创建新版本 +7. 用户可以点击测试按钮,在测试环境中执行任务 +8. 用户可以点击生成源码按钮,系统生成任务执行代码 + +### 任务执行流程 + +1. 用户在任务列表中选择任务并点击"执行"按钮 +2. 前端发送执行任务请求到API层(/api/tasks/{id}/execute) +3. API层调用任务服务(task_service.py)创建任务记录 +4. 任务服务加载任务配置和工作流定义 +5. 任务服务初始化执行上下文(context.py) +6. 任务服务调用工作流引擎(workflow.py)执行任务 +7. 工作流引擎解析任务流程图并按顺序执行各组件 +8. 组件执行结果存储在上下文中,供后续组件使用 +9. 系统实时更新任务状态和进度 +10. 任务执行完成后,系统记录执行结果和日志 + +### 智能任务执行流程(已设计,尚未实现) + +1. 用户在任务列表中选择任务并点击"智能执行"按钮 +2. 前端发送智能执行任务请求到API层 +3. API层调用Agent系统进行任务分析和优化 +4. Agent系统从外部知识库检索相关知识 +5. Agent系统基于LLM和检索到的知识生成执行计划 +6. Agent系统调用业务服务层执行优化后的任务 +7. 业务服务层调用工作流引擎执行任务 +8. 执行过程中,Agent系统持续监控任务状态 +9. 遇到异常情况时,Agent系统自动调整执行策略 +10. 任务执行完成后,Agent系统生成执行报告和优化建议 + +## 交互方式 + +天风任务模块提供多种交互方式,满足不同场景的需求: + +### 1. 用户界面交互 + +- **任务列表界面**: + - 展示所有任务及其状态 + - 提供任务筛选、搜索和排序功能 + - 支持任务的创建、编辑、删除、执行等操作 + - 显示任务执行状态和进度 + +- **任务编辑界面**: + - 提供可视化的流程设计工具 + - 左侧组件面板:展示可用组件 + - 中央流程图编辑区:通过拖拽设计任务流程 + - 右侧属性面板:配置组件参数 + - 顶部工具栏:保存、运行、测试、撤销、重做等操作 + +- **任务监控界面**: + - 实时显示任务执行状态和进度 + - 展示任务执行日志和变量值 + - 提供任务暂停、取消、重试等操作 + +### 2. API接口交互 + +系统提供RESTful API接口,支持第三方系统集成: + +- **任务管理API**: + - `GET /api/tasks`:获取任务列表 + - `POST /api/tasks`:创建新任务 + - `GET /api/tasks/{id}`:获取任务详情 + - `PUT /api/tasks/{id}`:更新任务 + - `DELETE /api/tasks/{id}`:删除任务 + - `POST /api/tasks/{id}/execute`:执行任务 + - `POST /api/tasks/{id}/cancel`:取消任务 + +- **工作流管理API**: + - `GET /api/workflows/{id}`:获取工作流定义 + - `POST /api/workflows`:保存工作流定义 + - `GET /api/workflows/{id}/validate`:验证工作流定义 + +- **编辑器API**: + - `POST /api/editor/save`:保存编辑内容 + - `POST /api/editor/undo`:撤销操作 + - `POST /api/editor/redo`:重做操作 + - `POST /api/editor/backup`:创建备份 + - `GET /api/editor/history`:获取编辑历史 + +- **智能服务API**(已设计,尚未实现): + - `POST /api/intelligent/analyze`:分析任务流程 + - `POST /api/intelligent/optimize`:优化任务流程 + - `POST /api/intelligent/search`:知识检索 + - `POST /api/intelligent/vectorize`:向量化数据 + +## 技术栈 + +- **后端**:FastAPI (Python) +- **数据库**:SQLAlchemy ORM,支持MySQL、PostgreSQL等 +- **前端**:React + Ant Design(低代码编辑器) +- **API文档**:Swagger UI(自动生成) +- **工作流引擎**:自研基于DAG的工作流引擎 +- **组件系统**:可扩展的组件注册和执行系统 +- **数据迁移**:Alembic +- **智能代理**:基于大语言模型的智能代理系统(已设计,尚未实现) +- **向量数据库**:支持高效的向量存储和检索(已设计,尚未实现) +- **嵌入模型**:支持文本、图像等数据的向量化(已设计,尚未实现) + +## 部署说明 + +### 环境要求 + +- Python 3.8+ +- 数据库(MySQL/PostgreSQL) +- Node.js 14+(前端开发) + +### 安装步骤 + +1. 克隆代码库 +2. 安装依赖:`pip install -r requirements.txt` +3. 配置数据库连接:修改`config/database.py` +4. 初始化数据库:`python -m scripts.run_migration` +5. 启动应用:`python app.py` + +## 使用示例 + +### 创建简单任务 + +1. 进入天风任务主页面 +2. 点击"定义新任务"按钮 +3. 输入任务名称"测试任务",选择"普通任务"类型 +4. 在编辑页面拖入"选择执行机器人"组件 +5. 配置机器人选择参数 +6. 拖入"机器人通用动作"组件,配置目标站点 +7. 连接组件,形成执行流程 +8. 保存任务并执行 + +### 使用版本控制 + +1. 打开现有任务的编辑页面 +2. 修改任务流程或组件配置 +3. 点击"保存"按钮,系统自动创建新版本 +4. 在版本历史中可以查看所有历史版本 +5. 可以选择任意历史版本进行查看或恢复 + +### 使用撤销/重做功能 + +1. 在编辑页面进行操作(如添加节点、移动节点等) +2. 如需撤销操作,点击工具栏中的"撤销"按钮 +3. 如需重做已撤销的操作,点击"重做"按钮 +4. 系统会记录编辑会话中的所有操作历史 + +## 常见问题 + +1. **任务执行失败怎么办?** + - 查看任务执行日志,定位失败原因 + - 在测试环境中验证任务配置 + - 修改任务配置,解决问题后重试 + +2. **如何调试复杂任务?** + - 使用测试功能验证任务配置 + - 查看执行日志和变量值 + - 使用条件断点和单步执行 + +3. **如何管理大量任务?** + - 使用任务模板功能创建可复用的任务模板 + - 使用子任务功能将复杂任务拆分为多个子任务 + - 使用标签和分类功能组织任务 + +## 联系方式 + +如有问题或建议,请联系系统管理员或开发团队。 \ No newline at end of file diff --git a/__pycache__/app.cpython-312.pyc b/__pycache__/app.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a77215db65fb0709398aae4eb21a194c08085fa7 GIT binary patch literal 8261 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 qlB0FI!3U?|%TcVj@xi literal 0 HcmV?d00001 diff --git a/agents/__init__.py b/agents/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/agents/base_agent.py b/agents/base_agent.py new file mode 100644 index 0000000..ed63e99 --- /dev/null +++ b/agents/base_agent.py @@ -0,0 +1,3 @@ +""" +Agent基类 +""" \ No newline at end of file diff --git a/agents/llm/__init__.py b/agents/llm/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/agents/llm/base_llm.py b/agents/llm/base_llm.py new file mode 100644 index 0000000..ef52205 --- /dev/null +++ b/agents/llm/base_llm.py @@ -0,0 +1,3 @@ +""" +LLM基类 +""" \ No newline at end of file diff --git a/agents/llm/openai_llm.py b/agents/llm/openai_llm.py new file mode 100644 index 0000000..52c1308 --- /dev/null +++ b/agents/llm/openai_llm.py @@ -0,0 +1,3 @@ +""" +OpenAI LLM实现 +""" \ No newline at end of file diff --git a/agents/prompts/__init__.py b/agents/prompts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/agents/prompts/task_analysis.py b/agents/prompts/task_analysis.py new file mode 100644 index 0000000..8599a87 --- /dev/null +++ b/agents/prompts/task_analysis.py @@ -0,0 +1,3 @@ +""" +任务分析提示词 +""" \ No newline at end of file diff --git a/agents/task_agent.py b/agents/task_agent.py new file mode 100644 index 0000000..3d387ab --- /dev/null +++ b/agents/task_agent.py @@ -0,0 +1,3 @@ +""" +任务Agent +""" \ No newline at end of file diff --git a/agents/teams/__init__.py b/agents/teams/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/agents/tools/__init__.py b/agents/tools/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/agents/tools/task_tools.py b/agents/tools/task_tools.py new file mode 100644 index 0000000..2feaecd --- /dev/null +++ b/agents/tools/task_tools.py @@ -0,0 +1,3 @@ +""" +任务相关工具 +""" \ No newline at end of file diff --git a/api/__init__.py b/api/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/api/__pycache__/__init__.cpython-312.pyc b/api/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b46a0339b989dfad2d53876639c8bb927b2d47cf GIT binary patch literal 203 zcmX@j%ge<81igzcrGx0lAOanHW&w&!XQ*V*Wb|9fP{ah}eFmxd3ew_i6%$&VT2vg9 zWn^k>5#y3toL!P%5c72V(kFZ8Je$`3WcRk1mvb7PZEON^o-JG)^K{9|my7$J?B4yf zYaxn6NoHbRT54W;d`V()c1&VHW=wp1W?p7Ve7s&k zff_K7A@HZA5NI;fhj|ptkW!a0ZIYS%>Yv>)jMN3D>C}((S7j0ghW1C#U1?Wx>@e*e zYwx+|o^#K+ckg%3S^vdiF(PP}&gaLM90>gb59FpU6Sof$2>l$zP>e{T6cHj)s*oy0 zhRBpUq$V(5mDHrPA#F+*(n(`7sZSX~28mWDjVV*eB+;6rIb{i1Qr3`F8f%lbR86Qx zqIJm)soGF&${w;yV|~(*a)z8KSI9*m6{55;L(Di%ykmM>Rq`w32CnJtvXdbXcG;@-oC&dj4uRp?4;~9Dq zl${E5fMO%@WPc_-79WQdY=LZim||dIhUy1PVr>=U7{xG=acsy`#T8wZ#mZKXq_Y$3 z8RNF7?BawOw!VC2YT?R<%kN%Ve(4!lLz|_kvG{3G%|^zVGp33#0}fj0vJ>GH-fvVs zY254K_fz=Y{uZvoQAEH6H6RwxNG(CiRHc_+U=FbwnVZncRHawsh;futacBVjU<*Py zk|Pp^ij+)oBuC2EE2rjE36nfi=|M&vBQB`k1|Z=^pmUvS6h}FYw0ah=&f?RNTEZ$* zl|H9sE%GQ)BU6=L@ma^|67~vTrsR3pix;6$IJ2BSXW+<$QSV-`&^-nUiResY;({sn9aTAx;ImH*%&J zc|j9XUm!=&Cd6)(=Qks|D`#QbryKDT>Cg!lw~!3P{6vk`e8z8R2+(EF(H9%xEc$#6fgJ zg&ULN2qV_5VTFGlm(V#?j8V5AdJQ5s!Bsd%n4i66vizLI+J}Zr{ZuQyYH&k+&#@Ao8 zuHKDkPy}dvtfIdBvL@lsOS_<@NQSHFZx9-t=_kJ=+D( z_SvSZP4k}P(?<&C=DfLGFt-;x@YlMcA-7n+LZro3)S+g7u@<##gheFf1^1S`yIXK~ zPag&=FmUwEGz`o)9OCtLu$#6HUf=pzT_^b7*naV((CD8YEZ7?PwqC*3TR70m*Z5}qLe2LI z=C+Gz!Mriq#?MMykYJL z_K-JvG??B?0{=`yRYKqPg!~T97l1Y6u7H&FbeN#tW+UmWaLI5 zedbc^b*+vBa#AQoOT*yMiSVJJhX)5}KPX8-lir3YeD&xZ_<>&!y%RrhsqZ7DD@5Oq z8Mq>6aMcGvi^k;v{eb*<3<&18@F)ix2Lu~uXWkhQoPn$UdFMmZ#=qO@7BCWa2%a5< zMhGkX_6M#S`TC=Uy0(in@9A98sU6lLQd_L|#$CbLdT}4`@PjPIni^xxxIWf)UyjbT zelRxsC~xmwi#5E%r-;6KVrqL}6S|D4-**FbZ6hYHZ8G$E$ZK64eRlG?T?6!W4+;D; zj%u{U%4N7{l_^N#P?4_>xY26Bf%Q^buZreSLV=hphZGPJ)it=TGA~m~oky?=)DjB7 zWGRHcyBc1v0tQ$U6=-pU92O+FtM7uO0=F_G6`)mlrBsX+uKCc#I#Scq+rYvju1SjE#5f{U0E@_hb9qLswjLdfpyb z3sGFJ14O%sslc|tE_AI2)7N$x`h4WIgB^XF$?KanKwtNfz#sHAi(1HeP(ac+M8W3} zJn%;-jlVxd-B<+b$!wg)h$&Tq`s`#Zl4j#k8h>+&-g0rv_?7n-F0*J1AJH9^zTT^* zOAOkCmz1j6rZpm^G8zgx{NY~;(NN9ffgik)`M4A;m9R!!(MjLp42`oIy#brn($c>w zq+3Sg#3NOBQiPUbu&B;vppwO}`Au{io=A$%qW%CZHIbxx>4$-bvpn+=Jc=Yi5X-1* z9(DZRydpRDICn`V!mt)C|zD5`1+Bkv#h5$D{{mqr^=|+G literal 0 HcmV?d00001 diff --git a/api/__pycache__/models.cpython-312.pyc b/api/__pycache__/models.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a2be127a538255df50a010d1033ad6abac00c11f GIT binary patch literal 5462 zcmb_gZEO?w8Nc(L?en|y<^%#EA-u$pn6NMg6RdL+11Z5E64Y`HvRvO09Q?MsbHUxH z%qUXmKsbBDMcS5rT3Mh$6Xv9uJpc2{#R*%h z?WB9|f4}GX|L?iy^?&zAhr>$2@w4lXr*6aOW4x&zrpjRX4>U#Hq6CVk1X?h}=(vG5 z#2KE6vpgF&^2WG{H_^yrV&*uYYLPTm=J@vgX=cN5GM zYl=7X%`|18#1=T6(|uJ1>euEr45B;2i|F z0d5z$d8Q)0j-U=eojP*DpRi@A9~|8n>JrTgDq{QmXDAKX~{;D=9dzp?bAdrLQdsYzQuMdNvm zDmxO5C@SMmWK?!6Dk~~?Jf%dFiEvCck3|(x3dg*RYI!~^i^r0J7*mahqGC)?Ew6@S zQ6a1(B`>Wu4=3ZPWI{|RBT+e$d{vY(Fv&gPA3qwJIDH}z8a^I8Gzr`*d7XfD;ePF=NASOOR%D!&&I2IPm)mpAS7Z-pp2M|PIK&139?QQ4^5q>On5JE1{t6;;Bh*dmCLLj> zsEFZ=lcFxs-=U|QR|t`tS;KWVOGTJV^d+iV;a>xe$W3GLHXQGoYxUbk+|Lo$S|SFz zvc?4p+-$)*F`7uF6<-?T@{_hqqrd^mls=(smG3&EmyyJQWjF3+8G_fr1o#hUam0X#hz-&Sa;P z(S+o{p%DsTT2xKJ<0p^#$E2?S<~67W-=In>GRFPjphS{u5XKUcEpW;&0jWCv^`d*P z=J>r&)^93two>b!d&>Kn`Z;oFD@b3rBl?|oEy3pEwb&JqR3ubQGB~blWN99;|d0x zNk$BgNZ+!ffw2>gCe9{R=De68flT5vc&D*+*CVh|@#kPc2?@rZj9Cd5w%D&6DOnv? zMoUetMYdH_AB9$^kFLXGc@D_h>O-rAx-Bv!KA`EM`U1*E@Gu-MB7;d z%2!V?0IBRzinoJIg9LERWL1uLtjX0XJ_n`1@nTXse>Rr9Ktht3OEo2uQXIA_jtdnY zNoJMO^4#=FEEzd3<6cFIhF^(^a!}>u$T<;Pzt`Cq%k}68fc~VElXaxScuOK3vq-|m zCmlgDilm{J4kLzSADnU=2zZ1zqjzWaSZ-f_c=q4|yR+2On?0KA$oI}}Twr@k1G}<^ zW{%`0@>}xq+;INlTfRb@w_x9~!0syT=*KM2v-$D4-uz2%ISa1s3v7SMJCHpxb1tXk zhv!=IM`m9yIJXtq0nOR?{0N-2qvq@%1EhC0?x;j)&&0(hEmi?D>oCpjG`N^0E;g=m zaiz7xJUhr(q1o$#0NOSQ65u-4c9(Ye)^MKhKROQ| zy~265omOL^sX7lb$6U`kk<;7=CS}yts!0PE#YkF#dIP;QsM@qri8r#>(wGTB&_IiS z21g_@NYtYOjRAiQF(jBKGR6^@tACIfs2T8z#;#sv5C+L|L{@&;ea#&sOA*n zkF{Jejv`3Vfimv=;XOC+dAxa~uz4gqmg~z8%?=dV%Etx@u6XNOk@y90^lx2_voBgC zDsp7M4|A=M_BPQDWx-L8(uz#AG&n(~L8AIi04uoGC@Y^TpC8rT^dD~G!= z;-6VL$ZSV#i7(m(Uc?zlPQoc)0P0WQD71B?UuY?`pD7 zAt{HSY;dP9ES0?sv~mtQ!D?=Of8#)h1cYcMNzGch5$b*jdaaE(n&b8(u`Jvpo*{*`Udx7m8hzb;_z=u@Z=O(Jz^T@OFk!Rau&(4Bp=YnTop~;tZ zmQ4)ZoMUnmWeNsmyPLEV()8{;$iM~Xwj&OgGDp(^I!_i2&}9y1M=P@# OdLTFYcUV>1MEx5%KC_Vk literal 0 HcmV?d00001 diff --git a/api/__pycache__/task_api.cpython-312.pyc b/api/__pycache__/task_api.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b027e8b35171ef76972d28682b1ec5f5b80a4b4a GIT binary patch literal 14691 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 literal 0 HcmV?d00001 diff --git a/api/component_api.py b/api/component_api.py new file mode 100644 index 0000000..f03d918 --- /dev/null +++ b/api/component_api.py @@ -0,0 +1,133 @@ +# api/component_api.py +from typing import Dict, Any, List, Optional +from fastapi import APIRouter, HTTPException +from pydantic import BaseModel +from services.component_service import ComponentService +from config.component_config import ( + ComponentDiscovery, + ComponentCategory +) +from config.component_detail_config import ComponentDetailConfig +from config.api_config import ( + ApiResponseCode, + ApiResponseMessage +) +from api.models import ApiResponse, ComponentDiscoverInput + +# 创建路由器 +router = APIRouter(prefix="/component", tags=["组件管理"]) + +# 创建服务实例 +component_service = ComponentService() + +@router.get("/components", response_model=ApiResponse) +async def get_components(): + """获取所有组件类型及其详细信息""" + try: + # 获取所有组件类型 + component_types = component_service.get_all_component_types() + + # 获取组件类型中文名称映射 + component_type_names = ComponentDetailConfig.get_component_type_names() + + # 构建组件类型信息,包含英文标识和中文名称 + component_type_info = [] + for component_type in component_types: + # 获取组件类型的中文名称,如果没有则使用英文标识 + type_name = component_type_names.get(component_type, component_type) + component_type_info.append({ + "type": component_type, # 英文标识 + "name": type_name, # 中文名称 + }) + + # 按类别分组 + component_categories = {} + for component_type in component_types: + # 根据组件类型推断类别 + category = ComponentCategory.BASE # 默认类别 + + # 使用配置文件中的映射关系确定组件类别 + mapping = ComponentCategory.get_mapping() + for prefix, cat in mapping.items(): + if component_type.startswith(prefix): + category = cat + break + + if category not in component_categories: + component_categories[category] = [] + + component_categories[category].append(component_type) + + # 获取所有组件的详细配置 + component_details = ComponentDetailConfig.get_all_components() + + # 按组件类型分组 + component_details_by_type = {} + for component in component_details: + component_type = component["type"] + if component_type not in component_details_by_type: + component_details_by_type[component_type] = [] + component_details_by_type[component_type].append(component) + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Component.FETCHED, + "data": { + "component_types": component_types, + "component_type_info": component_type_info, # 新增:包含中文名称的组件类型信息 + "component_categories": component_categories, + "component_details": component_details, + "component_details_by_type": component_details_by_type + } + } + except Exception as e: + raise HTTPException( + status_code=ApiResponseCode.SERVER_ERROR, + detail=f"获取组件类型失败: {str(e)}" + ) + +@router.get("/components/{component_type}", response_model=ApiResponse) +async def get_components_by_type(component_type: str): + """获取指定类型的组件详细信息""" + try: + # 获取指定类型的组件详细配置 + components = ComponentDetailConfig.get_components_by_type(component_type) + + if not components: + return { + "code": ApiResponseCode.NOT_FOUND, + "message": f"未找到类型为 {component_type} 的组件", + "data": {"components": []} + } + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Component.FETCHED, + "data": {"components": components} + } + except Exception as e: + raise HTTPException( + status_code=ApiResponseCode.SERVER_ERROR, + detail=f"获取组件详细信息失败: {str(e)}" + ) + +@router.post("/components/discover", response_model=ApiResponse) +async def discover_components(discover_input: ComponentDiscoverInput): + """自动发现并注册组件""" + try: + # 自动发现并注册组件 + component_service.auto_discover_components(discover_input.package_name) + + # 获取所有组件类型 + component_types = component_service.get_all_component_types() + + return { + "code": ApiResponseCode.SUCCESS, + "message": f"{ApiResponseMessage.Component.DISCOVERED},共发现 {len(component_types)} 个组件", + "data": {"component_types": component_types} + } + except Exception as e: + raise HTTPException( + status_code=ApiResponseCode.SERVER_ERROR, + detail=f"自动发现并注册组件失败: {str(e)}" + ) \ No newline at end of file diff --git a/api/models.py b/api/models.py new file mode 100644 index 0000000..90084f6 --- /dev/null +++ b/api/models.py @@ -0,0 +1,93 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +API模型模块 +包含API请求和响应的数据模型 +""" + +from typing import Dict, Any, List, Optional, Literal +from pydantic import BaseModel, Field, validator +from config.component_config import ComponentDiscovery +from config.task_config import TASK_TYPE_CONFIG, TaskType, TaskStatus +from enum import Enum + +# 获取所有任务类型的key值 +TASK_TYPE_KEYS = list(TASK_TYPE_CONFIG.keys()) + +# 排序字段枚举 +class SortField(str, Enum): + CREATED_AT = "created_at" + UPDATED_AT = "updated_at" + NAME = "name" + +# 排序方式枚举 +class SortOrder(str, Enum): + ASC = "asc" + DESC = "desc" + +# 通用响应模型 +class ApiResponse(BaseModel): + code: int = Field(..., description="状态码") + message: str = Field(..., description="消息") + data: Optional[dict] = Field(None, description="数据") + +# 任务相关模型 +class TaskInput(BaseModel): + name: str = Field(..., description="任务名称") + task_type: TaskType = Field( + ..., + description="任务类型,可选值为:" + ", ".join([t.value for t in TaskType]), + example=TaskType.NORMAL + ) + +class TaskBatchInput(BaseModel): + tasks: List[TaskInput] + +class TaskIdList(BaseModel): + task_ids: List[str] + +class TaskTypeInfo(BaseModel): + key: str + name: str + description: str + +# 工作流相关模型 +class WorkflowInput(BaseModel): + name: str + workflow_type: Optional[str] = "normal" + description: Optional[str] = "" + blocks: Optional[List[Dict[str, Any]]] = [] + variables: Optional[Dict[str, Any]] = {} + schedule: Optional[Dict[str, Any]] = None + +class WorkflowUpdateInput(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + blocks: Optional[List[Dict[str, Any]]] = None + variables: Optional[Dict[str, Any]] = None + schedule: Optional[Dict[str, Any]] = None + +class WorkflowExecuteInput(BaseModel): + task_inputs: Optional[Dict[str, Any]] = None + +class WorkflowImportInput(BaseModel): + workflow_json: str + +# 组件相关模型 +class ComponentDiscoverInput(BaseModel): + package_name: Optional[str] = ComponentDiscovery.DEFAULT_PACKAGE + +# 任务编辑相关模型 +class TaskUpdateInput(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + task_type: Optional[TaskType] = None + blocks: Optional[List[Dict[str, Any]]] = None + variables: Optional[Dict[str, Any]] = None + schedule: Optional[Dict[str, Any]] = None + +class TaskEditInput(BaseModel): + task_id: str + blocks: List[Dict[str, Any]] + variables: Optional[Dict[str, Any]] = {} \ No newline at end of file diff --git a/api/task_api.py b/api/task_api.py new file mode 100644 index 0000000..b870358 --- /dev/null +++ b/api/task_api.py @@ -0,0 +1,431 @@ +# api/task_api.py +from typing import Dict, Any, List, Optional +from fastapi import APIRouter, HTTPException, Depends, Query +from pydantic import BaseModel, Field +from services.task_service import TaskService +from core.exceptions import TianfengTaskError +from config.task_config import ( + get_all_task_types, + get_task_type_name, + get_task_type_description, + TaskTypeConfig, + TaskStatusConfig, + DefaultConfig, + TASK_TYPE_CONFIG, + TASK_TYPE_NORMAL, + TASK_TYPE_SCHEDULED, + DEFAULT_TASK_DESCRIPTION, + DEFAULT_TEMPLATE_DESCRIPTION, + TaskType, + TaskStatus +) +from api.models import ApiResponse, TaskInput, TaskBatchInput, TaskIdList, TaskTypeInfo, SortField, SortOrder, TaskUpdateInput, TaskEditInput + +# 创建路由器 +router = APIRouter(tags=["任务管理"]) + +# 创建服务实例 +task_service = TaskService() + +@router.get("/tasks", response_model=ApiResponse) +async def get_tasks( + status: Optional[TaskStatus] = Query(None, description="任务状态"), + task_type: Optional[TaskType] = Query(None, description="任务类型"), + name: Optional[str] = Query(None, description="任务名称(模糊查询)"), + is_scheduled: Optional[bool] = Query(None, description="是否为定时任务"), + created_start: Optional[int] = Query(None, description="创建时间起始(毫秒时间戳)"), + created_end: Optional[int] = Query(None, description="创建时间结束(毫秒时间戳)"), + sort_by: SortField = Query(default=SortField.CREATED_AT, description="排序字段"), + sort_order: SortOrder = Query(default=SortOrder.DESC, description="排序方式"), + page: int = Query(1, ge=1, description="页码"), + page_size: int = Query(10, ge=1, le=100, description="每页数量") +): + """ + 获取任务列表 + + 支持多种筛选条件、排序和分页 + """ + try: + # 获取任务列表 + tasks, total = task_service.get_all_tasks( + status=status, + task_type=task_type, + name=name, + is_scheduled=is_scheduled, + created_start=created_start, + created_end=created_end, + sort_by=sort_by, + sort_order=sort_order, + page=page, + page_size=page_size + ) + + # 构建分页信息 + pagination = { + "page": page, + "page_size": page_size, + "total": total, + "total_pages": (total + page_size - 1) // page_size + } + + return { + "code": 200, + "message": "获取任务列表成功", + "data": { + "tasks": tasks, + "pagination": pagination + } + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"获取任务列表失败: {str(e)}") + + +@router.get("/task/types", response_model=ApiResponse) +async def get_task_types(): + """获取任务类型列表""" + try: + # 从配置文件中获取任务类型列表 + task_types = get_all_task_types() + # 添加value字段(枚举值) + for task_type in task_types: + # 从TaskType枚举中获取value + try: + # 尝试通过名称获取枚举值 + task_type["value"] = TaskType[task_type["key"]].value + except (KeyError, AttributeError): + # 如果枚举中没有对应的值,则使用key的小写作为value + task_type["value"] = task_type["key"] + + return { + "code": 200, + "message": "获取任务类型列表成功", + "data": task_types + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"获取任务类型列表失败: {str(e)}") + +@router.post("/task/create", response_model=ApiResponse) +async def create_task(task_input: TaskInput): + """创建任务""" + try: + # 获取任务类型值(处理枚举) + task_type = task_input.task_type + if hasattr(task_type, "value"): + task_type_value = task_type.value + else: + task_type_value = task_type + + # 从配置文件中获取任务类型信息 + task_type_info = TaskTypeConfig.DETAILS.get(task_type_value, {}) + + # 根据任务类型决定是否为定时任务 + is_scheduled = task_type_value == TASK_TYPE_SCHEDULED + + # 创建任务,设置固定参数 + task = task_service.create_task( + name=task_input.name, + task_type=task_type_value, # 使用key作为task_type + description=DEFAULT_TASK_DESCRIPTION, # 使用配置文件中的默认备注 + template_desc=DEFAULT_TEMPLATE_DESCRIPTION, # 使用配置文件中的默认模板描述 + is_scheduled=is_scheduled # 根据任务类型决定 + ) + + # 在返回结果中添加任务类型的中文名称 + if "task_type_name" not in task and task_type_info: + task["task_type_name"] = task_type_info.get("name", task_type_value) + + return { + "code": 200, + "message": "创建任务成功", + "data": task + } + except ValueError as e: + raise HTTPException(status_code=400, detail=str(e)) + except Exception as e: + raise HTTPException(status_code=500, detail=f"创建任务失败: {str(e)}") + + +@router.get("/task/{task_id}", response_model=ApiResponse) +async def get_task(task_id: str): + """获取任务详情""" + try: + # 获取任务 + task = task_service.get_task_by_id(task_id) + + if not task: + return { + "code": 404, + "message": f"任务不存在: {task_id}", + "data": None + } + + return { + "code": 200, + "message": "获取任务详情成功", + "data": task + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"获取任务详情失败: {str(e)}") + + +@router.delete("/task/{task_id}", response_model=ApiResponse) +async def delete_task(task_id: str): + """删除任务""" + try: + # 删除任务 + success = task_service.delete_task(task_id) + + # 如果任务不存在,返回成功但提示任务不存在 + if not success: + return { + "code": 200, + "message": f"任务不存在或已被删除: {task_id}", + "data": None + } + + return { + "code": 200, + "message": "删除任务成功", + "data": None + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"删除任务失败: {str(e)}") + + +@router.post("/task/{task_id}/execute", response_model=ApiResponse) +async def execute_task(task_id: str): + """执行任务""" + try: + # 执行任务 + task = task_service.execute_task(task_id) + + return { + "code": 200, + "message": "执行任务成功", + "data": task + } + except ValueError as e: + # 任务不存在 + return { + "code": 404, + "message": str(e), + "data": None + } + except TianfengTaskError as e: + # 业务逻辑错误 + return { + "code": 400, + "message": str(e), + "data": None + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"执行任务失败: {str(e)}") + +@router.post("/task/{task_id}/cancel", response_model=ApiResponse) +async def cancel_task(task_id: str): + """取消任务""" + try: + # 取消任务 + task = task_service.cancel_task(task_id) + + return { + "code": 200, + "message": "取消任务成功", + "data": task + } + except ValueError as e: + # 任务不存在或状态不允许取消 + return { + "code": 400, + "message": str(e), + "data": None + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"取消任务失败: {str(e)}") + + + +@router.delete("/task/batch", response_model=ApiResponse) +async def batch_delete_tasks(id_list: TaskIdList): + """批量删除任务""" + try: + # 批量删除任务 + deleted_count = 0 + not_found_ids = [] + + for task_id in id_list.task_ids: + if task_service.delete_task(task_id): + deleted_count += 1 + else: + not_found_ids.append(task_id) + + # 构建消息 + message = f"批量删除任务成功,共删除 {deleted_count} 个任务" + if not_found_ids: + message += f",有 {len(not_found_ids)} 个任务不存在或已被删除" + + return { + "code": 200, + "message": message, + "data": { + "deleted_count": deleted_count, + "total_count": len(id_list.task_ids), + "not_found_ids": not_found_ids + } + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"批量删除任务失败: {str(e)}") + + +@router.put("/task/{task_id}", response_model=ApiResponse) +async def update_task(task_id: str, task_update: TaskUpdateInput): + """更新任务基本信息""" + try: + # 检查任务是否存在 + task = task_service.get_task_by_id(task_id) + if not task: + return { + "code": 404, + "message": f"任务 {task_id} 不存在", + "data": None + } + + # 更新任务信息 + updated_task = task_service.update_task( + task_id=task_id, + name=task_update.name, + description=task_update.description, + task_type=task_update.task_type, + blocks=task_update.blocks, + variables=task_update.variables, + schedule=task_update.schedule + ) + + return { + "code": 200, + "message": "更新任务成功", + "data": {"task": updated_task} + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"更新任务失败: {str(e)}") + +@router.post("/task/edit", response_model=ApiResponse) +async def edit_task(task_edit: TaskEditInput): + """编辑任务流程和变量""" + try: + # 检查任务是否存在 + task = task_service.get_task_by_id(task_edit.task_id) + if not task: + return { + "code": 404, + "message": f"任务 {task_edit.task_id} 不存在", + "data": None + } + + # 更新任务流程和变量 + updated_task = task_service.update_task_workflow( + task_id=task_edit.task_id, + blocks=task_edit.blocks, + variables=task_edit.variables + ) + + return { + "code": 200, + "message": "编辑任务成功", + "data": {"task": updated_task} + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"编辑任务失败: {str(e)}") + +@router.get("/task/{task_id}/edit", response_model=ApiResponse) +async def get_task_edit_info(task_id: str): + """获取任务编辑信息""" + try: + # 获取任务信息 + task = task_service.get_task_by_id(task_id) + if not task: + return { + "code": 404, + "message": f"任务 {task_id} 不存在", + "data": None + } + + # 获取可用的子任务列表(排除当前任务自身) + available_subtasks = [] + try: + all_tasks, _ = task_service.get_all_tasks(page=1, page_size=1000) # 获取所有任务 + for t in all_tasks: + if t["task_id"] != task_id: # 排除当前任务 + available_subtasks.append({ + "task_id": t["task_id"], + "name": t["name"] + }) + except Exception as e: + # 如果获取任务列表失败,记录错误但继续执行 + print(f"获取可用子任务列表失败: {str(e)}") + # 获取组件详细信息 + from config.component_detail_config import ComponentDetailConfig + component_details = ComponentDetailConfig.get_all_components() + # 获取组件类型中文名称映射 + component_type_names = ComponentDetailConfig.get_component_type_names() + + # 按组件类型分组并添加中文名称 + component_types = {} + for component in component_details: + component_type = component["type"] + + # 如果该类型还未添加到结果中,先创建类型信息 + if component_type not in component_types: + # 获取组件类型的中文名称,如果没有则使用英文标识 + type_name = component_type_names.get(component_type, component_type) + component_types[component_type] = { + "type": component_type, # 英文标识 + "name": type_name, # 中文名称 + "components": [] # 该类型下的组件列表 + } + + # 添加组件到对应类型下 + component_types[component_type]["components"].append(component) + + # 不再将子任务列表嵌入到组件类型对象中 + if "subtask" in component_types: + component_types["subtask"]["available_subtasks"] = available_subtasks + + return { + "code": 200, + "message": "获取任务编辑信息成功", + "data": { + "task": task, + "component_types": component_types, + "available_subtasks": available_subtasks # 作为单独的字段返回 + } + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"获取任务编辑信息失败: {str(e)}") + +@router.get("/tasks/available-subtasks", response_model=ApiResponse) +async def get_available_subtasks(current_task_id: Optional[str] = None): + """获取可用的子任务列表""" + try: + # 获取所有任务 + all_tasks, _ = task_service.get_all_tasks(page=1, page_size=1000) + + # 过滤出可用的子任务(如果提供了当前任务ID,则排除当前任务) + available_subtasks = [] + for task in all_tasks: + if not current_task_id or task["task_id"] != current_task_id: + available_subtasks.append({ + "task_id": task["task_id"], + "name": task["name"] + }) + + return { + "code": 200, + "message": "获取可用子任务列表成功", + "data": { + "subtasks": available_subtasks + } + } + except Exception as e: + raise HTTPException(status_code=500, detail=f"获取可用子任务列表失败: {str(e)}") + diff --git a/api/workflow_api.py b/api/workflow_api.py new file mode 100644 index 0000000..9471bea --- /dev/null +++ b/api/workflow_api.py @@ -0,0 +1,184 @@ +# api/workflow_api.py +from typing import Dict, Any, List, Optional +from fastapi import APIRouter, HTTPException, Depends, Query +from pydantic import BaseModel, Field +from services.workflow_service import WorkflowService +from core.exceptions import TianfengTaskError +from core.workflow import WorkflowDefinition +from config.api_config import ApiResponseCode, ApiResponseMessage +from api.models import ApiResponse, WorkflowInput, WorkflowUpdateInput, WorkflowExecuteInput, WorkflowImportInput + +# 创建路由器 +router = APIRouter(prefix="/workflow", tags=["工作流管理"]) + +# 创建服务实例 +workflow_service = WorkflowService() + +@router.get("/workflows", response_model=ApiResponse) +async def get_workflows( + type: Optional[str] = Query(None, description="工作流类型") +): + """获取工作流列表""" + try: + # 获取工作流列表 + workflows = workflow_service.get_all_workflows(type) + + # 转换为字典列表 + workflow_dicts = [wf.to_dict() for wf in workflows] + + return { + "code": ApiResponseCode.SUCCESS, + "message": "获取工作流列表成功", + "data": workflow_dicts + } + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"获取工作流列表失败: {str(e)}") + +@router.get("/workflows/{workflow_id}", response_model=ApiResponse) +async def get_workflow(workflow_id: str): + """获取工作流详情""" + try: + # 获取工作流 + workflow = workflow_service.get_workflow_by_id(workflow_id) + + if not workflow: + raise HTTPException(status_code=ApiResponseCode.NOT_FOUND, detail=f"找不到工作流: {workflow_id}") + + return { + "code": ApiResponseCode.SUCCESS, + "message": "获取工作流详情成功", + "data": workflow.to_dict() + } + except HTTPException: + raise + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"获取工作流详情失败: {str(e)}") + +@router.post("/workflows", response_model=ApiResponse) +async def create_workflow(workflow_input: WorkflowInput): + """创建工作流""" + try: + # 创建工作流 + workflow = workflow_service.create_workflow( + name=workflow_input.name, + workflow_type=workflow_input.workflow_type, + description=workflow_input.description, + blocks=workflow_input.blocks, + variables=workflow_input.variables, + schedule=workflow_input.schedule + ) + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Workflow.CREATED, + "data": workflow.to_dict() + } + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"创建工作流失败: {str(e)}") + +@router.put("/workflows/{workflow_id}", response_model=ApiResponse) +async def update_workflow(workflow_id: str, workflow_input: WorkflowUpdateInput): + """更新工作流""" + try: + # 更新工作流 + workflow = workflow_service.update_workflow( + workflow_id=workflow_id, + name=workflow_input.name, + description=workflow_input.description, + blocks=workflow_input.blocks, + variables=workflow_input.variables, + schedule=workflow_input.schedule + ) + + if not workflow: + raise HTTPException(status_code=ApiResponseCode.NOT_FOUND, detail=f"找不到工作流: {workflow_id}") + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Workflow.UPDATED, + "data": workflow.to_dict() + } + except HTTPException: + raise + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"更新工作流失败: {str(e)}") + +@router.delete("/workflows/{workflow_id}", response_model=ApiResponse) +async def delete_workflow(workflow_id: str): + """删除工作流""" + try: + # 删除工作流 + success = workflow_service.delete_workflow(workflow_id) + + if not success: + raise HTTPException(status_code=ApiResponseCode.NOT_FOUND, detail=f"找不到工作流: {workflow_id}") + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Workflow.DELETED, + "data": None + } + except HTTPException: + raise + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"删除工作流失败: {str(e)}") + +@router.post("/workflows/{workflow_id}/execute", response_model=ApiResponse) +async def execute_workflow(workflow_id: str, execute_input: WorkflowExecuteInput): + """执行工作流""" + try: + # 获取工作流 + workflow = workflow_service.get_workflow_by_id(workflow_id) + + if not workflow: + raise HTTPException(status_code=ApiResponseCode.NOT_FOUND, detail=f"找不到工作流: {workflow_id}") + + # 执行工作流 + result = workflow_service.execute_workflow( + workflow=workflow, + task_inputs=execute_input.task_inputs + ) + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Workflow.EXECUTED, + "data": result + } + except HTTPException: + raise + except TianfengTaskError as e: + raise HTTPException(status_code=ApiResponseCode.BAD_REQUEST, detail=str(e)) + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"执行工作流失败: {str(e)}") + +@router.post("/workflows/import", response_model=ApiResponse) +async def import_workflow(import_input: WorkflowImportInput): + """导入工作流""" + try: + # 导入工作流 + workflow = workflow_service.import_workflow(import_input.workflow_json) + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Workflow.IMPORTED, + "data": workflow.to_dict() + } + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"导入工作流失败: {str(e)}") + +@router.get("/workflows/{workflow_id}/export", response_model=ApiResponse) +async def export_workflow(workflow_id: str): + """导出工作流""" + try: + # 导出工作流 + workflow_json = workflow_service.export_workflow(workflow_id) + + return { + "code": ApiResponseCode.SUCCESS, + "message": ApiResponseMessage.Workflow.EXPORTED, + "data": {"workflow_json": workflow_json} + } + except TianfengTaskError as e: + raise HTTPException(status_code=ApiResponseCode.BAD_REQUEST, detail=str(e)) + except Exception as e: + raise HTTPException(status_code=ApiResponseCode.SERVER_ERROR, detail=f"导出工作流失败: {str(e)}") \ No newline at end of file diff --git a/app.py b/app.py new file mode 100644 index 0000000..cd01204 --- /dev/null +++ b/app.py @@ -0,0 +1,186 @@ +# app.py +from fastapi import FastAPI, Request, HTTPException +from fastapi.responses import JSONResponse +from fastapi.middleware.cors import CORSMiddleware +import logging +import time +from utils.logger import setup_logger +from config.component_registry import register_all_components +from config.settings import ( + AppConfig, ServerConfig, ApiConfig, CorsConfig +) +from api.task_api import router as task_router +from api.workflow_api import router as workflow_router +from api.component_api import router as component_router +from core.exceptions import TianfengTaskError +from config.api_config import ApiResponseCode, ApiResponseMessage +from config.component_config import ComponentCategoryConfig +# 导入数据库相关模块 +from config.database import DBConfig, CacheConfig, db_session +import data.models # 导入所有模型以确保它们被注册 +from data.models.component import ComponentCategory, ComponentType, Component, ComponentCategoryEnum +# 导入Lifespan +from contextlib import asynccontextmanager + +# 设置日志 +logger = setup_logger() + +# 定义Lifespan上下文管理器 +@asynccontextmanager +async def lifespan(app: FastAPI): + """ + 应用生命周期管理 + 在应用启动时执行初始化操作,在应用关闭时执行清理操作 + """ + # 应用启动时执行 + logger.info("应用启动") + + yield # 应用运行期间 + + # 应用关闭时执行 + logger.info("应用关闭") + DBConfig.shutdown_session() + +# 创建FastAPI应用,使用Lifespan +app = FastAPI( + title=ApiConfig.TITLE, + description=ApiConfig.DESCRIPTION, + version=ApiConfig.VERSION, + lifespan=lifespan +) + +# 添加CORS中间件 +app.add_middleware( + CORSMiddleware, + allow_origins=CorsConfig.ALLOW_ORIGINS, + allow_credentials=CorsConfig.ALLOW_CREDENTIALS, + allow_methods=CorsConfig.ALLOW_METHODS, + allow_headers=CorsConfig.ALLOW_HEADERS, +) + +# 初始化数据库 +def init_database(): + """初始化数据库,创建所有表""" + try: + logger.info("开始初始化数据库...") + # 初始化数据库表 + DBConfig.init_db() + logger.info("数据库表创建成功") + + # 初始化基础数据 + logger.info("开始初始化基础数据...") + init_base_data(db_session) + logger.info("基础数据初始化成功") + + return True + except Exception as e: + logger.error(f"数据库初始化失败: {str(e)}") + raise + +def init_base_data(db_session): + """初始化基础数据""" + try: + # 导入需要的模型 + # 检查是否已存在组件分类 + existing_categories = db_session.query(ComponentCategory).filter(ComponentCategory.is_deleted == False).all() + if existing_categories: + logger.info("基础数据已存在,跳过初始化") + return + + # 创建组件分类 + categories = [] + for category_enum in ComponentCategoryEnum: + category = ComponentCategory( + name=ComponentCategoryConfig.get_category_name(category_enum), + code=category_enum, + description=ComponentCategoryConfig.get_category_description(category_enum), + icon=f"icon-{category_enum.value}", + order=ComponentCategoryConfig.get_category_order(category_enum) + ) + categories.append(category) + db_session.add(category) + + db_session.commit() + logger.info(f"创建了 {len(categories)} 个组件分类") + + # 这里可以添加更多基础数据的初始化,如组件类型、系统组件等 + + except Exception as e: + db_session.rollback() + logger.error(f"基础数据初始化失败: {str(e)}") + raise + +# 初始化数据库 +init_database() + +# 注册所有组件 +register_all_components() + +# 注册API路由 +app.include_router(task_router, prefix=ApiConfig.PREFIX) +app.include_router(workflow_router, prefix=ApiConfig.PREFIX) +app.include_router(component_router, prefix=ApiConfig.PREFIX) + +# 请求中间件 +@app.middleware("http") +async def add_process_time_header(request: Request, call_next): + start_time = time.time() + response = await call_next(request) + process_time = time.time() - start_time + response.headers["X-Process-Time"] = str(process_time) + return response + +# 数据库会话中间件 +@app.middleware("http") +async def db_session_middleware(request: Request, call_next): + try: + response = await call_next(request) + return response + finally: + db_session.remove() + +# 全局异常处理 +@app.exception_handler(TianfengTaskError) +async def tianfeng_task_error_handler(request: Request, exc: TianfengTaskError): + """处理天风任务模块异常""" + return JSONResponse( + status_code=ApiResponseCode.BAD_REQUEST, + content={ + "code": ApiResponseCode.BAD_REQUEST, + "message": str(exc), + "data": None + } + ) + +@app.exception_handler(Exception) +async def global_exception_handler(request: Request, exc: Exception): + """处理通用异常""" + logger.exception("未处理的异常") + return JSONResponse( + status_code=ApiResponseCode.SERVER_ERROR, + content={ + "code": ApiResponseCode.SERVER_ERROR, + "message": f"{ApiResponseMessage.SERVER_ERROR}: {str(exc)}", + "data": None + } + ) + +# 健康检查接口 +@app.get(f"{ApiConfig.PREFIX}/health") +async def health_check(): + """健康检查""" + return { + "code": ApiResponseCode.SUCCESS, + "message": "服务正常", + "data": { + "app_name": AppConfig.NAME, + "app_version": AppConfig.VERSION, + "status": "healthy" + } + } + +# 主函数 +if __name__ == "__main__": + import uvicorn + logger.info(f"启动天风任务模块服务,调试模式: {AppConfig.DEBUG}") + uvicorn.run("app:app", host=ServerConfig.HOST, port=ServerConfig.PORT, reload=ServerConfig.RELOAD) \ No newline at end of file diff --git a/components/__init__.py b/components/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/components/__pycache__/__init__.cpython-312.pyc b/components/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2216b50b0841e79ece681de6af3404c36c31dd6a GIT binary patch literal 210 zcmX@j%ge<81g#4%rGx0lAOanHW&w&!XQ*V*Wb|9fP{ah}eFmxdng=ADtztrpQ;UjY zvW!fPEn-|!i?d7e3u2ybU;1S4oM+S8pX}Zi^KwqZvyDwa&a;J!W1cQq`EqgJlijJmtkIamWj77{q761*`N>Bg* literal 0 HcmV?d00001 diff --git a/components/__pycache__/base_components.cpython-312.pyc b/components/__pycache__/base_components.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..afd3bf77e71aed66f97bad1ccf36a610c90f2707 GIT binary patch literal 8645 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 literal 0 HcmV?d00001 diff --git a/components/__pycache__/device_components.cpython-312.pyc b/components/__pycache__/device_components.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..11e936b38540cb05b507d388ba945647597f13d8 GIT binary patch literal 2996 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 OGCO+DGXY9$!~O%jtE=7s literal 0 HcmV?d00001 diff --git a/components/__pycache__/script_components.cpython-312.pyc b/components/__pycache__/script_components.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fb538e70300d1da447680e61dcba03b4d7e781c1 GIT binary patch literal 3238 zcmb_fTWlN06`k2#E?=t$Wr-3c(YB(8O#9>XYRdoXXehi=Td*Dsc|4^H|~8t{+b=3zp;tg#L8gf5e(*#g8WFq3Kzjq z&d)`8KOYtR0%kHkVu^}=F>3W&jkyr9MeTk&MjTSD6OE?B&97p4fXg!ueFG`tEK;nh z_<%3V9#jnd&OO)Lwyn3rddDv7r5UGBO0fMMPiB9m!#A4lz%;?b#iOpWQZzB+t07}Dcp#)oNbRrU%YaY7v= z5tFqL2~X*v%K43tP?>D>z+euk$d4hCoPzzl!l{C4QN=ON1G+Iz;b#TEbw==6Xv1rX z*ofh*x=o@1jJ|vgDiT#skXWb^P-8nQ^emVgqa52bi6*vc4HE~Vt$ zX}eE0Q-lRE#oLiyXX=tzvFP>YER2)932I0TG09KtGj*F^MO3O$4&#&nr)}EQnxmv( zz7|AT7(ty#cbmE{M9!uxidAPgGFq~lVBk^Q!=t$AQExL>Dz@Fc`~tntnbz+BfK!&Y zELZVWG|m4IUBy28Fm;x(FNflaO2w%l2}U)@A}*{@`;{OG2S+2S<`W4E6}5)qFXHT43V%$rCRH232iRk52{GetmEC(}ne) zy$d83c)IZR`X}$eWc~J?z}nsWPw)J6b$NO1C%3mL^l&gXrpCr)cCA3jBsMKjeY6VI zX?;^O)XMIg(A76vzsy2?6PIrrfuZ{B@6?JT;Q3a-wat8?+2 zOQU($v9wqck-es1>(1G_7gLMz72Bzj4K;g<&24kZo5`ZPbuMx_|IH zEw%QS@v2mRqb>8+N6GB|bB`uhq;JC+nhz{GKdif5_t5sJD}V4pw&`N}RS?&>3X(S` zc{5`xQg?BmC;gp&t=6^t9r56%*xq?}WXW~s^=w;jdZ;MXS4<--($POP9L#o}{tf?V zU|D=Po$a`oZy3l*1OF*m*~))wEfAvL9XoUBDEjQEeXx)J?5igSef;lz78noTw^5rc z$AVE6fbEdwXk1A|*cc%HMj{xgXsoiV#6z-781s@2)-iS^hoHNUHlRm@6&B(&JE-DF zW7#~5{wlPWgig!LIMbL3EuP5ycz*wL#O9>Ww5AQ3svD?~t4aEQC|{ltRsTLf?R7Kp zH>((n%9D?O`^BdpmvOpwJ@fS4>*bP67{_iaWEKz@h3qAOno-C=u(Rz}mdxJ}DXicm zzJdr3)Qr!gFe_wug8ALi%oT&^N2d`AK-o+21{t%o+|hv6D+M)W0dn1?kW8=#+0l|b z&~l}m0*PCoSn}t<=DjllQaGKZl+lvhM75xpGK9?YnLAgAoiXQ*mfS+@NpS>z;|vp4 zlc*~(#aK|;d~2V*%uYfm4vB9G>uOXZtcn=S2uug)Fo8jZNLbUUFsaUH`B`pn<4Md0wCh>qFOu3Q~7Y>RwcqhF7Go6+8OVLz%|UrTrxK>`>Ptg~ z-t)QM^ZDKj`9l}8u7N7Md2%*Srf0?0QLJl9*BB`_Ob)a7yvRBu<&0E4#-^-04u2X8 zHcQnPNy){!|T3*F$hkZ4q7rs=~XQslj@iHM8T)?nQYeP_y`l`%M*e@%>kW1?f zjcOJt%_vaRM$~b5O{hN%sK#-2oRiwll}YLAWB^PU-nA%nB_3n^OyIEaPZ8lmIn?tP zbn4IO$Yb1^#jXNw&EeL}xja7noa@2BJ)RB3z8gH^d?iCv`X2me&{j3hw)N-nSDtgt T*u7}qK=5I<$DT2P5rF>!dwd5< literal 0 HcmV?d00001 diff --git a/components/__pycache__/site_components.cpython-312.pyc b/components/__pycache__/site_components.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3d59e77c45aa85ab2cac47b5f281a5d9c5193d32 GIT binary patch literal 10043 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 DLNLS_ literal 0 HcmV?d00001 diff --git a/components/__pycache__/subtask_components.cpython-312.pyc b/components/__pycache__/subtask_components.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a711d35e917462637ee88484d222f08d9ad8fddc GIT binary patch literal 2553 zcmZ`*U2Gdg5Z=8zpMCb(anq(aZj&Y{X>bi8YE=Ry<)?8K3WOIhqKH&&RZxWl5`stpR6!*kc(HN8)~bjil0e@a0s_GcyXQN%1lWhY zo!M_^zMb8fy|27pH=ymzg|ElHq@y31U^mektW43t>p%rjphA^P!88};(tMOp3sC_w z9iMWf#i*EeMxCZCq+Dq!Dw$(P%ANK^JrHmJImZLG@f%-Nya*c-2Oa{da|);~Bwpkj zx{DSt>di|bcWw<8-HY$dEX>a@zIf)R`Kg8ZkKET8Cd3mVl1%7?e=w6Lu16;HWHu8| zg*YM&XVVke49e)l-yH6VC-f}NhamAabt4#OG1as@nZ-v&Q`yNw2p>x(5OHd`XY{ys zBw>*;KY}H!Y@vhK0RmA-L&T{t%Bvg_kOPUMTsxf`v${pP7*x zv9|c}M^K(PD5D%AZd0dZ;%P+uO$M4((^~EGQ_*NLlVsHr2bn>iJz-IRh{$HdEKV9r ztgf5eZ^x--cxUVhYFmqqZ`-l`?pOqANA&DOZ1Lms3!k1|dhG>TsAJbpKezP3^Hf+m zb2hek?%nHWUv3oge@y7fcxDu3#uRqgF?Psi@z!ECu^X!Xi9B&yaeOv#XjN(Lw`P2l zo`z|)d=6Y|Yp=HTmD~E>kt=OGrrou`#%f?|Ik5Ge`{za~f!)*I+AZzVa$N))HoYBw zBU}xJ%faxs!8=awpB|oRtF^Sga^mEP;^A*v`f43rvukEsi%-tDYvDVq;a%nMuDL`d zyn9A2M!)voR(FC8{dE~g-m0s&?CPC0W;0h@JL*EeGy)ek^;b3xl;n-nQ_r?)cck1M zxfHE*KU$JIe^}dlb^WcSzI*5P&kdD&_g2>LEBW^=i@@JecY~hWYn{}0cWv{X%aSA5 z`l?v>ntZK*%Wmd#<)`EI#(;`emoE(Kmg7GH5PIU6I3A zTf0h|cYd;c?&$nobGMbchbyg-k{tP~-oh;Wsj(XMx%l9~@F4hNP>Kxkm%(6UkiR_W zpyPuf7jY@(4OJB4R+MyB&7}|>%ZhR|7f-RfOC_hGsM&;~VD|puKGw0<7jLKCyI_U( z0B>WRYS@cDt2iTL0>_Yt#f6Mq^1$r&(nZzMGjd z$*@fj*H9x2_u>1g$R2rZFYW3)gm9VTpzym3z`ior@;$igJFxXTu;UsGmf)Hy43=TA dcuxiP{>nW7;Ru|`uK;tf!UJy0azkl)`WsupxBCD9 literal 0 HcmV?d00001 diff --git a/components/__pycache__/task_components.cpython-312.pyc b/components/__pycache__/task_components.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..eed46e7029292a6d561c4203ba9a3485a7a8aba2 GIT binary patch literal 5433 zcmcJT>2Djy6~Jc?k}HbhWl;yE$U0&vjE=W$XF+RvM*v3UIF>BBovjuH>osSB!x?mkcSR&gd8_fYXo|5GXjERXQuM){ROC+0Y zy}}u7SBwV<*4NY*D)j3>-(E%EQB%LZLf--U4OR3TYU(>H^j)CuuA=X(sqd-K_k#Y8 zD*CRP`i&L(KG1KfqVJw=4zwhlu$=bWw{9(e_{E)Dv$tL|l%mn!8kdB@|W@bUMIj&QjaUlqRTV4~N3<$f6WdL*e4i z=?}hGS?h(uJdsI|0ftzK333uE^Rh*@9%oyj?>H-QvwYAt%?B)+_b`rj1O_Wjlk|en zoxgsv{O9z_@2{3Evojn>n;%{#K4~kf6pJY?#a>~J3Ytxdi7+!f=+{+| z<<0kDNQys30{p1Posg$B%gInQDQi|^4`BTosH`NSCuMOeL_;yH1^OefHL^(Mcasq+ zOGbyH*}{pqDxXp{ha#)u$qB^gy=JYJEb$0;&IU65&Y#!NUjtUn4V z7HIFp^q(Y@4nH^krXo{id~$f-o@d98$jS*dF*Uw?E?(UqsJM&E5-9KkpwUWAqg0L$m?8+oF z6AQu+v@}1KK9+v@+~{20qTo2|_`p#Rx^hBSCUEJ^1!2#Uw>iDzT>G50sN0$oTGPD? zLf4|pH`lNR(~{B4f+mP!JQR~fQL~F;EFmSMSayiwyU9?r*kcn#DG?S$iri_OqEd=X zQ9opt32nnN8V;>DGekzgrdjeYzI~N2PLG`knI~>jbKX7Ak1&a8wRa(b&js zGTY|EIOgWHPqx5}D>vW2cmAu*7EB$`Sz*5T!MgeW0}795z7ID}wrHGe3XQp%d77~f zW;N4ELYp65I>o*KPC(+pgwX|5GhwdGggG!_%cx;iZkSQCDamkHR+O=Tg+d@E6n!4u zfn9Z`Z7S3U^#D(suunJ1W-Q?nEBIAtg9aE#%ITdo_QbS@9@JAI+iVXHYJb%oLU~_6yt{hYbj!s(fU}`)izl@fG9|iZJkw<%s|c^xD?2{_s&_C zyshbdSx?v2+3d$}z-%ABkm+%OO;@GIg{na`%4#kQv3k@})R3A~!q8YsXt|iSc1~(K zCaYr*2ao9kZk(0S8Qi`4{hjZw7LR-%USB!$YvaW9BmVYJptfCf*6^Cum@Gd+83!Qr z(AB(WiC#DWvEV(~QO#;B<|Y{F5PXcmAZIW*j19V*#9&eBB|EAwqzT?AC@8;x48ZgF z3Z9;vrzbO#_Y9WU(GLlyGLs9!ZryDfCxgdx!sD5@7KDK%uRr}t*3(mxuRIw1h#!0! z-x{;m@g2%ob5^njRf9E@)fy&~u_;kah;K&|;S<|HTI1_5;8@}%9BzX%3`KWu{AGFW z+RDXqw{QM&`SbaQLUsytwhc14ib~uCb_Rh#fAT`3MU|xhR~Ccym|Nrsg==xtUTv97if|j0qmThb{*HowAm<;*4j#<= zUz~H5#oBD&v)SGQ3&L}&cGCIOVn_FV3+J^1IS&0e`pD#@Yj!^ zHbY<1>NoIEG!A&F2=y<(tI&gxY4yhN`sK8C$nUNVhG{s{Fq-mP$iQ&gb{5(Ob8Um! zp`Yg44rPUwMPF;d*O&A4U2^1o`{wLrmXt|l;tRsQ`*z}J&vrh2?Z}NczI~&xcOhx43KA~Uxj2j<1Hq9A^8~IS_zDp4_iqTYa={@qP zu&n?0MxjWPCQx}I0)C7d_d`4#>qiznmgsIlf5ium-J0;caUDHKM?eFuMR7yE$}tRc zpJy5VzgEKZ%-}lf0m)yk5qO~F s&?+`mN~T}TGyTTo2TGF Dict[str, Any]: + # 获取参数 + task_instance_id = self.resolve_param("task_instance_id") + + # 验证必要参数 + self.validate_required_params(["task_instance_id"]) + + # 实际实现中,这里应该查询数据库验证任务ID是否存在 + # 这里简化为检查是否与当前任务ID相同 + exists = task_instance_id == self.context.task_id + + result = {"exists": exists} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("create_unique_id") +class CreateUniqueIdComponent(Component): + """创建唯一ID组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + prefix = self.resolve_param("prefix", "") + + # 生成唯一ID + unique_id = f"{prefix}{uuid.uuid4().hex}" + + result = {"id": unique_id} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("current_timestamp") +class CurrentTimestampComponent(Component): + """当前时间戳组件""" + + def execute(self) -> Dict[str, Any]: + # 获取当前时间戳(毫秒级) + timestamp = int(time.time() * 1000) + + result = {"timestamp": timestamp} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("current_time") +class CurrentTimeComponent(Component): + """当前时间组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + format_str = self.resolve_param("format", "%Y-%m-%d %H:%M:%S") + + # 获取格式化的当前时间 + current_time = time.strftime(format_str, time.localtime()) + + result = {"time": current_time} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("execute_sql") +class ExecuteSqlComponent(Component): + """执行SQL组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + sql = self.resolve_param("sql") + params = self.resolve_param("params", []) + + # 验证必要参数 + self.validate_required_params(["sql"]) + + # 实际实现中,这里应该执行SQL语句 + # 这里简化为返回模拟结果 + result = { + "affected_rows": 1, + "success": True + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("query_sql") +class QuerySqlComponent(Component): + """查询SQL组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + sql = self.resolve_param("sql") + params = self.resolve_param("params", []) + + # 验证必要参数 + self.validate_required_params(["sql"]) + + # 实际实现中,这里应该执行SQL查询 + # 这里简化为返回模拟结果 + result = { + "result": [{"id": 1, "name": "示例数据"}], + "count": 1 + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("string_md5_encrypt") +class StringMd5EncryptComponent(Component): + """字符串MD5加密组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + text = self.resolve_param("text") + uppercase = self.resolve_param("uppercase", False) + salt = self.resolve_param("salt", "") + + # 验证必要参数 + self.validate_required_params(["text"]) + + # 执行MD5加密 + md5_hash = hashlib.md5((text + salt).encode()).hexdigest() + if uppercase: + md5_hash = md5_hash.upper() + + result = {"md5": md5_hash} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("string_to_json_array") +class StringToJsonArrayComponent(Component): + """将字符串转换成JSON数组组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + text = self.resolve_param("text") + default = self.resolve_param("default", []) + + # 验证必要参数 + self.validate_required_params(["text"]) + + # 执行转换 + try: + json_array = json.loads(text) + if not isinstance(json_array, list): + json_array = default + except Exception: + json_array = default + + result = {"jsonArray": json_array} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("string_to_json_object") +class StringToJsonObjectComponent(Component): + """将字符串转换成JSON对象组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + text = self.resolve_param("text") + default = self.resolve_param("default", {}) + + # 验证必要参数 + self.validate_required_params(["text"]) + + # 执行转换 + try: + json_object = json.loads(text) + if not isinstance(json_object, dict): + json_object = default + except Exception: + json_object = default + + result = {"jsonObject": json_object} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("print") +class PrintComponent(Component): + """打印组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + content = self.resolve_param("content") + + # 验证必要参数 + self.validate_required_params(["content"]) + + # 执行打印 + print(content) + + result = {"printed": True, "content": content} + + # 存储结果 + self.store_result(result) + return result \ No newline at end of file diff --git a/components/device_components.py b/components/device_components.py new file mode 100644 index 0000000..e501c28 --- /dev/null +++ b/components/device_components.py @@ -0,0 +1,89 @@ +# components/device_components.py +""" +设备组件 +""" +from typing import Dict, Any, Optional +import time +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError + +@ComponentFactory.register("wait_modbus_value") +class WaitModbusValueComponent(Component): + """通用等待Modbus值(Name)组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + target_value = self.resolve_param("target_value") + name = self.resolve_param("name") + address = self.resolve_param("address") + description = self.resolve_param("description", "") + timeout = self.resolve_param("timeout", 30000) # 默认30秒超时 + + # 验证必要参数 + self.validate_required_params(["target_value", "name"]) + + # 实际实现中,这里应该轮询Modbus设备直到值匹配或超时 + # 这里简化为返回模拟数据 + start_time = time.time() * 1000 + current_value = None + success = False + + # 模拟等待过程 + while (time.time() * 1000 - start_time) < timeout: + # 模拟读取当前值 + current_value = target_value # 假设值已经匹配 + + if current_value == target_value: + success = True + break + + # 等待一段时间再次检查 + time.sleep(0.1) + + if not success: + result = { + "success": False, + "timeout": True, + "name": name, + "address": address, + "targetValue": target_value, + "currentValue": current_value + } + else: + result = { + "success": True, + "name": name, + "address": address, + "value": current_value + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("write_modbus_value") +class WriteModbusValueComponent(Component): + """通用写入Modbus值(Name)组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + write_value = self.resolve_param("write_value") + name = self.resolve_param("name") + address = self.resolve_param("address") + description = self.resolve_param("description", "") + + # 验证必要参数 + self.validate_required_params(["write_value", "name"]) + + # 实际实现中,这里应该调用Modbus设备API写入值 + # 这里简化为返回模拟数据 + result = { + "success": True, + "name": name, + "address": address, + "value": write_value + } + + # 存储结果 + self.store_result(result) + return result \ No newline at end of file diff --git a/components/flow_components.py b/components/flow_components.py new file mode 100644 index 0000000..b21b295 --- /dev/null +++ b/components/flow_components.py @@ -0,0 +1,188 @@ +# components/flow_components.py +""" +流程控制组件 +""" +from typing import Dict, Any, List, Optional +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError + +@ComponentFactory.register("if") +class IfComponent(Component): + """If条件组件""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的条件逻辑在工作流执行器中实现 + # 这里只是记录条件表达式 + condition = self.resolve_param("condition") + + # 验证必要参数 + self.validate_required_params(["condition"]) + + result = {"condition": condition} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("if_else") +class IfElseComponent(Component): + """If-Else条件组件""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的条件逻辑在工作流执行器中实现 + # 这里只是记录条件表达式 + condition = self.resolve_param("condition") + + # 验证必要参数 + self.validate_required_params(["condition"]) + + result = {"condition": condition} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("if_else_if") +class IfElseIfComponent(Component): + """If-Else-If条件组件""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的条件逻辑在工作流执行器中实现 + # 这里只是记录条件表达式 + conditions = self.resolve_param("conditions", []) + + # 验证必要参数 + self.validate_required_params(["conditions"]) + + result = {"conditions": conditions} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("for_each") +class ForEachComponent(Component): + """遍历数组组件""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的循环逻辑在工作流执行器中实现 + # 这里只是记录循环参数 + items = self.resolve_param("items") + + # 验证必要参数 + self.validate_required_params(["items"]) + + result = {"items": items} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("while") +class WhileComponent(Component): + """While循环组件""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的循环逻辑在工作流执行器中实现 + # 这里只是记录循环条件 + condition = self.resolve_param("condition") + max_iterations = self.resolve_param("max_iterations", 100) + + # 验证必要参数 + self.validate_required_params(["condition"]) + + result = { + "condition": condition, + "max_iterations": max_iterations + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("break") +class BreakComponent(Component): + """Break组件,中断当前循环""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的中断逻辑在工作流执行器中实现 + # 这里只是记录中断意图 + result = {"break_requested": True} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("return") +class ReturnComponent(Component): + """Return组件,结束当前流程并返回结果""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + return_value = self.resolve_param("return_value") + + # 注意:实际的返回逻辑在工作流执行器中实现 + # 这里只是记录返回值 + result = {"return_value": return_value, "return_requested": True} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("delay") +class DelayComponent(Component): + """延迟组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + milliseconds = self.resolve_param("milliseconds", 1000) + + # 验证必要参数 + self.validate_required_params(["milliseconds"]) + + # 执行延迟 + import time + time.sleep(milliseconds / 1000) + + result = {"delayed_ms": milliseconds} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("parallel_execute") +class ParallelExecuteComponent(Component): + """并行执行组件""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的并行执行逻辑在工作流执行器中实现 + # 这里只是记录并行执行意图 + result = {"parallel_requested": True} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("serial_execute") +class SerialExecuteComponent(Component): + """串行执行组件""" + + def execute(self) -> Dict[str, Any]: + # 注意:实际的串行执行逻辑在工作流执行器中实现 + # 这里只是记录串行执行意图 + result = {"serial_requested": True} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("throw_exception") +class ThrowExceptionComponent(Component): + """抛出异常组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + error_message = self.resolve_param("error_message", "自定义异常") + + # 抛出异常 + raise ComponentError(error_message) \ No newline at end of file diff --git a/components/http_components.py b/components/http_components.py new file mode 100644 index 0000000..30ec4d9 --- /dev/null +++ b/components/http_components.py @@ -0,0 +1,104 @@ +# components/http_components.py +""" +HTTP请求组件 +""" +import requests +from typing import Dict, Any, Optional +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError + + +@ComponentFactory.register("http_get_request") +class HttpGetRequestComponent(Component): + """HTTP GET请求组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + url = self.resolve_param("url") + headers = self.resolve_param("headers", {}) + params = self.resolve_param("params", {}) + timeout = self.resolve_param("timeout", 30) + + # 验证必要参数 + self.validate_required_params(["url"]) + + try: + # 执行HTTP请求 + response = requests.get(url, headers=headers, params=params, timeout=timeout) + response.raise_for_status() + + # 处理响应 + try: + response_data = response.json() + except ValueError: + response_data = response.text + + result = { + "response": response_data, + "status_code": response.status_code, + "headers": dict(response.headers) + } + + # 存储结果 + self.store_result(result) + return result + + except requests.RequestException as e: + error_result = { + "error": str(e), + "status_code": getattr(e.response, "status_code", None) if hasattr(e, "response") else None + } + self.store_result(error_result) + raise ComponentError(f"HTTP GET请求失败: {str(e)}") + +@ComponentFactory.register("http_post_request") +class HttpPostRequestComponent(Component): + """HTTP POST请求组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + url = self.resolve_param("url") + data = self.resolve_param("data", {}) + headers = self.resolve_param("headers", {}) + content_type = self.resolve_param("content_type", "json") + timeout = self.resolve_param("timeout", 30) + + # 验证必要参数 + self.validate_required_params(["url"]) + + try: + # 设置内容类型 + if content_type == "json" and "Content-Type" not in headers: + headers["Content-Type"] = "application/json" + + # 执行HTTP请求 + if content_type == "json": + response = requests.post(url, json=data, headers=headers, timeout=timeout) + else: + response = requests.post(url, data=data, headers=headers, timeout=timeout) + + response.raise_for_status() + + # 处理响应 + try: + response_data = response.json() + except ValueError: + response_data = response.text + + result = { + "response": response_data, + "status_code": response.status_code, + "headers": dict(response.headers) + } + + # 存储结果 + self.store_result(result) + return result + + except requests.RequestException as e: + error_result = { + "error": str(e), + "status_code": getattr(e.response, "status_code", None) if hasattr(e, "response") else None + } + self.store_result(error_result) + raise ComponentError(f"HTTP POST请求失败: {str(e)}") \ No newline at end of file diff --git a/components/robot_components.py b/components/robot_components.py new file mode 100644 index 0000000..e4f8ca6 --- /dev/null +++ b/components/robot_components.py @@ -0,0 +1,176 @@ +# components/robot_components.py +from typing import Dict, Any, List, Optional +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError + +@ComponentFactory.register("select_robot") +class SelectRobotComponent(Component): + """选择执行机器人组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + priority = self.resolve_param("priority", "distance") + robot_id = self.resolve_param("robot_id") + tags = self.resolve_param("tags", []) + robot_group = self.resolve_param("robot_group") + + # 如果直接指定了机器人ID,则使用该机器人 + if robot_id: + selected_robot = robot_id + else: + # 实际实现中,这里应该调用机器人调度系统API选择合适的机器人 + # 这里简化为返回模拟数据 + selected_robot = "robot_001" + + # 设置执行机器人 + self.context.set_executing_robot(selected_robot) + + result = { + "selectedAgvId": selected_robot, + "priority": priority + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_robot_position") +class GetRobotPositionComponent(Component): + """获取机器人位置组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + robot_id = self.resolve_param("robot_id") + + # 验证必要参数 + self.validate_required_params(["robot_id"]) + + # 实际实现中,这里应该调用机器人系统API获取位置 + # 这里简化为返回模拟数据 + position = { + "x": 100.5, + "y": 200.3, + "angle": 45.0, + "station": "station_A" + } + + result = { + "position": position, + "station": position["station"] + } + + # 存储结果 + self.store_result(result) + return result + +# components/robot_components.py (继续) +@ComponentFactory.register("robot_action") +class RobotActionComponent(Component): + """机器人通用动作组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + target_station = self.resolve_param("target_station") + robot_id = self.resolve_param("robot_id", self.context.executing_robot) + goods_id = self.resolve_param("goods_id") + speed = self.resolve_param("speed") + + # 验证必要参数 + self.validate_required_params(["target_station"]) + + if not robot_id: + raise ComponentError("未指定机器人ID,请先选择执行机器人或直接指定robot_id参数") + + # 实际实现中,这里应该调用机器人控制API执行动作 + # 这里简化为返回模拟数据 + result = { + "robotId": robot_id, + "targetStation": target_station, + "goodsId": goods_id, + "status": "executing" + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("change_robot_destination") +class ChangeRobotDestinationComponent(Component): + """机器人更换目的地组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + target_station = self.resolve_param("target_station") + robot_id = self.resolve_param("robot_id", self.context.executing_robot) + goods_id = self.resolve_param("goods_id") + + # 验证必要参数 + self.validate_required_params(["target_station"]) + + if not robot_id: + raise ComponentError("未指定机器人ID,请先选择执行机器人或直接指定robot_id参数") + + # 实际实现中,这里应该调用机器人控制API更改目的地 + # 这里简化为返回模拟数据 + result = { + "robotId": robot_id, + "newTargetStation": target_station, + "goodsId": goods_id, + "status": "destination_changed" + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_robot_battery") +class GetRobotBatteryComponent(Component): + """获取机器人电量组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + robot_id = self.resolve_param("robot_id", self.context.executing_robot) + + # 验证必要参数 + if not robot_id: + raise ComponentError("未指定机器人ID,请先选择执行机器人或直接指定robot_id参数") + + # 实际实现中,这里应该调用机器人系统API获取电量 + # 这里简化为返回模拟数据 + battery_level = 85 # 电量百分比 + + result = {"batteryLevel": battery_level} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_robot_pgv_code") +class GetRobotPGVCodeComponent(Component): + """获取机器人PGV码组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + robot_id = self.resolve_param("robot_id", self.context.executing_robot) + + # 验证必要参数 + if not robot_id: + raise ComponentError("未指定机器人ID,请先选择执行机器人或直接指定robot_id参数") + + # 实际实现中,这里应该调用机器人系统API获取PGV码 + # 这里简化为返回模拟数据 + pgv_code = { + "code": "PGV12345", + "timestamp": int(time.time() * 1000), + "coordinates": { + "x": 123.45, + "y": 67.89 + }, + "status": "valid" + } + + result = {"codeInfo": pgv_code} + + # 存储结果 + self.store_result(result) + return result \ No newline at end of file diff --git a/components/script_components.py b/components/script_components.py new file mode 100644 index 0000000..aea9294 --- /dev/null +++ b/components/script_components.py @@ -0,0 +1,74 @@ +# components/script_components.py +""" +脚本执行组件 +""" +from typing import Dict, Any, Optional +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError + +@ComponentFactory.register("run_script") +class RunScriptComponent(Component): + """脚本执行组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + script_code = self.resolve_param("script_code") + params = self.resolve_param("params", {}) + + # 验证必要参数 + self.validate_required_params(["script_code"]) + + # 创建本地变量字典 + locals_dict = { + "params": params, + "context": self.context, + "blocks": self.context.blocks, + "variables": self.context.variables, + "task": { + "id": self.context.task_id, + "variables": self.context.variables + }, + "taskInputs": self.context.task_inputs + } + + try: + # 执行脚本代码 + exec(script_code, {"__builtins__": __builtins__}, locals_dict) + + # 获取结果 + result = {"result": locals_dict.get("result", None)} + + # 存储结果 + self.store_result(result) + return result + + except Exception as e: + error_result = {"error": str(e)} + self.store_result(error_result) + raise ComponentError(f"脚本执行失败: {str(e)}") + +@ComponentFactory.register("set_task_variables") +class SetTaskVariablesComponent(Component): + """设置任务变量组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + variables = self.params.copy() + + # 移除特殊参数 + if "id" in variables: + del variables["id"] + + updated_vars = {} + + # 设置任务变量 + for name, value in variables.items(): + resolved_value = self.resolve_param(name) + self.context.set_variable(name, resolved_value) + updated_vars[name] = resolved_value + + result = {"updated_variables": list(updated_vars.keys())} + + # 存储结果 + self.store_result(result) + return result \ No newline at end of file diff --git a/components/site_components.py b/components/site_components.py new file mode 100644 index 0000000..a01acff --- /dev/null +++ b/components/site_components.py @@ -0,0 +1,296 @@ +# components/site_components.py +""" +库位组件 +""" +from typing import Dict, Any, List, Optional +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError + +@ComponentFactory.register("batch_set_site") +class BatchSetSiteComponent(Component): + """批量设置库位组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_ids = self.resolve_param("site_ids", []) + area_set = self.resolve_param("area_set") + occupied = self.resolve_param("occupied") + has_material = self.resolve_param("has_material") + is_material_locked = self.resolve_param("is_material_locked") + + # 验证必要参数 + self.validate_required_params(["site_ids"]) + + # 实际实现中,这里应该调用库位管理系统API批量设置库位 + # 这里简化为返回模拟结果 + result = { + "affected_sites": site_ids, + "success": True + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_dense_site") +class GetDenseSiteComponent(Component): + """获取密集库位组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + area_set = self.resolve_param("area_set") + operation = self.resolve_param("operation") # 取/放 + goods = self.resolve_param("goods") + auto_lock = self.resolve_param("auto_lock", False) + retry = self.resolve_param("retry", False) + + # 验证必要参数 + self.validate_required_params(["area_set", "operation"]) + + # 实际实现中,这里应该调用库位管理系统API获取密集库位 + # 这里简化为返回模拟结果 + site_id = "site_001" + + result = {"siteId": site_id} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("query_site") +class QuerySiteComponent(Component): + """查询库位组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + goods = self.resolve_param("goods") + has_goods = self.resolve_param("has_goods") + is_locked = self.resolve_param("is_locked") + is_inventory = self.resolve_param("is_inventory") + retry_interval = self.resolve_param("retry_interval", 1000) + + # 实际实现中,这里应该调用库位管理系统API查询库位 + # 这里简化为返回模拟结果 + site_info = { + "id": site_id or "site_001", + "hasGoods": has_goods if has_goods is not None else False, + "isLocked": is_locked if is_locked is not None else False, + "isInventory": is_inventory if is_inventory is not None else True, + "goods": goods + } + + result = {"site": site_info} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("lock_site") +class LockSiteComponent(Component): + """锁定库位组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + reason = self.resolve_param("reason", "任务锁定") + + # 验证必要参数 + self.validate_required_params(["site_id"]) + + # 实际实现中,这里应该调用库位管理系统API锁定库位 + # 这里简化为返回模拟结果 + result = { + "siteId": site_id, + "locked": True, + "reason": reason + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("unlock_site") +class UnlockSiteComponent(Component): + """解锁库位组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + reason = self.resolve_param("reason", "任务解锁") + + # 验证必要参数 + self.validate_required_params(["site_id"]) + + # 实际实现中,这里应该调用库位管理系统API解锁库位 + # 这里简化为返回模拟结果 + result = { + "siteId": site_id, + "locked": False, + "reason": reason + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_locked_sites_by_task") +class GetLockedSitesByTaskComponent(Component): + """根据任务实例ID获取所有加锁库位组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + task_instance_id = self.resolve_param("task_instance_id") + + # 验证必要参数 + self.validate_required_params(["task_instance_id"]) + + # 实际实现中,这里应该调用库位管理系统API获取任务锁定的库位 + # 这里简化为返回模拟结果 + site_ids = ["site_001", "site_002"] + + result = {"siteIds": site_ids} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_site_extension_property") +class GetSiteExtensionPropertyComponent(Component): + """获取库位扩展属性值组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + property_name = self.resolve_param("property_name") + + # 验证必要参数 + self.validate_required_params(["site_id", "property_name"]) + + # 实际实现中,这里应该调用库位管理系统API获取库位扩展属性 + # 这里简化为返回模拟结果 + value = f"属性值_{property_name}" + + result = {"value": value} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("set_site_extension_property") +class SetSiteExtensionPropertyComponent(Component): + """设置库位扩展属性组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + property_name = self.resolve_param("property_name") + property_value = self.resolve_param("property_value") + + # 验证必要参数 + self.validate_required_params(["site_id", "property_name", "property_value"]) + + # 实际实现中,这里应该调用库位管理系统API设置库位扩展属性 + # 这里简化为返回模拟结果 + result = { + "siteId": site_id, + "propertyName": property_name, + "propertyValue": property_value, + "success": True + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("set_site_goods") +class SetSiteGoodsComponent(Component): + """设置库位货物组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + goods = self.resolve_param("goods") + + # 验证必要参数 + self.validate_required_params(["site_id", "goods"]) + + # 实际实现中,这里应该调用库位管理系统API设置库位货物 + # 这里简化为返回模拟结果 + result = { + "siteId": site_id, + "goods": goods, + "success": True + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("set_site_empty") +class SetSiteEmptyComponent(Component): + """设置库位为空组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + + # 验证必要参数 + self.validate_required_params(["site_id"]) + + # 实际实现中,这里应该调用库位管理系统API设置库位为空 + # 这里简化为返回模拟结果 + result = { + "siteId": site_id, + "success": True + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("set_site_occupied") +class SetSiteOccupiedComponent(Component): + """设置库位为占用组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + + # 验证必要参数 + self.validate_required_params(["site_id"]) + + # 实际实现中,这里应该调用库位管理系统API设置库位为占用 + # 这里简化为返回模拟结果 + result = { + "siteId": site_id, + "success": True + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("set_site_tag") +class SetSiteTagComponent(Component): + """设置库位标签组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + site_id = self.resolve_param("site_id") + tag = self.resolve_param("tag") + + # 验证必要参数 + self.validate_required_params(["site_id", "tag"]) + + # 实际实现中,这里应该调用库位管理系统API设置库位标签 + # 这里简化为返回模拟结果 + result = { + "siteId": site_id, + "tag": tag, + "success": True + } + + # 存储结果 + self.store_result(result) + return result \ No newline at end of file diff --git a/components/subtask_components.py b/components/subtask_components.py new file mode 100644 index 0000000..d3b63f2 --- /dev/null +++ b/components/subtask_components.py @@ -0,0 +1,75 @@ +""" +子任务组件 +""" +# components/subtask_components.py +from typing import Dict, Any, Optional +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError +from services.workflow_service import WorkflowService + +@ComponentFactory.register("subtask") +class SubtaskComponent(Component): + """子任务组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + subtask_id = self.resolve_param("subtask_id") + async_execute = self.resolve_param("async_execute", False) + input_params = {} + + # 收集所有以input_开头的参数作为子任务输入 + for key, value in self.params.items(): + if key.startswith("input_"): + param_name = key[6:] # 去掉"input_"前缀 + input_params[param_name] = self.resolve_param(key) + + # 验证必要参数 + self.validate_required_params(["subtask_id"]) + + try: + # 获取工作流服务 + workflow_service = WorkflowService() + + # 获取子任务定义 + subtask_definition = workflow_service.get_workflow_by_id(subtask_id) + + if not subtask_definition: + raise ComponentError(f"找不到子任务: {subtask_id}") + + # 执行子任务 + if async_execute: + # 异步执行子任务 + # 实际实现中,这里应该启动一个新线程或任务来执行子任务 + # 这里简化为返回模拟数据 + result = { + "subtaskId": subtask_id, + "status": "started", + "async": True, + "inputParams": input_params + } + else: + # 同步执行子任务 + subtask_result = workflow_service.execute_workflow( + subtask_definition, + input_params + ) + + result = { + "subtaskId": subtask_id, + "status": subtask_result.get("task_status", "completed"), + "async": False, + "result": subtask_result + } + + # 存储结果 + self.store_result(result) + return result + + except Exception as e: + error_result = { + "subtaskId": subtask_id, + "status": "failed", + "error": str(e) + } + self.store_result(error_result) + raise ComponentError(f"子任务执行失败: {str(e)}") \ No newline at end of file diff --git a/components/task_components.py b/components/task_components.py new file mode 100644 index 0000000..d0e4b30 --- /dev/null +++ b/components/task_components.py @@ -0,0 +1,142 @@ +# components/task_components.py +""" +任务组件 +""" +from typing import Dict, Any, Optional +from core.component import Component, ComponentFactory +from core.exceptions import ComponentError + +@ComponentFactory.register("cache_data") +class CacheDataComponent(Component): + """缓存数据组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + key = self.resolve_param("key") + value = self.resolve_param("value") + + # 验证必要参数 + self.validate_required_params(["key"]) + + # 缓存数据 + cache_key = f"cache_{key}" + self.context.set_variable(cache_key, value) + + result = {"key": key} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("clear_cache_data") +class ClearCacheDataComponent(Component): + """清除缓存数据组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + key = self.resolve_param("key") + + # 验证必要参数 + self.validate_required_params(["key"]) + + # 清除缓存数据 + cache_key = f"cache_{key}" + if cache_key in self.context.variables: + del self.context.variables[cache_key] + + result = {"success": True} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_cache_data") +class GetCacheDataComponent(Component): + """获取缓存数据组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + key = self.resolve_param("key") + + # 验证必要参数 + self.validate_required_params(["key"]) + + # 获取缓存数据 + cache_key = f"cache_{key}" + value = self.context.get_variable(cache_key) + + result = {"value": value} + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("set_task_status") +class SetTaskStatusComponent(Component): + """设置任务状态组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + status = self.resolve_param("status") + + # 验证必要参数 + self.validate_required_params(["status"]) + + # 设置任务状态 + self.context.set_task_status(status) + + result = {"status": status} + + # 存储结果 + self.store_result(result) + return result + +# components/task_components.py (继续) +@ComponentFactory.register("jump_to_block") +class JumpToBlockComponent(Component): + """跳到某个块组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + target_block_id = self.resolve_param("target_block_id") + + # 验证必要参数 + self.validate_required_params(["target_block_id"]) + + # 注意:实际的跳转逻辑需要在工作流执行器中实现 + # 这里只是记录跳转意图 + result = { + "target_block_id": target_block_id, + "jump_requested": True + } + + # 存储结果 + self.store_result(result) + return result + +@ComponentFactory.register("get_task_input_param") +class GetTaskInputParamComponent(Component): + """获取任务的输入参数组件""" + + def execute(self) -> Dict[str, Any]: + # 获取参数 + task_instance_id = self.resolve_param("task_instance_id") + param_name = self.resolve_param("param_name") + + # 验证必要参数 + self.validate_required_params(["param_name"]) + + # 获取输入参数 + # 如果指定了任务实例ID,则需要从数据库或其他存储中获取 + # 这里简化为直接从当前任务的输入参数中获取 + if task_instance_id and task_instance_id != self.context.task_id: + # 实际实现中,这里应该查询数据库获取指定任务的输入参数 + param_value = None + else: + param_value = self.context.task_inputs.get(param_name) + + result = {"inputParamValue": param_value} + + # 存储结果 + self.store_result(result) + return result \ No newline at end of file diff --git a/config/__init__.py b/config/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/config/__pycache__/__init__.cpython-312.pyc b/config/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..56da4c1512210521b43f744eaecd4c78f0fb777b GIT binary patch literal 206 zcmX@j%ge<81jiR$N(a%8K?FMZ%mNgd&QQsq$>_I|p@<2{`wUX^H48{MTg8MHrxq2* zWEq(nTg14e7H5~_7sNc>zVyl7InSoGKiR!4=H;A*XB(SbC%bn) z?OKQ;QIeUMmzJ8B9$%7JoE?*#pO==I9ups*nU`4-AFo$Xd5gm)H$SB`C)KWq6=*Rd R5Ep|OADI~$8H<>KECBGZNWTC8 literal 0 HcmV?d00001 diff --git a/config/__pycache__/api_config.cpython-312.pyc b/config/__pycache__/api_config.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fb80e19d8459174099abc4a057228547bf8cdd79 GIT binary patch literal 2944 zcmbtWU2M}<6t)v5anck@{{`LHVEkk-G{KmFO-LqjAzGW1{4iuivZ6Xv8Euj|siwRo z8-=uM`56d?C>s@^6%Z>3D2#%5owS!}d&&GXiP~-6R=O!tpLUL&hPX{1rdjf*d(XMo z_ulV(=Uo3%TWcfWnYsI0&!mMQUSenQp-PSU1T-!Y0>KdiDHwXmJ_BdyGjhg0ilh2W zoQWh1#6dzZo*)G3jzOEnnN^z!Z054fqS`EAqsum0wOPStE8DE;8i&3AFnr0zbh+j8 zBl6P=g@KWo=RYbJPfbrv+T`H@`RtvtPr3F?es<<%COb1UsQ_Nf%HIqtlQ|_jp^T3y zS6|HB9n|LA3b;K7B~h+ucSa0ynTW@dkFsZVNv}6KJ|=(nwYCk9!z$4{ z9}D+IcwVycd|zDX@5Q#A=RfZc_m(^so)_ZXU^Yf$DT#7=U94nGrbNlo$@=}wK^D%z z1ejaIJnr+KUI6F5P%s%0lcCRc?%uU0Hq-2W0f%GmXg zeB)N(`swMZDS2p2=SW4vv15@~51$GrkB7SBv18GmP&g6gwdRgQTBKn?6+k;gvJv0} z@dvd&U$ZLX%CB0JIhe0mopp%~i^HmOyA|AeZh=!uFmfh=;>>~xI5u;%VBxH38i-q6 z!Lt*1?yraWWtz(pDEtiO=vjzh^c=!@gbN6N19%)Z(Tdwb{fjjSb^yuZ4?3N|tyFV> zaq&L(aFF!}Bzw@q1Otb>J~zj@Bx}3Zcfjp(u^!3l@do&IZ_wkC?0(jFg!S>P&*$}t zxF_x0$cos!2({2iZUjK0+BA;pn=+r|8=5m6`MQRTTZ4w?Y=<@(R%J~r#S?;Vn^nHavzHxu{;Z1d}GCBe>lP{0UCkF~& zjTbIlo}HM`oepB7KJ))g6$>rPce^71!d2Cwse9(i6M5i)Ru?MFa_)*e^|Z8WjGH!E zx$;oCcyF0m&Rr{9zOl@#4E``XHoVL%pSg(ZX^gBce|!4Lh5XxNgY z^C~oM8nkMf+X6GHN96@h?2!Pj|o@z;6eiD&Y_ z&1zdlb|JdWC`^~mIBj$p|-!gRP*A!xDQ0HlamM#OgzHUUVqyR*ydD@jCaE!70Q z$hYW#8JJf!AJ*CpZxRz4 zxr3bA4rDd$8MJA{>;lIMsV(9$By&6C#>9OCIwEG9h+K*|Z^^>qdbAlw3)We5dg)tM$_I`1c0_H{7Ch1E&sczyn)juhgqtH zkadN7qOmakEUDF9&YdibJ<|SY3Rt%bc$pRi0FT2`m1(<+ZD)cV0lo`=Ue;9hct2dO zQf()5RCTJ|rCfXnpB54J!JEW1!)vrT-_Qt`XY1Nusiu5mOSV%xE{?+>sQ0=#l}z2AxL mMT#Qp<_LhI-9olNM97w6{RVRH905=~L{enyD{!}}d;Ay1KdeIl literal 0 HcmV?d00001 diff --git a/config/__pycache__/component_config.cpython-312.pyc b/config/__pycache__/component_config.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8988d8f3ae79b14a3b664077b74c94ad4bea45dc GIT binary patch literal 5312 zcmeHLYfu~472cJ!l2}%Vhr!s!&v+8#1QI)GliJRMhcMW#u|aNa)l-eET|fjRvMVJK zaXX^HHu!}}I>C0_8c#d5Tv~@rrb!3tw*T87V*CTT)6R4zEJFXl)Z>}{>N)pHVkMMJ zX4=g3NA8Tyo_o%H-}9YwuKr@P@eGvbFV1!rmoUudSVc7-(;|g~-exvt(peBC~?5AR{Y?@Q%W8 zGxXvU(}VNVpC->?gD*pTre7jH;>8?+dA>!+s^C8tVcP2dkDh1bh2}0Vxn_@P?$$pd4`q z!o5DaWJ=joWu+3BF-BtCES!KrWZg#5;5LayHy1HEIJGo0RHI+<1>cn9NEo}&wJx6j zwRRy!S4@|s^1k%kitC8OtXe&ufVWrjcvRlw=?#kE9^?g&=Z&zpC#A7?JYvuXVtb>r zsqXk;m*;3*!=btZPSsX-+|}x7a~^1EcRAbcGAp?3fA4SHd#YP`%i{}*(y2Z<*e&@& zr$T;jphF6DdO}|1^;5oJpu^t@pVUD>TNKpxMPw@sK?pL69mpW_H`9)}iXG9`xpkET z-<82sXp5{P<3NgKr4LB{BNI(-v&gwEqSgL4)ccI9;1<58BN=1@gvUeCZ zzz7`%Q5ZB$;D}J%#YA5s*;6{3PFET!a@f_9%vGdsHCzfk=}mxvXhRe94j!S=H@jR% z7eD%J;p3k?GDCH7@W#T;-w<};cLRyo#YedDg_~2__1OH>)Z*m3+SIRzTAO-*{{Cg! z>E0i;U!H$d04=rOUY(zw)-K#83LUH6no8V`s%BXVh2?-RZCB8R!5NJ3TiFlNG3E@@ zjnbR~(iE2T3XrDpsT2QSOYxL*3al4xET@2!c%^JHNQG<()gm*$^@ych~ z$Oo(U{qu|3&?LQha1IOC#wM-TV4JhN##z2apGJ&1 zEUJK32Jk#~+}Z9@&Fu|sEk|9dsp)X*_f@W~wZ0W9?JX{+YHoCXucg7MTH24-yXx8x z-DOpyuSZePT(-$*#%f`w6!P?X`}+KW&i>77Y`s>eu7dW;kAXy)C7vm-oL#qbX5G#u zGqZl zgPu@7IeHQpXx2R1tRJ*;)7U$s?<~JqRm?9jRRuip6Im9INFf&gS781}7XP)_6F zBL{~M!e>^fnh~n7-aOp=g`bw;mQMoMZ2u)xd^}J|zqU zBUIHt%eF=j&)LeOO>>21(Z)GpbJR&WA}iVuJwU6dh4V0%EE%?N{I$mMvT@&d<@F;E z8K|xp(~6}=maqb}ag9H5{p3RiSfXDx07qAZi^+Sm}z`jpXIA{=B0>(|_I1BunT=teUj8r^*9`C)bjkBb2Aha|*=P)16=pdzw5Jsy5e z5e+(h9@vRSoj#9a7fm{S9v3fiI(unUps{HyQiNIIxV~SzeE1GZM^aWK0?5 zjX>@SGM?kOHo{3e^a%LFL}`_Jk#eQT`STquP9_ z1lJ=$hO2UzP$~*q#I|jzxKe@+CDRNW^gF)5;z*3iYI+PtQigy;nSX(U*)c0PW&}rU z-`|DpvqJTZP#vo#?2|LXlQChHwdS%<%?MA$Dv6Yg@DgEB8h7j^JRJ>uPzgW8EmbhZ z2lq>25)6^O;3W+~AZ&^%qcaBK11`?@|f+s`u~?j`4WkToVw zxJcdyc_zd>2%oHETk>mAO957H0$vqFiDsw%U?2yrm04)jwd;TGD}h$m!wXX>H-Kbe zH~w^U25#|P2MCYojaN75`1&C zP!=UQ$M{RLjGwgV-}RNup0s@fCQ$}}WDK4}osx_#$Jkt!#G>69CY8+ExEh+wk}(}TN#s>?D1whol9tnC94}ri z7rh~GEj)JN$z1D8|A9m=9Zi9z=VXc5%T}%X=^tFL$UlH~Xj#e&K$eUw%Pt#?tm(0p nVV{^`cKm~R@v+IsZdhi3Jmz0z`DF&k<9fqxw&o!Nge>uxXz8k9#s zB2iERG8z;mjKjkjN0A`9|Lxg5yBkK&q38Q!&z`gSy2Ji6A9&_?cK_Pnt=rw{gg7&v z*>koJ+PTeqriRo%LEtNz*L%2x1uqwi*8N0p-dCxPV8p7{82A3jbfLa9@PMOd3H zE!H|~i>=PqVz0BeWYlF?6sxjQ5w?AbuzzOdQgsfQmVq=!DlJo{Wg^X)N^{DzETm

$YWq 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 literal 0 HcmV?d00001 diff --git a/config/__pycache__/component_registry.cpython-312.pyc b/config/__pycache__/component_registry.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3ea4ed43125c1fdbef517a62bea0ec52f4a8c058 GIT binary patch literal 1273 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 Su>Pz|qauqR>Q$uV{Qn14i^o_1 literal 0 HcmV?d00001 diff --git a/config/__pycache__/settings.cpython-312.pyc b/config/__pycache__/settings.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6d61e40096004476f4526565013df4e6bff2ef06 GIT binary patch literal 5233 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 bH=Pd`oPBxQU5@G5`c?OnH{p-zpmzK}L8kxZ literal 0 HcmV?d00001 diff --git a/config/__pycache__/task_config.cpython-312.pyc b/config/__pycache__/task_config.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d9f6f6bffa6c72fefa701c29f217aacecba1e6cd GIT binary patch literal 9101 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 literal 0 HcmV?d00001 diff --git a/config/api_config.py b/config/api_config.py new file mode 100644 index 0000000..eff0396 --- /dev/null +++ b/config/api_config.py @@ -0,0 +1,62 @@ +""" +API响应配置文件 +包含API响应格式、状态码和消息模板等配置 +""" +from typing import Dict, Any, Optional, Type + +class ApiResponseModel: + """API响应模型配置""" + CODE = int # 响应状态码 + MESSAGE = str # 响应消息 + DATA = None # 响应数据,可为任意类型 + +class ApiResponseCode: + """API响应状态码""" + SUCCESS = 200 # 成功 + BAD_REQUEST = 400 # 请求错误 + UNAUTHORIZED = 401 # 未授权 + FORBIDDEN = 403 # 禁止访问 + NOT_FOUND = 404 # 资源不存在 + SERVER_ERROR = 500 # 服务器错误 + +class ApiResponseMessage: + """API响应消息模板""" + # 通用消息 + SUCCESS = "操作成功" + FAILED = "操作失败" + SERVER_ERROR = "服务器内部错误" + + # 任务相关消息 + class Task: + """任务相关消息""" + CREATED = "任务创建成功" + UPDATED = "任务更新成功" + DELETED = "任务删除成功" + EXECUTED = "任务执行成功" + CANCELED = "任务取消成功" + NOT_FOUND = "任务不存在" + + # 工作流相关消息 + class Workflow: + """工作流相关消息""" + SAVED = "工作流保存成功" + VALIDATED = "工作流验证成功" + NOT_FOUND = "工作流不存在" + CREATED = "工作流创建成功" + UPDATED = "工作流更新成功" + DELETED = "工作流删除成功" + EXECUTED = "工作流执行成功" + IMPORTED = "工作流导入成功" + EXPORTED = "工作流导出成功" + + # 组件相关消息 + class Component: + """组件相关消息""" + FETCHED = "获取组件类型成功" + DISCOVERED = "自动发现并注册组件成功" + +class ApiPagination: + """分页配置""" + DEFAULT_PAGE = 1 # 默认页码 + DEFAULT_PAGE_SIZE = 10 # 默认每页记录数 + MAX_PAGE_SIZE = 100 # 最大每页记录数 \ No newline at end of file diff --git a/config/component_config.py b/config/component_config.py new file mode 100644 index 0000000..0ce5190 --- /dev/null +++ b/config/component_config.py @@ -0,0 +1,127 @@ +""" +组件配置文件 +包含组件发现、注册和分类的相关配置 +""" +from typing import Dict, List, Any +from data.models.component import ComponentCategoryEnum + +class ComponentDiscovery: + """组件自动发现配置""" + DEFAULT_PACKAGE = "components" # 默认组件包名 + AUTO_REGISTER = True # 是否在启动时自动注册所有组件 + +class ComponentCategory: + """组件类别配置""" + # 组件类别定义 + HTTP_REQUEST = "HTTP请求" + SCRIPT = "脚本" + FLOW = "流程" + ROBOT = "机器人调度" + SITE = "库位" + DEVICE = "设备" + SUBTASK = "子任务" + TASK = "任务" + BASE = "基础" + + # 组件类别映射配置 + # 用于将组件类型映射到对应的类别,便于前端展示 + @classmethod + def get_mapping(cls) -> Dict[str, str]: + """获取组件类型到类别的映射""" + return { + # HTTP请求组件 + "http": cls.HTTP_REQUEST, + + # 脚本组件 + "script": cls.SCRIPT, + + # 流程控制组件 + "if": cls.FLOW, + "if_else": cls.FLOW, + "if_else_if": cls.FLOW, + "for_each": cls.FLOW, + "while": cls.FLOW, + "break": cls.FLOW, + "return": cls.FLOW, + "delay": cls.FLOW, + + # 机器人调度组件 + "robot": cls.ROBOT, + + # 库位组件 + "site": cls.SITE, + + # 设备组件 + "modbus": cls.DEVICE, + + # 子任务组件 + "subtask": cls.SUBTASK, + } + + # 组件分类优先级 + # 控制前端组件面板中各分类的显示顺序 + @classmethod + def get_priority(cls) -> List[str]: + """获取组件类别优先级列表""" + return [ + cls.SUBTASK, + cls.SCRIPT, + cls.HTTP_REQUEST, + cls.TASK, + cls.FLOW, + cls.BASE, + cls.SITE, + cls.ROBOT, + cls.DEVICE + ] + +class ComponentCategoryConfig: + """组件分类配置""" + + @classmethod + def get_category_name(cls, category_enum): + """获取分类名称""" + names = { + ComponentCategoryEnum.SUBTASK: "子任务", + ComponentCategoryEnum.SCRIPT: "脚本", + ComponentCategoryEnum.HTTP: "HTTP请求", + ComponentCategoryEnum.TASK: "任务", + ComponentCategoryEnum.FLOW: "流程", + ComponentCategoryEnum.BASIC: "基础", + ComponentCategoryEnum.STORAGE: "库位", + ComponentCategoryEnum.ROBOT: "机器人调度", + ComponentCategoryEnum.DEVICE: "设备" + } + return names.get(category_enum, category_enum.value) + + @classmethod + def get_category_description(cls, category_enum): + """获取分类描述""" + descriptions = { + ComponentCategoryEnum.SUBTASK: "可重用的子任务组件", + ComponentCategoryEnum.SCRIPT: "执行脚本代码的组件", + ComponentCategoryEnum.HTTP: "发送HTTP请求的组件", + ComponentCategoryEnum.TASK: "任务管理相关组件", + ComponentCategoryEnum.FLOW: "流程控制相关组件", + ComponentCategoryEnum.BASIC: "基础功能组件", + ComponentCategoryEnum.STORAGE: "库位管理相关组件", + ComponentCategoryEnum.ROBOT: "机器人调度相关组件", + ComponentCategoryEnum.DEVICE: "设备控制相关组件" + } + return descriptions.get(category_enum, f"{category_enum.value}类组件") + + @classmethod + def get_category_order(cls, category_enum): + """获取分类排序""" + orders = { + ComponentCategoryEnum.BASIC: 1, + ComponentCategoryEnum.FLOW: 2, + ComponentCategoryEnum.TASK: 3, + ComponentCategoryEnum.SUBTASK: 4, + ComponentCategoryEnum.SCRIPT: 5, + ComponentCategoryEnum.HTTP: 6, + ComponentCategoryEnum.ROBOT: 7, + ComponentCategoryEnum.STORAGE: 8, + ComponentCategoryEnum.DEVICE: 9 + } + return orders.get(category_enum, 99) \ No newline at end of file diff --git a/config/component_detail_config.py b/config/component_detail_config.py new file mode 100644 index 0000000..f7f2ccc --- /dev/null +++ b/config/component_detail_config.py @@ -0,0 +1,472 @@ +""" +组件详细配置文件 +包含各种组件类型及其子组件的配置信息 +""" +from typing import Dict, List, Any, Optional + +class ScriptComponentConfig: + """脚本组件配置""" + + # 脚本组件类型 + RUN_SCRIPT = "run_script" # 运行脚本 + SET_VARIABLES = "set_variables" # 设置task.variables + + # 脚本组件详细配置 + @classmethod + def get_components(cls) -> List[Dict[str, Any]]: + """获取脚本组件列表""" + return [ + { + "type": "script", + "sub_type": cls.RUN_SCRIPT, + "name": "运行脚本", + "description": "执行JavaScript代码并返回结果", + "icon": "code", # 图标名称,前端可用 + "params": [ + { + "name": "function_name", + "label": "函数名", + "type": "string", + "required": False, + "description": "定义脚本中的主函数名称", + "value_types": [ + { + "type": "simple", + "label": "简单值", + "default": True + }, + { + "type": "expression", + "label": "表达式", + "default": False + } + ] + }, + { + "name": "params", + "label": "函数参数", + "type": "array", + "required": False, + "description": "传递给脚本的参数", + "value_types": [ + { + "type": "simple", + "label": "简单值", + "default": True + }, + { + "type": "expression", + "label": "表达式", + "default": False + } + ] + } + ] + }, + { + "type": "script", + "sub_type": cls.SET_VARIABLES, + "name": "设置task.variables", + "description": "设置和管理任务变量", + "icon": "variable", + "params": [ + { + "name": "function_name", + "label": "函数名", + "type": "string", + "required": False, + "description": "定义脚本中的主函数名称", + "value_types": [ + { + "type": "simple", + "label": "简单值", + "default": True + }, + { + "type": "expression", + "label": "表达式", + "default": False + } + ] + }, + { + "name": "params", + "label": "函数参数", + "type": "array", + "required": False, + "description": "传递给脚本的参数", + "value_types": [ + { + "type": "simple", + "label": "简单值", + "default": True + }, + { + "type": "expression", + "label": "表达式", + "default": False + } + ] + } + ] + } + ] + +class HttpComponentConfig: + """HTTP请求组件配置""" + + # HTTP请求组件类型 + HTTP_REQUEST = "http_request" # HTTP请求 + + # HTTP请求组件详细配置 + @classmethod + def get_components(cls) -> List[Dict[str, Any]]: + """获取HTTP请求组件列表""" + return [ + { + "type": "http", + "sub_type": cls.HTTP_REQUEST, + "name": "HTTP请求", + "description": "发送HTTP请求并处理响应", + "icon": "http", + "params": [ + { + "name": "method", + "label": "请求方法", + "type": "select", + "options": ["GET", "POST", "PUT", "DELETE", "PATCH"], + "required": True, + "description": "HTTP请求方法" + }, + { + "name": "url", + "label": "请求URL", + "type": "string", + "required": True, + "description": "请求的目标URL" + }, + { + "name": "headers", + "label": "请求头", + "type": "object", + "required": False, + "description": "HTTP请求头" + }, + { + "name": "body", + "label": "请求体", + "type": "object", + "required": False, + "description": "HTTP请求体" + }, + { + "name": "timeout", + "label": "超时时间", + "type": "number", + "required": False, + "description": "请求超时时间(毫秒)" + } + ] + } + ] + +class FlowComponentConfig: + """流程控制组件配置""" + + # 流程控制组件类型 + IF = "if" # 条件判断 + IF_ELSE = "if_else" # 条件分支 + FOR_EACH = "for_each" # 循环遍历 + WHILE = "while" # 条件循环 + + # 流程控制组件详细配置 + @classmethod + def get_components(cls) -> List[Dict[str, Any]]: + """获取流程控制组件列表""" + return [ + { + "type": "flow", + "sub_type": cls.IF, + "name": "条件判断", + "description": "根据条件执行不同的操作", + "icon": "branch", + "params": [ + { + "name": "condition", + "label": "条件表达式", + "type": "expression", + "required": True, + "description": "条件判断表达式" + } + ] + }, + { + "type": "flow", + "sub_type": cls.IF_ELSE, + "name": "条件分支", + "description": "根据条件执行不同的分支", + "icon": "branch-multiple", + "params": [ + { + "name": "condition", + "label": "条件表达式", + "type": "expression", + "required": True, + "description": "条件判断表达式" + } + ] + }, + { + "type": "flow", + "sub_type": cls.FOR_EACH, + "name": "循环遍历", + "description": "遍历数组或对象的每个元素", + "icon": "loop", + "params": [ + { + "name": "collection", + "label": "集合表达式", + "type": "expression", + "required": True, + "description": "要遍历的数组或对象" + }, + { + "name": "item_name", + "label": "元素变量名", + "type": "string", + "required": True, + "description": "当前元素的变量名" + }, + { + "name": "index_name", + "label": "索引变量名", + "type": "string", + "required": False, + "description": "当前索引的变量名" + } + ] + }, + { + "type": "flow", + "sub_type": cls.WHILE, + "name": "条件循环", + "description": "当条件为真时重复执行", + "icon": "loop-circular", + "params": [ + { + "name": "condition", + "label": "条件表达式", + "type": "expression", + "required": True, + "description": "循环条件表达式" + } + ] + } + ] + +class SubtaskComponentConfig: + """子任务组件配置""" + + # 子任务组件类型 + SUBTASK = "subtask" # 子任务 + + # 子任务组件详细配置 + @classmethod + def get_components(cls) -> List[Dict[str, Any]]: + """获取子任务组件列表""" + return [ + { + "type": "subtask", + "sub_type": cls.SUBTASK, + "name": "子任务", + "description": "执行已定义的任务作为子任务", + "icon": "subtask", + "params": [ + { + "name": "task_id", + "label": "选择子任务", + "type": "select", + "required": True, + "description": "选择要执行的子任务(从已创建的任务中选择)", + "data_source": "available_subtasks", # 指示前端从API返回的available_subtasks字段获取数据 + "display_field": "name", # 显示任务名称 + "value_field": "task_id" # 使用任务ID作为值 + }, + { + "name": "params", + "label": "任务参数", + "type": "object", + "required": False, + "description": "传递给子任务的参数" + }, + { + "name": "wait_complete", + "label": "等待完成", + "type": "boolean", + "required": False, + "default": True, + "description": "是否等待子任务完成后再继续执行" + } + ] + } + ] + +# 组件配置管理类 +class ComponentDetailConfig: + """组件详细配置管理""" + + # 组件类型中文名称映射 + @classmethod + def get_component_type_names(cls) -> Dict[str, str]: + """获取组件类型的中文名称映射""" + return { + # 基础类型 + "script": "脚本", + "http": "HTTP请求", + "flow": "流程", + "robot": "机器人调度", + "site": "库位", + "device": "设备", + "subtask": "子任务", + "task": "任务", + "basic": "基础", + + # 脚本组件 + "run_script": "运行脚本", + "set_task_variables": "设置任务变量", + "runscript": "运行脚本", + "settaskvariables": "设置任务变量", + + # HTTP请求组件 + "http_get_request": "GET请求", + "http_post_request": "POST请求", + "httpgetrequest": "GET请求", + "httppostrequest": "POST请求", + + # 流程控制组件 + "if": "条件判断", + "if_else": "条件分支", + "if_else_if": "多条件分支", + "for_each": "循环遍历", + "while": "条件循环", + "break": "跳出循环", + "return": "返回", + "delay": "延时", + "parallel_execute": "并行执行", + "serial_execute": "串行执行", + "throw_exception": "抛出异常", + "foreach": "循环遍历", + "ifelse": "条件分支", + "ifelseif": "多条件分支", + "parallelexecute": "并行执行", + "serialexecute": "串行执行", + "throwexception": "抛出异常", + + # 机器人调度组件 + "select_robot": "选择机器人", + "get_robot_position": "获取机器人位置", + "robot_action": "机器人动作", + "change_robot_destination": "更改机器人目的地", + "get_robot_battery": "获取机器人电量", + "get_robot_pgv_code": "获取机器人PGV码", + "changerobotdestination": "更改机器人目的地", + "getrobotbattery": "获取机器人电量", + "getrobotpgvcode": "获取机器人PGV码", + "getrobotposition": "获取机器人位置", + "robotaction": "机器人动作", + "selectrobot": "选择机器人", + + # 库位组件 + "batch_set_site": "批量设置库位", + "get_dense_site": "获取密集库位", + "query_site": "查询库位", + "lock_site": "锁定库位", + "unlock_site": "解锁库位", + "get_locked_sites_by_task": "获取任务锁定的库位", + "get_site_extension_property": "获取库位扩展属性", + "set_site_extension_property": "设置库位扩展属性", + "set_site_goods": "设置库位货物", + "set_site_empty": "设置库位为空", + "set_site_occupied": "设置库位为占用", + "set_site_tag": "设置库位标签", + "batchsetsite": "批量设置库位", + "getdensesite": "获取密集库位", + "getlockedsitesbytask": "获取任务锁定的库位", + "getsiteextensionproperty": "获取库位扩展属性", + "locksite": "锁定库位", + "querysite": "查询库位", + "setsiteempty": "设置库位为空", + "setsiteextensionproperty": "设置库位扩展属性", + "setsitegoods": "设置库位货物", + "setsiteoccupied": "设置库位为占用", + "setsitetag": "设置库位标签", + "unlocksite": "解锁库位", + + # 任务组件 + "cache_data": "缓存数据", + "clear_cache_data": "清除缓存数据", + "get_cache_data": "获取缓存数据", + "set_task_status": "设置任务状态", + "jump_to_block": "跳转到块", + "get_task_input_param": "获取任务输入参数", + "cachedata": "缓存数据", + "clearcachedata": "清除缓存数据", + "getcachedata": "获取缓存数据", + "gettaskinputparam": "获取任务输入参数", + "jumptoblock": "跳转到块", + "settaskstatus": "设置任务状态", + + # 基础组件 + "check_task_instance_id_exists": "检查任务实例ID是否存在", + "create_unique_id": "创建唯一ID", + "current_timestamp": "当前时间戳", + "current_time": "当前时间", + "execute_sql": "执行SQL", + "query_sql": "查询SQL", + "string_md5_encrypt": "字符串MD5加密", + "string_to_json_array": "字符串转JSON数组", + "string_to_json_object": "字符串转JSON对象", + "print": "打印", + "checktaskinstanceidexists": "检查任务实例ID是否存在", + "createuniqueid": "创建唯一ID", + "currenttime": "当前时间", + "currenttimestamp": "当前时间戳", + "executesql": "执行SQL", + "querysql": "查询SQL", + "stringmd5encrypt": "字符串MD5加密", + "stringtojsonarray": "字符串转JSON数组", + "stringtojsonobject": "字符串转JSON对象", + + # 设备组件 + "wait_modbus_value": "等待Modbus值", + "write_modbus_value": "写入Modbus值", + "waitmodbusvalue": "等待Modbus值", + "writemodbusvalue": "写入Modbus值" + } + + @classmethod + def get_all_components(cls) -> List[Dict[str, Any]]: + """获取所有组件详细配置""" + all_components = [] + + # 添加子任务组件(放在第一位) + all_components.extend(SubtaskComponentConfig.get_components()) + + # 添加脚本组件 + all_components.extend(ScriptComponentConfig.get_components()) + + # 添加HTTP请求组件 + all_components.extend(HttpComponentConfig.get_components()) + + # 添加流程控制组件 + all_components.extend(FlowComponentConfig.get_components()) + + # 可以继续添加其他类型的组件... + + return all_components + + @classmethod + def get_components_by_type(cls, component_type: str) -> List[Dict[str, Any]]: + """根据组件类型获取组件列表""" + all_components = cls.get_all_components() + return [comp for comp in all_components if comp["type"] == component_type] \ No newline at end of file diff --git a/config/component_registry.py b/config/component_registry.py new file mode 100644 index 0000000..3cd5776 --- /dev/null +++ b/config/component_registry.py @@ -0,0 +1,23 @@ +""" +组件注册表 +""" +# config/component_registry.py +from core.component import ComponentFactory +import importlib +from config.settings import COMPONENT_PACKAGES +from utils.logger import get_logger + +# 获取日志记录器 +logger = get_logger(__name__) + +def register_all_components(): + """注册所有组件""" + + for package_name in COMPONENT_PACKAGES: + try: + ComponentFactory.auto_discover(package_name) + logger.info(f"自动注册组件包: {package_name}") + except ImportError: + logger.error(f"导入组件包失败: {package_name}") + except Exception as e: + logger.error(f"注册组件包失败: {package_name}, 错误: {str(e)}") \ No newline at end of file diff --git a/config/database.py b/config/database.py new file mode 100644 index 0000000..b19a258 --- /dev/null +++ b/config/database.py @@ -0,0 +1,347 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +数据库连接配置模块 +包含数据库连接参数和SQLAlchemy配置,以及Redis缓存配置 +""" + +import os +import json +from sqlalchemy import create_engine +from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy.orm import sessionmaker, scoped_session + +class ConfigDict: + """配置字典类,支持通过点号访问配置项""" + def __init__(self, **kwargs): + for key, value in kwargs.items(): + if isinstance(value, dict): + setattr(self, key, ConfigDict(**value)) + else: + setattr(self, key, value) + + def get(self, key, default=None): + return getattr(self, key, default) + + def to_dict(self): + result = {} + for key, value in self.__dict__.items(): + if isinstance(value, ConfigDict): + result[key] = value.to_dict() + else: + result[key] = value + return result + +# 数据库连接配置 +DB_CONFIG = ConfigDict( + default=dict( + dialect='mysql', + driver='pymysql', + username='root', + password='root', + host='localhost', + port=3306, + database='tianfeng_task', + charset='utf8mb4' + ), + test=dict( + dialect='sqlite', + database=':memory:' + ) +) + +# Redis缓存配置 +REDIS_CONFIG = ConfigDict( + default=dict( + host='localhost', + port=6379, + db=0, + password=None, + prefix='tianfeng:', + socket_timeout=5, + socket_connect_timeout=5, + decode_responses=True + ), + test=dict( + host='localhost', + port=6379, + db=1, + password=None, + prefix='tianfeng_test:', + decode_responses=True + ) +) + +# 当前环境,可通过环境变量设置 +ENV = os.environ.get('TIANFENG_ENV', 'default') + +# 根据环境获取数据库配置 +db_conf = getattr(DB_CONFIG, ENV) + +# 构建数据库连接URL +if db_conf.dialect == 'sqlite': + DATABASE_URL = f"{db_conf.dialect}:///{db_conf.database}" +else: + DATABASE_URL = ( + f"{db_conf.dialect}+{db_conf.driver}://" + f"{db_conf.username}:{db_conf.password}@" + f"{db_conf.host}:{db_conf.port}/{db_conf.database}?" + f"charset={db_conf.charset}" + ) + +# 创建数据库引擎 +engine = create_engine( + DATABASE_URL, + pool_size=20, + max_overflow=0, + pool_recycle=3600, + pool_pre_ping=True, + echo=False # 设置为True可以显示SQL语句,用于调试 +) + +# 创建会话工厂 +SessionFactory = sessionmaker(bind=engine) + +# 创建线程安全的会话 +db_session = scoped_session(SessionFactory) + +# 创建基类 +Base = declarative_base() +Base.query = db_session.query_property() + +# 数据库配置类 +class DBConfig: + """数据库配置类,提供数据库相关的配置和方法""" + config = DB_CONFIG + env = ENV + url = DATABASE_URL + engine = engine + session = db_session + base = Base + + @classmethod + def get_config(cls): + """获取当前环境的数据库配置""" + return getattr(cls.config, cls.env) + + @classmethod + def get_session(cls): + """获取数据库会话""" + return cls.session + + @classmethod + def init_db(cls): + """ + 初始化数据库 + 创建所有表 + """ + # 导入所有模型,确保它们已注册到Base + import data.models + + # 首先尝试创建数据库(如果不存在) + if cls.get_config().dialect != 'sqlite': + from sqlalchemy import text + # 创建一个不指定数据库的连接 + db_conf = cls.get_config() + temp_url = ( + f"{db_conf.dialect}+{db_conf.driver}://" + f"{db_conf.username}:{db_conf.password}@" + f"{db_conf.host}:{db_conf.port}/" + f"?charset={db_conf.charset}" + ) + temp_engine = create_engine(temp_url) + with temp_engine.connect() as conn: + conn.execute(text(f"CREATE DATABASE IF NOT EXISTS {db_conf.database} CHARACTER SET {db_conf.charset} COLLATE {db_conf.charset}_unicode_ci;")) + conn.commit() + temp_engine.dispose() + + # 创建所有表 + cls.base.metadata.create_all(bind=cls.engine) + + @classmethod + def shutdown_session(cls, exception=None): + """ + 关闭会话 + 在应用程序关闭时调用 + """ + cls.session.remove() + +# 缓存配置类 +class CacheConfig: + """缓存配置类,提供Redis缓存相关的配置和方法""" + config = REDIS_CONFIG + env = ENV + _redis_client = None + + @classmethod + def get_config(cls): + """获取当前环境的Redis配置""" + return getattr(cls.config, cls.env) + + @classmethod + def get_redis_client(cls): + """获取Redis客户端实例""" + if cls._redis_client is None: + try: + import redis + redis_conf = cls.get_config() + cls._redis_client = redis.Redis( + host=redis_conf.host, + port=redis_conf.port, + db=redis_conf.db, + password=redis_conf.password, + socket_timeout=getattr(redis_conf, 'socket_timeout', 5), + socket_connect_timeout=getattr(redis_conf, 'socket_connect_timeout', 5), + decode_responses=getattr(redis_conf, 'decode_responses', True) + ) + except ImportError: + raise ImportError("Redis package is not installed. Please install it with 'pip install redis'") + except Exception as e: + print(f"Error connecting to Redis: {e}") + return None + return cls._redis_client + + @classmethod + def get_key(cls, key): + """获取带前缀的缓存键""" + prefix = getattr(cls.get_config(), 'prefix', 'tianfeng:') + return f"{prefix}{key}" + + @classmethod + def set(cls, key, value, expire=None): + """ + 设置缓存 + + Args: + key (str): 缓存键 + value (any): 缓存值,非字符串类型会被JSON序列化 + expire (int, optional): 过期时间(秒) + + Returns: + bool: 是否设置成功 + """ + redis_client = cls.get_redis_client() + if not redis_client: + return False + + if not isinstance(value, (str, int, float, bool)): + value = json.dumps(value) + + full_key = cls.get_key(key) + if expire: + return redis_client.setex(full_key, expire, value) + else: + return redis_client.set(full_key, value) + + @classmethod + def get(cls, key, default=None): + """ + 获取缓存 + + Args: + key (str): 缓存键 + default (any, optional): 默认值 + + Returns: + any: 缓存值或默认值 + """ + redis_client = cls.get_redis_client() + if not redis_client: + return default + + full_key = cls.get_key(key) + value = redis_client.get(full_key) + + if value is None: + return default + + # 尝试解析JSON + try: + if value.startswith('{') or value.startswith('['): + return json.loads(value) + except (json.JSONDecodeError, AttributeError): + pass + + return value + + @classmethod + def delete(cls, key): + """ + 删除缓存 + + Args: + key (str): 缓存键 + + Returns: + bool: 是否删除成功 + """ + redis_client = cls.get_redis_client() + if not redis_client: + return False + + full_key = cls.get_key(key) + return redis_client.delete(full_key) > 0 + + @classmethod + def exists(cls, key): + """ + 检查缓存是否存在 + + Args: + key (str): 缓存键 + + Returns: + bool: 是否存在 + """ + redis_client = cls.get_redis_client() + if not redis_client: + return False + + full_key = cls.get_key(key) + return redis_client.exists(full_key) > 0 + + @classmethod + def ttl(cls, key): + """ + 获取缓存剩余过期时间 + + Args: + key (str): 缓存键 + + Returns: + int: 剩余秒数,-1表示永不过期,-2表示不存在 + """ + redis_client = cls.get_redis_client() + if not redis_client: + return -2 + + full_key = cls.get_key(key) + return redis_client.ttl(full_key) + + @classmethod + def clear_all(cls): + """ + 清除当前环境下的所有缓存 + + Returns: + bool: 是否清除成功 + """ + redis_client = cls.get_redis_client() + if not redis_client: + return False + + prefix = getattr(cls.get_config(), 'prefix', 'tianfeng:') + keys = redis_client.keys(f"{prefix}*") + if keys: + return redis_client.delete(*keys) > 0 + return True + +# 兼容旧代码的函数 +def init_db(): + """初始化数据库(兼容旧代码)""" + DBConfig.init_db() + +def shutdown_session(exception=None): + """关闭会话(兼容旧代码)""" + DBConfig.shutdown_session(exception) \ No newline at end of file diff --git a/config/settings.py b/config/settings.py new file mode 100644 index 0000000..ac88755 --- /dev/null +++ b/config/settings.py @@ -0,0 +1,108 @@ +# config/settings.py +""" +应用全局配置文件 +包含应用基本信息、服务配置、数据库配置、日志配置等 +""" +import os +from dataclasses import dataclass +from typing import List, Dict, Any + +# 应用基本信息 +class AppConfig: + """应用基本配置""" + NAME = "天风任务模块" # 应用名称 + VERSION = "1.0.0" # 应用版本号 + DEBUG = os.environ.get("DEBUG", "True").lower() == "true" # 调试模式开关,可通过环境变量设置 + +# 服务配置 +class ServerConfig: + """服务器配置""" + HOST = os.environ.get("HOST", "0.0.0.0") # 服务监听地址 + PORT = int(os.environ.get("PORT", 8000)) # 服务监听端口 + RELOAD = AppConfig.DEBUG # 是否启用热重载,默认与DEBUG模式一致 + +# API配置 +class ApiConfig: + """API配置""" + PREFIX = "/api/v1" + TITLE = "天风任务模块API" # API文档标题 + DESCRIPTION = "AMR调度系统中天风任务模块的API接口" # API文档描述 + VERSION = AppConfig.VERSION # API版本号 + +# CORS配置(跨域资源共享) +class CorsConfig: + """CORS配置""" + ALLOW_ORIGINS = ["*"] # 允许的源,* 表示允许所有源 + ALLOW_CREDENTIALS = True # 是否允许携带凭证 + ALLOW_METHODS = ["*"] # 允许的HTTP方法 + ALLOW_HEADERS = ["*"] # 允许的HTTP头 + +# 数据库配置 +class DatabaseConfig: + """数据库配置""" + HOST = os.environ.get("DB_HOST", "localhost") # 数据库主机 + PORT = int(os.environ.get("DB_PORT", 3306)) # 数据库端口 + USER = os.environ.get("DB_USER", "root") # 数据库用户名 + PASSWORD = os.environ.get("DB_PASSWORD", "password") # 数据库密码 + DATABASE = os.environ.get("DB_NAME", "tianfeng_task") # 数据库名 + CHARSET = "utf8mb4" # 字符集 + + @classmethod + def as_dict(cls) -> Dict[str, Any]: + """返回数据库配置字典""" + return { + "host": cls.HOST, + "port": cls.PORT, + "user": cls.USER, + "password": cls.PASSWORD, + "database": cls.DATABASE, + "charset": cls.CHARSET + } + +# 日志配置 +class LogConfig: + """日志配置""" + LEVEL = os.environ.get("LOG_LEVEL", "INFO") # 日志级别 + FORMAT = "%(asctime)s - %(name)s - %(levelname)s - %(message)s" # 日志格式 + FILE = os.environ.get("LOG_FILE", "logs/tianfeng_task.log") # 日志文件路径 + + @classmethod + def as_dict(cls) -> Dict[str, Any]: + """返回日志配置字典""" + return { + "level": cls.LEVEL, + "format": cls.FORMAT, + "file": cls.FILE + } + +# 组件配置 +class ComponentConfig: + """组件配置""" + PACKAGES = ["components"] # 组件包路径 + +# 响应码配置 +class ResponseCode: + """响应码配置""" + SUCCESS = 200 # 成功 + BAD_REQUEST = 400 # 请求错误 + UNAUTHORIZED = 401 # 未授权 + FORBIDDEN = 403 # 禁止访问 + NOT_FOUND = 404 # 资源不存在 + SERVER_ERROR = 500 # 服务器错误 + +# 任务状态配置 +class TaskStatus: + """任务状态配置""" + PENDING = "待执行" # 待执行 + RUNNING = "执行中" # 执行中 + COMPLETED = "已完成" # 已完成 + FAILED = "执行失败" # 执行失败 + CANCELED = "已取消" # 已取消 + PAUSED = "暂停中" # 暂停中 + WAITING = "等待中" # 等待中 + +# 导出日志配置字典,供其他模块使用 +LOG_CONFIG = LogConfig.as_dict() + +# 导出组件包列表,供组件注册使用 +COMPONENT_PACKAGES = ComponentConfig.PACKAGES \ No newline at end of file diff --git a/config/task_config.py b/config/task_config.py new file mode 100644 index 0000000..023af0b --- /dev/null +++ b/config/task_config.py @@ -0,0 +1,290 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务配置模块 +包含任务类型、状态等配置信息 +""" + +from enum import Enum + +# 任务类型枚举 +class TaskType(str, Enum): + NORMAL = "NORMAL" + SCHEDULED = "SCHEDULED" + +# 任务状态枚举 +class TaskStatus(str, Enum): + PENDING = "PENDING" + RUNNING = "RUNNING" + COMPLETED = "COMPLETED" + CANCELLED = "CANCELLED" + FAILED = "FAILED" + PAUSED = "PAUSED" + WAITING = "WAITING" + +# 任务类型配置 +class TaskTypeConfig: + """任务类型配置""" + NORMAL = TaskType.NORMAL.value + SCHEDULED = TaskType.SCHEDULED.value + + # 任务类型详细信息 + DETAILS = { + NORMAL: { + "name": "普通任务", + "description": "立即执行的一次性任务" + }, + SCHEDULED: { + "name": "定时任务", + "description": "按照预设时间执行的任务" + } + } + + @classmethod + def get_name(cls, task_type_key): + """ + 获取任务类型的显示名称 + + Args: + task_type_key (str): 任务类型的键名 + + Returns: + str: 任务类型的显示名称 + """ + return cls.DETAILS.get(task_type_key, {}).get("name", task_type_key) + + @classmethod + def get_description(cls, task_type_key): + """ + 获取任务类型的描述 + + Args: + task_type_key (str): 任务类型的键名 + + Returns: + str: 任务类型的描述 + """ + return cls.DETAILS.get(task_type_key, {}).get("description", "") + + @classmethod + def get_all(cls): + """ + 获取所有任务类型 + + Returns: + list: 任务类型列表,每个元素包含key、name和description + """ + task_types = [] + for key, config in cls.DETAILS.items(): + task_types.append({ + "key": key, + "name": config["name"], + "description": config["description"] + }) + return task_types + + +# 任务状态配置 +class TaskStatusConfig: + """任务状态配置""" + PENDING = TaskStatus.PENDING.value + RUNNING = TaskStatus.RUNNING.value + COMPLETED = TaskStatus.COMPLETED.value + CANCELLED = TaskStatus.CANCELLED.value + FAILED = TaskStatus.FAILED.value + PAUSED = TaskStatus.PAUSED.value + WAITING = TaskStatus.WAITING.value + + # 任务状态详细信息 + DETAILS = { + PENDING: { + "name": "待执行", + "description": "任务已创建但尚未开始执行" + }, + RUNNING: { + "name": "执行中", + "description": "任务正在执行" + }, + COMPLETED: { + "name": "已完成", + "description": "任务已成功完成" + }, + CANCELLED: { + "name": "已取消", + "description": "任务被用户取消" + }, + FAILED: { + "name": "执行失败", + "description": "任务执行过程中出现错误" + }, + PAUSED: { + "name": "暂停中", + "description": "任务被暂停" + }, + WAITING: { + "name": "等待中", + "description": "任务正在等待某些条件满足" + } + } + + @classmethod + def get_name(cls, task_status_key): + """ + 获取任务状态的显示名称 + + Args: + task_status_key (str): 任务状态的键名 + + Returns: + str: 任务状态的显示名称 + """ + return cls.DETAILS.get(task_status_key, {}).get("name", task_status_key) + + @classmethod + def get_description(cls, task_status_key): + """ + 获取任务状态的描述 + + Args: + task_status_key (str): 任务状态的键名 + + Returns: + str: 任务状态的描述 + """ + return cls.DETAILS.get(task_status_key, {}).get("description", "") + + @classmethod + def get_all(cls): + """ + 获取所有任务状态 + + Returns: + list: 任务状态列表,每个元素包含key、name和description + """ + task_statuses = [] + for key, config in cls.DETAILS.items(): + task_statuses.append({ + "key": key, + "name": config["name"], + "description": config["description"] + }) + return task_statuses + + +# 默认值配置 +class DefaultConfig: + """默认值配置""" + TASK_DESCRIPTION = "" # 默认任务描述(备注) + TEMPLATE_DESCRIPTION = "用户自有模板" # 默认模板描述 + + +# 为了向后兼容,保留原有的函数和变量 +TASK_TYPE_CONFIG = TaskTypeConfig.DETAILS +TASK_STATUS_CONFIG = TaskStatusConfig.DETAILS + +# 任务类型常量 +TASK_TYPE_NORMAL = TaskTypeConfig.NORMAL +TASK_TYPE_SCHEDULED = TaskTypeConfig.SCHEDULED + +# 默认值配置 +DEFAULT_TASK_DESCRIPTION = DefaultConfig.TASK_DESCRIPTION +DEFAULT_TEMPLATE_DESCRIPTION = DefaultConfig.TEMPLATE_DESCRIPTION + +# 获取任务类型名称 +def get_task_type_name(task_type_key): + """ + 获取任务类型的显示名称 + + Args: + task_type_key (str): 任务类型的键名 + + Returns: + str: 任务类型的显示名称 + """ + return TaskTypeConfig.get_name(task_type_key) + +# 获取任务类型描述 +def get_task_type_description(task_type_key): + """ + 获取任务类型的描述 + + Args: + task_type_key (str): 任务类型的键名 + + Returns: + str: 任务类型的描述 + """ + return TaskTypeConfig.get_description(task_type_key) + +# 获取任务状态名称 +def get_task_status_name(task_status_key): + """ + 获取任务状态的显示名称 + + Args: + task_status_key (str): 任务状态的键名 + + Returns: + str: 任务状态的显示名称 + """ + return TaskStatusConfig.get_name(task_status_key) + +# 获取任务状态描述 +def get_task_status_description(task_status_key): + """ + 获取任务状态的描述 + + Args: + task_status_key (str): 任务状态的键名 + + Returns: + str: 任务状态的描述 + """ + return TaskStatusConfig.get_description(task_status_key) + +# 获取所有任务类型 +def get_all_task_types(): + """ + 获取所有任务类型 + + Returns: + list: 任务类型列表,每个元素包含key、name和description + """ + return TaskTypeConfig.get_all() + +# 获取所有任务状态 +def get_all_task_statuses(): + """ + 获取所有任务状态 + + Returns: + list: 任务状态列表,每个元素包含key、name和description + """ + return TaskStatusConfig.get_all() + +# 获取任务类型枚举 +def get_task_type_enum(task_type_key): + """ + 获取任务类型的枚举值 + + Args: + task_type_key (str): 任务类型的键名 + + Returns: + str: 任务类型的枚举值(小写) + """ + return task_type_key.lower() + +# 获取任务状态枚举 +def get_task_status_enum(task_status_key): + """ + 获取任务状态的枚举值 + + Args: + task_status_key (str): 任务状态的键名 + + Returns: + str: 任务状态的枚举值(小写) + """ + return task_status_key.lower() \ No newline at end of file diff --git a/core/__init__.py b/core/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/core/__pycache__/__init__.cpython-312.pyc b/core/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bcf1dd60af495375bcc3b51043c467fcdfd422ac GIT binary patch literal 204 zcmX@j%ge<81OW>#rGx0lAOanHW&w&!XQ*V*Wb|9fP{ah}eFmxdngJx7tztrpQ;UjY zvW!fPEn-|!i?d7e3u2ybU;1S4oM+S8pX}Zi^KwqZvyDwa&a;J!W1cQq`EqgJlijgjEsy$%s>_Z^MXfs literal 0 HcmV?d00001 diff --git a/core/__pycache__/component.cpython-312.pyc b/core/__pycache__/component.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..53726a7e0eab52e23684e8fc978a03773d7cbb06 GIT binary patch literal 7172 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 literal 0 HcmV?d00001 diff --git a/core/__pycache__/context.cpython-312.pyc b/core/__pycache__/context.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4de3f6792977284a51048d97670dd223ba63e45e GIT binary patch literal 4803 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 literal 0 HcmV?d00001 diff --git a/core/__pycache__/workflow.cpython-312.pyc b/core/__pycache__/workflow.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0b3e579ad2f0f75f1af6e12a9e3f636335f66b05 GIT binary patch literal 13110 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 Rf45)Vu2D7Jr7$M*{~tyrs5Afo literal 0 HcmV?d00001 diff --git a/core/component.py b/core/component.py new file mode 100644 index 0000000..e9d4d6d --- /dev/null +++ b/core/component.py @@ -0,0 +1,115 @@ +# core/component.py +""" +组件基类和工厂 +""" +from abc import ABC, abstractmethod +from typing import Dict, Any, Type, Callable, List, Optional +import importlib +import inspect +import pkgutil +from .context import TaskContext +from .exceptions import ComponentError, ParameterError +from utils.logger import get_logger + +# 获取日志记录器 +logger = get_logger(__name__) + +class Component(ABC): + """组件基类""" + + def __init__(self, block_id: str, params: Dict[str, Any]): + self.block_id = block_id + self.params = params + self.context = TaskContext.get_instance() + + @abstractmethod + def execute(self) -> Dict[str, Any]: + """执行组件逻辑""" + pass + + def resolve_param(self, param_name: str, default=None) -> Any: + """解析参数值,处理变量引用""" + if param_name not in self.params: + return default + + value = self.params[param_name] + + # 处理变量引用 ${xxx} + if isinstance(value, str) and value.startswith("${") and value.endswith("}"): + var_path = value[2:-1].split(".") + current = self.context.variables + + for part in var_path: + if isinstance(current, dict) and part in current: + current = current[part] + else: + return default # 变量不存在,返回默认值 + + return current + + # 处理块引用 blocks.bX.xxx + if isinstance(value, str) and value.startswith("blocks."): + parts = value.split(".") + if len(parts) >= 3 and parts[0] == "blocks" and parts[1] in self.context.blocks: + block_data = self.context.blocks[parts[1]] + if len(parts) == 3 and parts[2] in block_data: + return block_data[parts[2]] + + return value + + def store_result(self, result: Dict[str, Any]) -> None: + """存储执行结果""" + self.context.set_block_result(self.block_id, result) + + def validate_required_params(self, required_params: List[str]) -> None: + """验证必要参数""" + for param in required_params: + if param not in self.params or self.params[param] is None: + raise ParameterError(f"缺少必要参数: {param}") + +class ComponentFactory: + """组件工厂,负责创建组件实例""" + + _components: Dict[str, Type[Component]] = {} + + @classmethod + def register(cls, component_type: str) -> Callable: + """注册组件类的装饰器""" + def decorator(component_class: Type[Component]) -> Type[Component]: + cls._components[component_type] = component_class + logger.info(f"注册组件: {component_type} -> {component_class.__name__}") + return component_class + return decorator + + @classmethod + def create(cls, block_id: str, component_type: str, params: Dict[str, Any]) -> Component: + """创建组件实例""" + if component_type not in cls._components: + raise ComponentError(f"未知的组件类型: {component_type}") + + component_class = cls._components[component_type] + return component_class(block_id, params) + + @classmethod + def get_component_types(cls) -> List[str]: + """获取所有已注册的组件类型""" + return list(cls._components.keys()) + + @classmethod + def auto_discover(cls, package_name: str) -> None: + """自动发现并注册组件""" + logger.info(f"自动发现组件: {package_name}") + package = importlib.import_module(package_name) + for _, module_name, is_pkg in pkgutil.iter_modules(package.__path__, package.__name__ + '.'): + if not is_pkg: + try: + module = importlib.import_module(module_name) + for name, obj in inspect.getmembers(module): + if (inspect.isclass(obj) and issubclass(obj, Component) and + obj != Component and not inspect.isabstract(obj)): + # 从类名推断组件类型 + component_type = obj.__name__.replace('Component', '').lower() + cls._components[component_type] = obj + logger.info(f"自动注册组件: {component_type} -> {obj.__name__}") + except Exception as e: + logger.error(f"加载组件模块失败: {module_name}, 错误: {str(e)}") \ No newline at end of file diff --git a/core/context.py b/core/context.py new file mode 100644 index 0000000..5adff86 --- /dev/null +++ b/core/context.py @@ -0,0 +1,94 @@ +# core/context.py +""" +任务上下文 +""" +from typing import Dict, Any, Optional +import threading +import time + +class TaskContext: + """ + 任务上下文,存储任务变量和执行结果 + 使用线程本地存储确保线程安全 + """ + + _thread_local = threading.local() + + @classmethod + def get_instance(cls): + """获取当前线程的上下文实例""" + if not hasattr(cls._thread_local, 'instance'): + cls._thread_local.instance = TaskContext() + return cls._thread_local.instance + + def __init__(self): + self.task_id: Optional[str] = None + self.workflow_id: Optional[str] = None + self.variables: Dict[str, Any] = {} # 任务变量 + self.blocks: Dict[str, Any] = {} # 块执行结果 + self.task_inputs: Dict[str, Any] = {} # 任务输入参数 + self.task_status: str = "pending" # 任务状态 + self.start_time: Optional[int] = None # 开始时间 + self.end_time: Optional[int] = None # 结束时间 + self.executing_robot: Optional[str] = None # 执行机器人 + + def reset(self): + """重置上下文""" + self.__init__() + + def initialize_task(self, task_id: str, workflow_id: str, inputs: Dict[str, Any] = None): + """初始化任务""" + self.task_id = task_id + self.workflow_id = workflow_id + self.start_time = int(time.time() * 1000) + self.task_status = "executing" + + if inputs: + self.task_inputs = inputs.copy() + self.variables["taskInputs"] = self.task_inputs + + def set_variable(self, name: str, value: Any): + """设置变量值""" + self.variables[name] = value + + def get_variable(self, name: str, default=None): + """获取变量值""" + return self.variables.get(name, default) + + def set_block_result(self, block_id: str, result: Dict[str, Any]): + """设置块执行结果""" + self.blocks[block_id] = result + + def get_block_result(self, block_id: str, default=None): + """获取块执行结果""" + return self.blocks.get(block_id, default) + + def set_task_status(self, status: str): + """设置任务状态""" + self.task_status = status + self.variables["taskStatus"] = status + + def set_executing_robot(self, robot_id: str): + """设置执行机器人""" + self.executing_robot = robot_id + self.variables["executingRobot"] = robot_id + + def complete_task(self, status: str = "completed"): + """完成任务""" + self.task_status = status + self.variables["taskStatus"] = status + self.end_time = int(time.time() * 1000) + + def to_dict(self): + """转换为字典""" + return { + "task_id": self.task_id, + "workflow_id": self.workflow_id, + "variables": self.variables, + "blocks": self.blocks, + "task_inputs": self.task_inputs, + "task_status": self.task_status, + "start_time": self.start_time, + "end_time": self.end_time, + "executing_robot": self.executing_robot + } \ No newline at end of file diff --git a/core/exceptions.py b/core/exceptions.py new file mode 100644 index 0000000..fd83696 --- /dev/null +++ b/core/exceptions.py @@ -0,0 +1,31 @@ +# core/exceptions.py +""" +自定义异常 +""" +class TianfengTaskError(Exception): + """天风任务模块基础异常""" + pass + +class ComponentError(TianfengTaskError): + """组件执行异常""" + pass + +class ParameterError(ComponentError): + """参数错误异常""" + pass + +class WorkflowError(TianfengTaskError): + """工作流执行异常""" + pass + +class DatabaseError(TianfengTaskError): + """数据库异常""" + pass + +class ValidationError(TianfengTaskError): + """验证异常""" + pass + +class ApiError(TianfengTaskError): + """API异常""" + pass \ No newline at end of file diff --git a/core/intelligence/__init__.py b/core/intelligence/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/core/intelligence/embedding.py b/core/intelligence/embedding.py new file mode 100644 index 0000000..fd947ea --- /dev/null +++ b/core/intelligence/embedding.py @@ -0,0 +1,3 @@ +""" +向量化核心功能 +""" diff --git a/core/intelligence/vector_store.py b/core/intelligence/vector_store.py new file mode 100644 index 0000000..4a71da8 --- /dev/null +++ b/core/intelligence/vector_store.py @@ -0,0 +1,3 @@ +""" +向量存储核心功能 +""" \ No newline at end of file diff --git a/core/workflow.py b/core/workflow.py new file mode 100644 index 0000000..365e8fd --- /dev/null +++ b/core/workflow.py @@ -0,0 +1,287 @@ +# core/workflow.py +""" +工作流定义和执行 +""" +from typing import Dict, Any, List, Optional +import time +import json +import uuid +from .context import TaskContext +from .component import ComponentFactory +from .exceptions import WorkflowError, ComponentError +from utils.logger import get_logger + +# 获取日志记录器 +logger = get_logger(__name__) + +class WorkflowDefinition: + """工作流定义""" + + def __init__(self, workflow_id: Optional[str] = None, name: str = "", workflow_type: str = "normal"): + self.workflow_id = workflow_id or f"wf_{uuid.uuid4().hex}" + self.name = name + self.workflow_type = workflow_type # normal或scheduled + self.variables: Dict[str, Any] = {} + self.blocks: List[Dict[str, Any]] = [] + self.schedule: Optional[Dict[str, Any]] = None # 定时任务的调度信息 + self.version: str = "1.0" + self.description: str = "" + self.created_at: int = int(time.time() * 1000) + self.updated_at: int = int(time.time() * 1000) + + def add_block(self, block: Dict[str, Any]) -> None: + """添加块""" + self.blocks.append(block) + + def set_variables(self, variables: Dict[str, Any]) -> None: + """设置变量""" + self.variables = variables.copy() + + def set_schedule(self, schedule: Dict[str, Any]) -> None: + """设置调度信息""" + self.schedule = schedule + self.workflow_type = "scheduled" + + def to_dict(self) -> Dict[str, Any]: + """转换为字典""" + return { + "workflow_id": self.workflow_id, + "name": self.name, + "workflow_type": self.workflow_type, + "variables": self.variables, + "blocks": self.blocks, + "schedule": self.schedule, + "version": self.version, + "description": self.description, + "created_at": self.created_at, + "updated_at": self.updated_at + } + + @classmethod + def from_dict(cls, data: Dict[str, Any]) -> 'WorkflowDefinition': + """从字典创建工作流定义""" + workflow = cls( + workflow_id=data.get("workflow_id"), + name=data.get("name", ""), + workflow_type=data.get("workflow_type", "normal") + ) + workflow.variables = data.get("variables", {}) + workflow.blocks = data.get("blocks", []) + workflow.schedule = data.get("schedule") + workflow.version = data.get("version", "1.0") + workflow.description = data.get("description", "") + workflow.created_at = data.get("created_at", int(time.time() * 1000)) + workflow.updated_at = data.get("updated_at", int(time.time() * 1000)) + return workflow + + def to_json(self) -> str: + """转换为JSON字符串""" + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> 'WorkflowDefinition': + """从JSON字符串创建工作流定义""" + data = json.loads(json_str) + return cls.from_dict(data) + +class WorkflowExecutor: + """工作流执行器""" + + def __init__(self): + self.component_factory = ComponentFactory + + def execute(self, workflow: WorkflowDefinition, task_inputs: Dict[str, Any] = None) -> Dict[str, Any]: + """执行工作流""" + # 获取上下文 + context = TaskContext.get_instance() + + # 重置上下文 + context.reset() + + # 生成任务ID + task_id = f"task_{uuid.uuid4().hex}" + + # 初始化任务 + context.initialize_task(task_id, workflow.workflow_id, task_inputs) + + # 设置任务变量 + context.variables.update(workflow.variables) + + logger.info(f"开始执行工作流: {workflow.name} (ID: {workflow.workflow_id}), 任务ID: {task_id}") + + try: + # 执行组件 + self._execute_blocks(workflow.blocks) + + # 完成任务 + context.complete_task("completed") + + logger.info(f"工作流执行完成: {workflow.name} (ID: {workflow.workflow_id}), 任务ID: {task_id}") + + # 返回执行结果 + return context.to_dict() + + except Exception as e: + # 设置任务状态为执行失败 + context.complete_task("failed") + + error_msg = f"工作流执行失败: {str(e)}" + logger.error(f"{error_msg}, 工作流: {workflow.name} (ID: {workflow.workflow_id}), 任务ID: {task_id}") + + # 返回错误信息 + result = context.to_dict() + result["error"] = error_msg + return result + + def _execute_blocks(self, blocks: List[Dict[str, Any]]) -> None: + """执行一系列组件""" + context = TaskContext.get_instance() + + for block in blocks: + block_id = block["id"] + block_type = block["type"] + params = block.get("params", {}) + + logger.debug(f"执行组件: {block_id} ({block_type})") + + # 特殊处理流程控制组件 + if block_type == "if_condition": + self._execute_if_condition(block_id, params) + elif block_type == "for_each": + self._execute_for_each(block_id, params) + elif block_type == "while_loop": + self._execute_while_loop(block_id, params) + else: + # 创建并执行普通组件 + try: + component = self.component_factory.create(block_id, block_type, params) + result = component.execute() + logger.debug(f"组件 {block_id} ({block_type}) 执行成功") + except Exception as e: + error_msg = f"组件 {block_id} ({block_type}) 执行失败: {str(e)}" + logger.error(error_msg) + context.set_block_result(block_id, {"error": error_msg}) + + # 检查是否需要中断执行 + if block.get("stop_on_error", True): + raise ComponentError(error_msg) + + def _execute_if_condition(self, block_id: str, params: Dict[str, Any]) -> None: + """执行条件组件""" + context = TaskContext.get_instance() + + try: + # 计算条件表达式 + condition_expr = params.get("condition", "False") + condition_value = eval(condition_expr, {"__builtins__": {}}, { + "context": context, + "blocks": context.blocks, + "variables": context.variables + }) + + # 存储条件结果 + context.set_block_result(block_id, {"condition": condition_value}) + + # 根据条件执行相应分支 + if condition_value and "true_blocks" in params: + self._execute_blocks(params["true_blocks"]) + elif not condition_value and "false_blocks" in params: + self._execute_blocks(params["false_blocks"]) + + except Exception as e: + error_msg = f"条件组件 {block_id} 执行失败: {str(e)}" + logger.error(error_msg) + context.set_block_result(block_id, {"error": error_msg}) + raise ComponentError(error_msg) + + def _execute_for_each(self, block_id: str, params: Dict[str, Any]) -> None: + """执行循环组件""" + context = TaskContext.get_instance() + + try: + # 获取循环项 + items_expr = params.get("items", "[]") + items = eval(items_expr, {"__builtins__": {}}, { + "context": context, + "blocks": context.blocks, + "variables": context.variables + }) + + results = [] + + # 遍历执行循环体 + for index, item in enumerate(items): + # 设置循环变量 + context.set_variable("loop_item", item) + context.set_variable("loop_index", index) + + # 执行循环体 + if "loop_blocks" in params: + self._execute_blocks(params["loop_blocks"]) + + # 收集结果 + if "result_var" in params: + result_var = params["result_var"] + if result_var in context.variables: + results.append(context.get_variable(result_var)) + + # 存储循环结果 + context.set_block_result(block_id, { + "count": len(items), + "results": results + }) + + except Exception as e: + error_msg = f"循环组件 {block_id} 执行失败: {str(e)}" + logger.error(error_msg) + context.set_block_result(block_id, {"error": error_msg}) + raise ComponentError(error_msg) + + def _execute_while_loop(self, block_id: str, params: Dict[str, Any]) -> None: + """执行while循环组件""" + context = TaskContext.get_instance() + + try: + max_iterations = params.get("max_iterations", 100) + iteration = 0 + results = [] + + # 循环执行 + while iteration < max_iterations: + # 计算条件表达式 + condition_expr = params.get("condition", "False") + condition_value = eval(condition_expr, {"__builtins__": {}}, { + "context": context, + "blocks": context.blocks, + "variables": context.variables + }) + + if not condition_value: + break + + # 设置循环变量 + context.set_variable("loop_iteration", iteration) + + # 执行循环体 + if "loop_blocks" in params: + self._execute_blocks(params["loop_blocks"]) + + # 收集结果 + if "result_var" in params: + result_var = params["result_var"] + if result_var in context.variables: + results.append(context.get_variable(result_var)) + + iteration += 1 + + # 存储循环结果 + context.set_block_result(block_id, { + "iterations": iteration, + "results": results + }) + + except Exception as e: + error_msg = f"While循环组件 {block_id} 执行失败: {str(e)}" + logger.error(error_msg) + context.set_block_result(block_id, {"error": error_msg}) + raise ComponentError(error_msg) \ No newline at end of file diff --git a/data/__init__.py b/data/__init__.py new file mode 100644 index 0000000..a54ffc9 --- /dev/null +++ b/data/__init__.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +数据模块 +包含数据库模型和数据访问功能 +""" + +from data.session import initialize_database, get_session, session_scope + +__all__ = ['initialize_database', 'get_session', 'session_scope'] diff --git a/data/__pycache__/__init__.cpython-312.pyc b/data/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e90d0efe588e65bc392faff22584deaa9c3d8b7a GIT binary patch literal 417 zcmX@j%ge<81UikE)7cpr7#@Q-Fu(+5d{zN6rZc24L@}f=rZD9&<}yVwboG36r#n~|+cf`cUgZvU7uUAlci^C>2 xKczG$)vkyKXe}_b8Hy!<#0O?ZM#hgE%#1AGxfmEd880$;JmPX}WG@263;^0aoudE% literal 0 HcmV?d00001 diff --git a/data/__pycache__/session.cpython-312.pyc b/data/__pycache__/session.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..16ce81b63b755c0001658a78d71ce60ac78a366d GIT binary patch literal 9791 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 literal 0 HcmV?d00001 diff --git a/data/migrations/__init__.py b/data/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/data/migrations/migration_manager.py b/data/migrations/migration_manager.py new file mode 100644 index 0000000..e69de29 diff --git a/data/migrations/versions.py b/data/migrations/versions.py new file mode 100644 index 0000000..e69de29 diff --git a/data/models/__init__.py b/data/models/__init__.py new file mode 100644 index 0000000..b8ad30a --- /dev/null +++ b/data/models/__init__.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +数据模型模块 +包含所有数据库模型的定义 +""" + +from data.models.base import BaseModel +from data.models.component import ComponentCategory, ComponentType, Component +from data.models.task import Task +from data.models.task_version import TaskVersion +from data.models.task_record import TaskRecord +from data.models.task_flow_block import TaskFlowBlock, BlockType +from data.models.component_parameter import ( + ComponentParameterDefinition, + ComponentParameterValue, + ParameterType, + ParameterValueFormat +) +from data.models.task_variable import TaskVariableDefinition +from data.models.task_backup import TaskBackup +from data.models.task_edit_history import TaskEditHistory + +__all__ = [ + 'BaseModel', + 'ComponentCategory', + 'ComponentType', + 'Component', + 'Task', + 'TaskVersion', + 'TaskRecord', + 'TaskFlowBlock', + 'BlockType', + 'ComponentParameterDefinition', + 'ComponentParameterValue', + 'ParameterType', + 'ParameterValueFormat', + 'TaskVariableDefinition', + 'TaskBackup', + 'TaskEditHistory' +] diff --git a/data/models/__pycache__/__init__.cpython-312.pyc b/data/models/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e96416983a39c233774bba0afaa4943d16107693 GIT binary patch literal 1200 zcmZuvOK1~87@pm{H`ylX`z1aul1mUpuwq5pTD(+5Y7fK0vdL~^%uF`yZj{`r_@KTJ zL<^;gwG}Kv(Tk$Rvj^J{o{(rvtzxgW55}@Dmm+zU| zUI2bDr~ZlC#^wuZ%mE!hpbNT)1S~>PV73Q&uorr<5Bjhl`gzQY0yqeR-1eammY~FK zKMLarjBq=EWZVYZa1=(lA4D-6hjH8v+i?f%z@4y@$3v(Kcf)ROOQ;9;!d`BNQ6KJy z{Q}4UJ@Qh310^}pRve-r+)k$G^!aI|t2vym>+m0m-Ng>&&1sR|=3*9Buh!(?gh@|J+T!x? zn~;H)>@<~2O);T%u1WScZ)*@#3w7o8ngi);E~*jR7KD#z4`wMY3!fd?*HUdznbgZQ zo%m?kTs4GLbp>qFNrNqu!stom5}m89TseCD*a>CKuyc-CP}~o%DxVjsPw!OL-YXjm zGu3xDs8d~BQrzX0jirZ`wKezd;;w{~)$-FuKBF@33ZtXclv7ldy;D_97D^;|iUy0w zIBgxGrwjDAhbjE>2!ilC=n=eI5)clrgNbioq6`j}!I3gZu7fjwMV}yU0t#CZAPm!B R84UgL#>3+EfOUX&_y=(tiCh2x literal 0 HcmV?d00001 diff --git a/data/models/__pycache__/base.cpython-312.pyc b/data/models/__pycache__/base.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bd45857a2c51357a56ed9c4580f44935b7ed57fa GIT binary patch literal 5214 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 literal 0 HcmV?d00001 diff --git a/data/models/__pycache__/component.cpython-312.pyc b/data/models/__pycache__/component.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a910c399e402356e5d264269744abfd56faa88e1 GIT binary patch literal 7697 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 V3V#<5tGo(D#iago3V+Gs{V!>;JO=;( literal 0 HcmV?d00001 diff --git a/data/models/__pycache__/task.cpython-312.pyc b/data/models/__pycache__/task.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d7b90ef64e638ecf7a1b4bb2d2e3ccada2b2021e GIT binary patch literal 8971 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 literal 0 HcmV?d00001 diff --git a/data/models/__pycache__/task_flow_block.cpython-312.pyc b/data/models/__pycache__/task_flow_block.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8b1388bfbe6c809f94a55f3560c8ebfe2ebf4c8f GIT binary patch literal 7960 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 literal 0 HcmV?d00001 diff --git a/data/models/__pycache__/task_variable.cpython-312.pyc b/data/models/__pycache__/task_variable.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..00adb4fd4df040d469da9dff9e820a7651132900 GIT binary patch literal 7617 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 literal 0 HcmV?d00001 diff --git a/data/models/__pycache__/user_operation.cpython-312.pyc b/data/models/__pycache__/user_operation.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3d6df6a9085b3458f211de8070b085d6c7ce83cf GIT binary patch literal 5216 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" + + @classmethod + def get_by_code(cls, code): + """ + 根据编码获取分类 + """ + return cls.query.filter(cls.code == code, cls.is_deleted == False).first() + +class ComponentType(BaseModel): + """ + 组件类型模型 + 表示组件的类型 + """ + __tablename__ = 'component_types' + + category_id = Column(Integer, ForeignKey('component_categories.id'), nullable=False, comment='分类ID') + name = Column(String(100), nullable=False, comment='类型名称') + code = Column(String(50), nullable=False, unique=True, comment='类型编码') + description = Column(String(500), nullable=True, comment='类型描述') + icon = Column(String(100), nullable=True, comment='类型图标') + order = Column(Integer, default=0, comment='排序顺序') + is_system = Column(Boolean, default=False, comment='是否为系统组件') + + # 关联关系 + category = relationship('ComponentCategory', back_populates='types') + components = relationship('Component', back_populates='type', cascade='all, delete-orphan') + parameter_definitions = relationship('ComponentParameterDefinition', back_populates='component_type', cascade='all, delete-orphan') + + def __repr__(self): + return f"" + + @classmethod + def get_by_code(cls, code): + """ + 根据编码获取类型 + """ + return cls.query.filter(cls.code == code, cls.is_deleted == False).first() + + @classmethod + def get_by_category(cls, category_id): + """ + 根据分类获取类型列表 + """ + return cls.query.filter(cls.category_id == category_id, cls.is_deleted == False).order_by(cls.order).all() + +class Component(BaseModel): + """ + 组件模型 + 表示一个具体的组件 + """ + __tablename__ = 'components' + + type_id = Column(Integer, ForeignKey('component_types.id'), nullable=False, comment='类型ID') + name = Column(String(100), nullable=False, comment='组件名称') + code = Column(String(50), nullable=False, unique=True, comment='组件编码') + description = Column(String(500), nullable=True, comment='组件描述') + icon = Column(String(100), nullable=True, comment='组件图标') + version = Column(String(20), nullable=False, default='1.0.0', comment='组件版本') + is_system = Column(Boolean, default=False, comment='是否为系统组件') + is_enabled = Column(Boolean, default=True, comment='是否启用') + config_schema = Column(JSON, nullable=True, comment='配置模式(JSON Schema)') + default_config = Column(JSON, nullable=True, comment='默认配置') + implementation = Column(Text, nullable=True, comment='组件实现代码') + + # 关联关系 + type = relationship('ComponentType', back_populates='components') + + def __repr__(self): + return f"" + + @classmethod + def get_by_code(cls, code): + """ + 根据编码获取组件 + """ + return cls.query.filter(cls.code == code, cls.is_deleted == False).first() + + @classmethod + def get_by_type(cls, type_id): + """ + 根据类型获取组件列表 + """ + return cls.query.filter(cls.type_id == type_id, cls.is_enabled == True, cls.is_deleted == False).all() + + @classmethod + def get_system_components(cls): + """ + 获取所有系统组件 + """ + return cls.query.filter(cls.is_system == True, cls.is_enabled == True, cls.is_deleted == False).all() \ No newline at end of file diff --git a/data/models/component_parameter.py b/data/models/component_parameter.py new file mode 100644 index 0000000..ab062c8 --- /dev/null +++ b/data/models/component_parameter.py @@ -0,0 +1,322 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +组件参数模型模块 +包含组件参数定义和参数值相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Text, DateTime, Boolean, Enum, ForeignKey, JSON, Float +from sqlalchemy.orm import relationship +from data.models.base import BaseModel +from config.database import DBConfig, CacheConfig + +class ParameterType(enum.Enum): + """ + 参数类型枚举 + """ + STRING = 'string' # 字符串 + NUMBER = 'number' # 数字 + BOOLEAN = 'boolean' # 布尔值 + ARRAY = 'array' # 数组 + OBJECT = 'object' # 对象 + DATE = 'date' # 日期 + TIME = 'time' # 时间 + DATETIME = 'datetime' # 日期时间 + FILE = 'file' # 文件 + SELECT = 'select' # 选择器 + MULTI_SELECT = 'multi_select' # 多选选择器 + CUSTOM = 'custom' # 自定义类型 + +class ParameterValueFormat(enum.Enum): + """ + 参数值格式枚举 + """ + SIMPLE = 'simple' # 简单值 + JSON = 'json' # JSON格式 + EXPRESSION = 'expression' # 表达式 + +class ComponentParameterDefinition(BaseModel): + """ + 组件参数定义模型 + 定义组件类型的输入参数 + """ + __tablename__ = 'component_parameter_definitions' + + component_type_id = Column(Integer, ForeignKey('component_types.id'), nullable=False, comment='组件类型ID') + code = Column(String(100), nullable=False, comment='参数代码') + name = Column(String(100), nullable=False, comment='参数名称') + description = Column(String(500), nullable=True, comment='参数描述') + parameter_type = Column(Enum(ParameterType), nullable=False, comment='参数类型') + is_required = Column(Boolean, default=False, comment='是否必填') + default_value = Column(JSON, nullable=True, comment='默认值') + validation_rules = Column(JSON, nullable=True, comment='验证规则') + options = Column(JSON, nullable=True, comment='选项(用于选择器类型)') + ui_config = Column(JSON, nullable=True, comment='UI配置') + order = Column(Integer, default=0, comment='排序') + + # 关联关系 + component_type = relationship('ComponentType', back_populates='parameter_definitions') + + def __repr__(self): + return f"" + + @classmethod + def get_by_component_type(cls, component_type_id): + """ + 获取组件类型的所有参数定义 + """ + return cls.query.filter( + cls.component_type_id == component_type_id, + cls.is_deleted == False + ).order_by(cls.order).all() + + @classmethod + def get_by_code(cls, component_type_id, code): + """ + 根据参数代码获取参数定义 + """ + return cls.query.filter( + cls.component_type_id == component_type_id, + cls.code == code, + cls.is_deleted == False + ).first() + + @classmethod + def create_parameter_definition(cls, component_type_id, code, name, parameter_type, + description=None, is_required=False, default_value=None, + validation_rules=None, options=None, ui_config=None, order=0): + """ + 创建参数定义 + """ + from config.database import db_session + + # 检查是否已存在 + existing = cls.get_by_code(component_type_id, code) + if existing: + return existing + + # 创建新参数定义 + param_def = cls( + component_type_id=component_type_id, + code=code, + name=name, + description=description, + parameter_type=parameter_type, + is_required=is_required, + default_value=default_value, + validation_rules=validation_rules, + options=options, + ui_config=ui_config, + order=order + ) + + db_session.add(param_def) + db_session.commit() + return param_def + +class ComponentParameterValue(BaseModel): + """ + 组件参数值模型 + 存储组件实例的参数值 + """ + __tablename__ = 'component_parameter_values' + + component_instance_id = Column(Integer, ForeignKey('task_flow_blocks.id'), nullable=False, comment='组件实例ID(任务流程块ID)') + parameter_code = Column(String(100), nullable=False, comment='参数代码') + value = Column(JSON, nullable=True, comment='参数值') + value_format = Column(Enum(ParameterValueFormat), nullable=False, default=ParameterValueFormat.SIMPLE, comment='值格式') + is_expression = Column(Boolean, default=False, comment='是否为表达式') + expression = Column(String(500), nullable=True, comment='表达式内容') + + # 关联关系 + component_instance = relationship('TaskFlowBlock', back_populates='parameter_values') + + def __repr__(self): + return f"" + + @classmethod + def get_by_component_instance(cls, component_instance_id): + """ + 获取组件实例的所有参数值 + + Returns: + dict: 参数值字典,键为参数代码,值为参数值对象 + """ + values = cls.query.filter( + cls.component_instance_id == component_instance_id, + cls.is_deleted == False + ).all() + + # 转换为字典 + result = {} + for value in values: + result[value.parameter_code] = value + + return result + + @classmethod + def get_by_parameter_code(cls, component_instance_id, parameter_code): + """ + 根据参数代码获取参数值 + """ + return cls.query.filter( + cls.component_instance_id == component_instance_id, + cls.parameter_code == parameter_code, + cls.is_deleted == False + ).first() + + @classmethod + def set_parameter_value(cls, component_instance_id, parameter_code, value, + value_format=ParameterValueFormat.SIMPLE, + is_expression=False, expression=None): + """ + 设置参数值 + """ + from config.database import db_session + + # 检查是否已存在 + param_value = cls.get_by_parameter_code(component_instance_id, parameter_code) + + if param_value: + # 更新现有参数值 + param_value.value = value + param_value.value_format = value_format + param_value.is_expression = is_expression + param_value.expression = expression + else: + # 创建新参数值 + param_value = cls( + component_instance_id=component_instance_id, + parameter_code=parameter_code, + value=value, + value_format=value_format, + is_expression=is_expression, + expression=expression + ) + db_session.add(param_value) + + db_session.commit() + return param_value + + @classmethod + def delete_parameter_value(cls, component_instance_id, parameter_code): + """ + 删除参数值 + """ + from config.database import db_session + + param_value = cls.get_by_parameter_code(component_instance_id, parameter_code) + if param_value: + param_value.is_deleted = True + db_session.commit() + return True + + return False + + def get_value(self): + """ + 获取参数值 + + Returns: + any: 参数值 + """ + return self.value + +class ParameterTemplate(BaseModel): + """ + 参数模板模型 + 用于存储常用的参数配置模板 + """ + __tablename__ = 'parameter_templates' + + name = Column(String(100), nullable=False, comment='模板名称') + component_type_id = Column(Integer, ForeignKey('component_types.id'), nullable=False, comment='组件类型ID') + description = Column(String(500), nullable=True, comment='模板描述') + parameter_values = Column(JSON, nullable=False, comment='参数值配置') + is_system = Column(Boolean, default=False, comment='是否为系统模板') + created_by = Column(String(100), nullable=True, comment='创建用户ID') + + # 关联关系 + component_type = relationship('ComponentType') + + def __repr__(self): + return f"" + + @classmethod + def get_by_component_type(cls, component_type_id): + """ + 获取组件类型的所有参数模板 + + Args: + component_type_id (int): 组件类型ID + + Returns: + list: 参数模板列表 + """ + # 尝试从缓存获取 + cache_key = f"parameter_templates:{component_type_id}" + cached_data = CacheConfig.get(cache_key) + + if cached_data: + return cached_data + + # 从数据库获取 + templates = cls.query.filter( + cls.component_type_id == component_type_id, + cls.is_deleted == False + ).all() + + # 转换为字典列表 + result = [{ + 'id': template.id, + 'name': template.name, + 'description': template.description, + 'parameter_values': template.parameter_values, + 'is_system': template.is_system, + 'created_by': template.created_by, + 'created_at': template.created_at.isoformat() if template.created_at else None + } for template in templates] + + # 缓存结果 + CacheConfig.set(cache_key, result, expire=3600) # 缓存1小时 + + return result + + @classmethod + def create_template(cls, name, component_type_id, parameter_values, description=None, is_system=False, created_by=None): + """ + 创建参数模板 + + Args: + name (str): 模板名称 + component_type_id (int): 组件类型ID + parameter_values (dict): 参数值配置 + description (str, optional): 模板描述 + is_system (bool, optional): 是否为系统模板 + created_by (str, optional): 创建用户ID + + Returns: + ParameterTemplate: 创建的参数模板对象 + """ + from config.database import db_session + + # 创建参数模板 + template = cls( + name=name, + component_type_id=component_type_id, + description=description, + parameter_values=parameter_values, + is_system=is_system, + created_by=created_by + ) + + db_session.add(template) + db_session.commit() + + # 清除缓存 + cache_key = f"parameter_templates:{component_type_id}" + CacheConfig.delete(cache_key) + + return template \ No newline at end of file diff --git a/data/models/subtask.py b/data/models/subtask.py new file mode 100644 index 0000000..5af9cff --- /dev/null +++ b/data/models/subtask.py @@ -0,0 +1,94 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +子任务模型模块 +包含子任务和子任务版本相关的数据模型 +""" + +from sqlalchemy import Column, Integer, String, Text, Boolean, ForeignKey, JSON +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class SubTask(BaseModel): + """ + 子任务模型 + 表示一个可重用的子任务 + """ + __tablename__ = 'subtasks' + + name = Column(String(100), nullable=False, comment='子任务名称') + code = Column(String(50), nullable=False, unique=True, comment='子任务编码') + description = Column(String(500), nullable=True, comment='子任务描述') + is_system = Column(Boolean, default=False, comment='是否为系统子任务') + is_enabled = Column(Boolean, default=True, comment='是否启用') + current_version_id = Column(Integer, nullable=True, comment='当前版本ID') + + # 关联关系 + versions = relationship('SubTaskVersion', back_populates='subtask', cascade='all, delete-orphan') + + def __repr__(self): + return f"" + + @classmethod + def get_by_code(cls, code): + """ + 根据编码获取子任务 + """ + return cls.query.filter(cls.code == code, cls.is_deleted == False).first() + + @classmethod + def get_enabled_subtasks(cls): + """ + 获取所有启用的子任务 + """ + return cls.query.filter(cls.is_enabled == True, cls.is_deleted == False).all() + + @classmethod + def get_system_subtasks(cls): + """ + 获取所有系统子任务 + """ + return cls.query.filter(cls.is_system == True, cls.is_enabled == True, cls.is_deleted == False).all() + +class SubTaskVersion(BaseModel): + """ + 子任务版本模型 + 表示子任务的一个版本 + """ + __tablename__ = 'subtask_versions' + + subtask_id = Column(Integer, ForeignKey('subtasks.id'), nullable=False, comment='子任务ID') + version = Column(String(20), nullable=False, comment='版本号') + content = Column(JSON, nullable=True, comment='子任务内容(JSON格式)') + flow_data = Column(JSON, nullable=True, comment='流程数据(JSON格式)') + input_schema = Column(JSON, nullable=True, comment='输入参数模式(JSON Schema)') + output_schema = Column(JSON, nullable=True, comment='输出参数模式(JSON Schema)') + remark = Column(String(500), nullable=True, comment='版本备注') + + # 关联关系 + subtask = relationship('SubTask', back_populates='versions') + + def __repr__(self): + return f"" + + @classmethod + def get_latest_version(cls, subtask_id): + """ + 获取子任务的最新版本 + """ + return cls.query.filter( + cls.subtask_id == subtask_id, + cls.is_deleted == False + ).order_by(cls.created_at.desc()).first() + + @classmethod + def get_by_version(cls, subtask_id, version): + """ + 根据版本号获取子任务版本 + """ + return cls.query.filter( + cls.subtask_id == subtask_id, + cls.version == version, + cls.is_deleted == False + ).first() \ No newline at end of file diff --git a/data/models/task.py b/data/models/task.py new file mode 100644 index 0000000..b6b6fd9 --- /dev/null +++ b/data/models/task.py @@ -0,0 +1,207 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务模型模块 +包含任务基本信息的数据模型 +""" + +import datetime +import enum +import uuid +from sqlalchemy import Column, Integer, String, Text, DateTime, Boolean, Enum, ForeignKey, JSON +from sqlalchemy.orm import relationship +from data.models.base import BaseModel +from config.task_config import ( + TaskTypeConfig, + TaskStatusConfig, + get_task_type_enum, + get_task_status_enum +) + +class TaskType(enum.Enum): + """ + 任务类型枚举 + 与配置文件中的TaskTypeConfig保持一致 + """ + NORMAL = get_task_type_enum(TaskTypeConfig.NORMAL) # 普通任务 + SCHEDULED = get_task_type_enum(TaskTypeConfig.SCHEDULED) # 定时任务 + +class TaskStatus(enum.Enum): + """ + 任务状态枚举 + 与配置文件中的TaskStatusConfig保持一致 + """ + PENDING = get_task_status_enum(TaskStatusConfig.PENDING) # 待执行 + RUNNING = get_task_status_enum(TaskStatusConfig.RUNNING) # 执行中 + COMPLETED = get_task_status_enum(TaskStatusConfig.COMPLETED) # 已完成 + CANCELLED = get_task_status_enum(TaskStatusConfig.CANCELLED) # 已取消 + FAILED = get_task_status_enum(TaskStatusConfig.FAILED) # 执行失败 + PAUSED = get_task_status_enum(TaskStatusConfig.PAUSED) # 暂停中 + WAITING = get_task_status_enum(TaskStatusConfig.WAITING) # 等待中 + + +class Task(BaseModel): + """ + 任务模型 + 表示一个任务的基本信息 + """ + __tablename__ = 'tasks' + + # 添加UUID字段作为外部可见的任务ID + task_id = Column(String(36), nullable=False, unique=True, index=True, comment='任务UUID,用于外部引用') + name = Column(String(100), nullable=False, comment='任务名称') + task_type = Column(String(100), nullable=False, comment='任务类型') + description = Column(String(500), nullable=True, comment='任务描述') + is_template = Column(Boolean, default=False, comment='是否为模板') + template_description = Column(String(500), nullable=True, comment='模板描述') + current_version_id = Column(Integer, nullable=True, comment='当前版本ID') + is_enabled = Column(Boolean, default=True, comment='是否启用') + created_by = Column(String(100), nullable=True, comment='创建用户ID') + updated_by = Column(String(100), nullable=True, comment='最后更新用户ID') + + # 定时任务相关字段 + is_scheduled = Column(Boolean, default=False, comment='是否为定时任务') + schedule_expression = Column(String(100), nullable=True, comment='定时表达式(Cron格式)') + next_run_time = Column(DateTime, nullable=True, comment='下次执行时间') + + # 关联关系 + versions = relationship('TaskVersion', back_populates='task', cascade='all, delete-orphan') + records = relationship('TaskRecord', back_populates='task') + flow_blocks = relationship('TaskFlowBlock', back_populates='task') + + def __repr__(self): + return f"" + + def to_json(self, fields=None, exclude=None, timestamp_format='ms', include_type_name=True): + """ + 将任务模型转换为JSON友好的字典 + + Args: + fields (list, optional): 需要包含的字段列表,为None则包含所有字段 + exclude (list, optional): 需要排除的字段列表 + timestamp_format (str, optional): 时间戳格式,可选值:'ms'(毫秒时间戳), 'iso'(ISO格式), 'str'(字符串格式) + include_type_name (bool, optional): 是否包含任务类型名称 + + Returns: + dict: 包含指定字段的字典 + """ + # 调用父类的to_json方法获取基础字段 + result = super().to_json(fields, exclude, timestamp_format) + + # 使用UUID作为任务ID + result['task_id'] = self.task_id + + # 添加任务类型名称 + if include_type_name and 'task_type' in result: + from config.task_config import get_task_type_name + result['task_type'] = get_task_type_name(result['task_type']) + + return result + + @classmethod + def get_by_name(cls, name): + """ + 根据名称获取任务 + """ + return cls.query.filter(cls.name == name, cls.is_deleted == False).first() + + @classmethod + def get_by_uuid(cls, task_id): + """ + 根据UUID获取任务 + """ + return cls.query.filter(cls.task_id == task_id, cls.is_deleted == False).first() + + @classmethod + def get_templates(cls): + """ + 获取所有任务模板 + """ + return cls.query.filter(cls.is_template == True, cls.is_deleted == False).all() + + @classmethod + def get_scheduled_tasks(cls): + """ + 获取所有定时任务 + """ + return cls.query.filter(cls.is_scheduled == True, cls.is_deleted == False).all() + + @classmethod + def create_task(cls, name, task_type, description=None, is_template=False, template_description=None, + is_scheduled=False, schedule_expression=None, created_by=None, is_enabled=True): + """ + 创建新任务 + + Args: + name (str): 任务名称 + task_type (str or TaskType): 任务类型,可以是字符串或TaskType枚举 + description (str, optional): 任务描述 + is_template (bool, optional): 是否为模板 + template_description (str, optional): 模板描述 + is_scheduled (bool, optional): 是否为定时任务 + schedule_expression (str, optional): 定时表达式(Cron格式) + created_by (str, optional): 创建用户ID + is_enabled (bool, optional): 是否启用 + + Returns: + Task: 创建的任务对象 + """ + from config.database import db_session + + # 处理task_type参数,确保它是字符串类型 + if isinstance(task_type, TaskType): + task_type = task_type.name + + # 生成UUID + task_id = str(uuid.uuid4()) + + # 创建任务对象 + task = cls( + task_id=task_id, + name=name, + task_type=task_type, + description=description, + is_template=is_template, + template_description=template_description, + is_scheduled=is_scheduled, + schedule_expression=schedule_expression, + created_by=created_by, + updated_by=created_by, + is_enabled=is_enabled + ) + + # 如果是定时任务,计算下次执行时间 + if is_scheduled and schedule_expression: + import croniter + import datetime + try: + cron = croniter.croniter(schedule_expression, datetime.datetime.now()) + task.next_run_time = cron.get_next(datetime.datetime) + except Exception as e: + # 如果Cron表达式无效,不设置下次执行时间 + pass + + # 保存到数据库 + db_session.add(task) + db_session.commit() + + # 记录用户操作 + from data.models.user_operation import UserOperation, OperationType, TargetType + if created_by: + UserOperation.log_operation( + user_id=created_by, + user_name=None, # 用户名称需要从外部系统获取 + operation_type=OperationType.CREATE, + target_type=TargetType.TASK, + target_id=task.id, + target_name=task.name, + operation_details={ + 'task_type': task_type, + 'is_template': is_template, + 'is_scheduled': is_scheduled + } + ) + + return task + diff --git a/data/models/task_backup.py b/data/models/task_backup.py new file mode 100644 index 0000000..528c338 --- /dev/null +++ b/data/models/task_backup.py @@ -0,0 +1,148 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务备份模型模块 +包含任务备份相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Text, DateTime, Boolean, Enum, ForeignKey, JSON +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class BackupType(enum.Enum): + """ + 备份类型枚举 + """ + MANUAL = 'manual' # 手动备份 + AUTO = 'auto' # 自动备份 + SYSTEM = 'system' # 系统备份(如发布前自动备份) + +class TaskBackup(BaseModel): + """ + 任务备份模型 + 表示任务配置的备份版本 + """ + __tablename__ = 'task_backups' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + version_id = Column(Integer, ForeignKey('task_versions.id'), nullable=True, comment='任务版本ID') + backup_type = Column(Enum(BackupType), nullable=False, default=BackupType.MANUAL, comment='备份类型') + name = Column(String(100), nullable=True, comment='备份名称') + description = Column(String(500), nullable=True, comment='备份描述') + backup_time = Column(DateTime, nullable=False, comment='备份时间') + created_by = Column(String(100), nullable=True, comment='创建用户ID') + content = Column(JSON, nullable=False, comment='备份内容(JSON格式)') + flow_data = Column(JSON, nullable=True, comment='流程数据(JSON格式)') + is_restorable = Column(Boolean, default=True, comment='是否可恢复') + + def __repr__(self): + return f"" + + @classmethod + def get_by_task(cls, task_id, page=1, per_page=20): + """ + 获取任务的所有备份 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.is_deleted == False + ).order_by(cls.backup_time.desc()).paginate(page=page, per_page=per_page) + + @classmethod + def create_backup(cls, task_id, version_id, content, flow_data=None, backup_type=BackupType.MANUAL, + name=None, description=None, created_by=None): + """ + 创建任务备份 + """ + import datetime + from config.database import db_session + + backup = cls( + task_id=task_id, + version_id=version_id, + backup_type=backup_type, + name=name, + description=description, + backup_time=datetime.datetime.now(), + created_by=created_by, + content=content, + flow_data=flow_data, + is_restorable=True + ) + + db_session.add(backup) + db_session.commit() + + # 记录用户操作 + from data.models.user_operation import UserOperation, OperationType, TargetType + if created_by: + UserOperation.log_operation( + user_id=created_by, + user_name=None, # 用户名称需要从外部系统获取 + operation_type=OperationType.CREATE, + target_type=TargetType.TASK, + target_id=task_id, + target_name=name or f"Backup {backup.id}", + operation_details={ + 'backup_id': backup.id, + 'backup_type': backup_type.value, + 'version_id': version_id + } + ) + + return backup + + @classmethod + def restore_backup(cls, backup_id, restored_by=None): + """ + 恢复任务备份 + """ + from config.database import db_session + + backup = cls.query.get(backup_id) + if not backup or backup.is_deleted or not backup.is_restorable: + return None + + # 获取任务和任务版本 + from data.models.task import Task, TaskVersion + task = Task.query.get(backup.task_id) + if not task or task.is_deleted: + return None + + # 创建新版本 + version = TaskVersion( + task_id=task.id, + version=f"{float(task.current_version.version) + 0.1:.1f}" if task.current_version else "1.0", + content=backup.content, + flow_data=backup.flow_data, + remark=f"Restored from backup {backup.id}" + ) + + db_session.add(version) + db_session.commit() + + # 更新任务的当前版本 + task.current_version_id = version.id + task.updated_by = restored_by + db_session.commit() + + # 记录用户操作 + from data.models.user_operation import UserOperation, OperationType, TargetType + if restored_by: + UserOperation.log_operation( + user_id=restored_by, + user_name=None, # 用户名称需要从外部系统获取 + operation_type=OperationType.UPDATE, + target_type=TargetType.TASK, + target_id=task.id, + target_name=task.name, + operation_details={ + 'backup_id': backup.id, + 'version_id': version.id, + 'action': 'restore' + } + ) + + return version \ No newline at end of file diff --git a/data/models/task_edit_history.py b/data/models/task_edit_history.py new file mode 100644 index 0000000..2ca4180 --- /dev/null +++ b/data/models/task_edit_history.py @@ -0,0 +1,159 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务编辑历史模型模块 +包含任务编辑历史相关的数据模型,用于支持撤销/重做功能 +""" + +import enum +from sqlalchemy import Column, Integer, String, Text, DateTime, Enum, ForeignKey, JSON, Boolean +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class EditActionType(enum.Enum): + """ + 编辑操作类型枚举 + """ + ADD_NODE = 'add_node' # 添加节点 + DELETE_NODE = 'delete_node' # 删除节点 + MOVE_NODE = 'move_node' # 移动节点 + RESIZE_NODE = 'resize_node' # 调整节点大小 + UPDATE_NODE = 'update_node' # 更新节点属性 + ADD_CONNECTION = 'add_connection' # 添加连接 + DELETE_CONNECTION = 'delete_connection' # 删除连接 + UPDATE_CONNECTION = 'update_connection' # 更新连接属性 + ADD_VARIABLE = 'add_variable' # 添加变量 + DELETE_VARIABLE = 'delete_variable' # 删除变量 + UPDATE_VARIABLE = 'update_variable' # 更新变量 + BATCH_OPERATION = 'batch_operation' # 批量操作 + PASTE = 'paste' # 粘贴操作 + OTHER = 'other' # 其他操作 + +class TaskEditHistory(BaseModel): + """ + 任务编辑历史模型 + 记录任务编辑过程中的操作历史,用于支持撤销/重做功能 + """ + __tablename__ = 'task_edit_histories' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + session_id = Column(String(100), nullable=False, comment='编辑会话ID') + action_type = Column(Enum(EditActionType), nullable=False, comment='操作类型') + action_time = Column(DateTime, nullable=False, comment='操作时间') + user_id = Column(String(100), nullable=True, comment='操作用户ID') + sequence = Column(Integer, nullable=False, comment='操作序号(同一会话中的顺序)') + before_state = Column(JSON, nullable=True, comment='操作前状态(JSON格式)') + after_state = Column(JSON, nullable=True, comment='操作后状态(JSON格式)') + affected_ids = Column(JSON, nullable=True, comment='受影响的对象ID列表(JSON数组)') + description = Column(String(500), nullable=True, comment='操作描述') + is_undoable = Column(Boolean, default=True, comment='是否可撤销') + is_redoable = Column(Boolean, default=True, comment='是否可重做') + + def __repr__(self): + return f"" + + @classmethod + def get_by_session(cls, session_id, limit=50): + """ + 获取编辑会话的操作历史 + """ + return cls.query.filter( + cls.session_id == session_id, + cls.is_deleted == False + ).order_by(cls.sequence.desc()).limit(limit).all() + + @classmethod + def get_by_task(cls, task_id, limit=100): + """ + 获取任务的操作历史 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.is_deleted == False + ).order_by(cls.action_time.desc()).limit(limit).all() + + @classmethod + def get_last_action(cls, session_id): + """ + 获取编辑会话的最后一个操作 + """ + return cls.query.filter( + cls.session_id == session_id, + cls.is_deleted == False + ).order_by(cls.sequence.desc()).first() + + @classmethod + def record_action(cls, task_id, session_id, action_type, user_id=None, before_state=None, + after_state=None, affected_ids=None, description=None): + """ + 记录编辑操作 + """ + import datetime + from config.database import db_session + + # 获取当前会话的最大序号 + last_action = cls.get_last_action(session_id) + sequence = (last_action.sequence + 1) if last_action else 1 + + # 创建新的操作记录 + action = cls( + task_id=task_id, + session_id=session_id, + action_type=action_type, + action_time=datetime.datetime.now(), + user_id=user_id, + sequence=sequence, + before_state=before_state, + after_state=after_state, + affected_ids=affected_ids, + description=description, + is_undoable=True, + is_redoable=False # 新操作默认不可重做 + ) + + db_session.add(action) + db_session.commit() + return action + + @classmethod + def mark_as_undone(cls, action_id): + """ + 标记操作为已撤销 + """ + from config.database import db_session + + action = cls.query.get(action_id) + if action: + action.is_undoable = False + action.is_redoable = True + db_session.commit() + return action + + @classmethod + def mark_as_redone(cls, action_id): + """ + 标记操作为已重做 + """ + from config.database import db_session + + action = cls.query.get(action_id) + if action: + action.is_undoable = True + action.is_redoable = False + db_session.commit() + return action + + @classmethod + def clear_session_history(cls, session_id): + """ + 清除编辑会话的操作历史 + """ + from config.database import db_session + + actions = cls.query.filter(cls.session_id == session_id).all() + for action in actions: + action.is_deleted = True + + db_session.commit() + return len(actions) \ No newline at end of file diff --git a/data/models/task_flow.py b/data/models/task_flow.py new file mode 100644 index 0000000..b66d2eb --- /dev/null +++ b/data/models/task_flow.py @@ -0,0 +1,262 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务流程模型模块 +包含任务流程图节点和连接相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Float, Text, Boolean, Enum, ForeignKey, JSON, UniqueConstraint +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class NodeType(enum.Enum): + """ + 节点类型枚举 + """ + COMPONENT = 'component' # 组件节点 + START = 'start' # 开始节点 + END = 'end' # 结束节点 + CONDITION = 'condition' # 条件节点 + LOOP = 'loop' # 循环节点 + PARALLEL = 'parallel' # 并行节点 + SUBPROCESS = 'subprocess' # 子流程节点 + CUSTOM = 'custom' # 自定义节点 + +class TaskFlowNode(BaseModel): + """ + 任务流程节点模型 + 表示任务流程图中的一个节点 + """ + __tablename__ = 'task_flow_nodes' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + version_id = Column(Integer, ForeignKey('task_versions.id'), nullable=False, comment='任务版本ID') + node_type = Column(Enum(NodeType), nullable=False, comment='节点类型') + component_type_id = Column(Integer, ForeignKey('component_types.id'), nullable=True, comment='组件类型ID') + name = Column(String(100), nullable=False, comment='节点名称') + code = Column(String(100), nullable=True, comment='节点代码') + description = Column(String(500), nullable=True, comment='节点描述') + position_x = Column(Float, nullable=False, default=0, comment='节点X坐标') + position_y = Column(Float, nullable=False, default=0, comment='节点Y坐标') + width = Column(Float, nullable=False, default=200, comment='节点宽度') + height = Column(Float, nullable=False, default=100, comment='节点高度') + config = Column(JSON, nullable=True, comment='节点配置') + is_disabled = Column(Boolean, default=False, comment='是否禁用') + + # 关联关系 + task = relationship('Task', back_populates='flow_nodes') + version = relationship('TaskVersion', back_populates='flow_nodes') + component_type = relationship('ComponentType') + outgoing_connections = relationship('TaskFlowConnection', foreign_keys='TaskFlowConnection.source_node_id', back_populates='source_node', cascade='all, delete-orphan') + incoming_connections = relationship('TaskFlowConnection', foreign_keys='TaskFlowConnection.target_node_id', back_populates='target_node', cascade='all, delete-orphan') + parameter_values = relationship('ComponentParameterValue', back_populates='component_instance', cascade='all, delete-orphan') + + def __repr__(self): + return f"" + + @classmethod + def get_by_task_version(cls, task_id, version_id): + """ + 获取任务版本的所有节点 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.version_id == version_id, + cls.is_deleted == False + ).all() + + @classmethod + def create_node(cls, task_id, version_id, node_type, name, component_type_id=None, + code=None, description=None, position_x=0, position_y=0, + width=200, height=100, config=None, is_disabled=False): + """ + 创建节点 + """ + from config.database import db_session + + node = cls( + task_id=task_id, + version_id=version_id, + node_type=node_type, + component_type_id=component_type_id, + name=name, + code=code, + description=description, + position_x=position_x, + position_y=position_y, + width=width, + height=height, + config=config, + is_disabled=is_disabled + ) + + db_session.add(node) + db_session.commit() + return node + + def update_position(self, position_x, position_y, width=None, height=None): + """ + 更新节点位置和大小 + """ + from config.database import db_session + + self.position_x = position_x + self.position_y = position_y + + if width is not None: + self.width = width + + if height is not None: + self.height = height + + db_session.commit() + return self + + def update_config(self, config): + """ + 更新节点配置 + """ + from config.database import db_session + + self.config = config + db_session.commit() + return self + + def get_parameters(self): + """ + 获取节点的所有参数值 + + Returns: + dict: 参数值字典,键为参数代码,值为参数值 + """ + from data.models.component_parameter import ComponentParameterValue + return ComponentParameterValue.get_by_component_instance(self.id) + + def set_parameter(self, parameter_code, value, value_format='simple', is_expression=False, expression=None): + """ + 设置节点参数值 + + Args: + parameter_code (str): 参数代码 + value (any): 参数值 + value_format (str, optional): 值格式,可选值:simple, json, expression + is_expression (bool, optional): 是否为表达式 + expression (str, optional): 表达式内容 + + Returns: + ComponentParameterValue: 参数值对象 + """ + from data.models.component_parameter import ComponentParameterValue, ParameterValueFormat + + # 转换值格式 + if value_format == 'simple': + format_enum = ParameterValueFormat.SIMPLE + elif value_format == 'json': + format_enum = ParameterValueFormat.JSON + elif value_format == 'expression': + format_enum = ParameterValueFormat.EXPRESSION + else: + format_enum = ParameterValueFormat.SIMPLE + + return ComponentParameterValue.set_parameter_value( + self.id, parameter_code, value, format_enum, is_expression, expression + ) + + def delete_parameter(self, parameter_code): + """ + 删除节点参数值 + + Args: + parameter_code (str): 参数代码 + + Returns: + bool: 是否删除成功 + """ + from data.models.component_parameter import ComponentParameterValue + return ComponentParameterValue.delete_parameter_value(self.id, parameter_code) + +class ConnectionType(enum.Enum): + """ + 连接类型枚举 + """ + NORMAL = 'normal' # 普通连接 + SUCCESS = 'success' # 成功路径 + FAILURE = 'failure' # 失败路径 + TRUE = 'true' # 条件为真 + FALSE = 'false' # 条件为假 + CUSTOM = 'custom' # 自定义路径 + +class TaskFlowConnection(BaseModel): + """ + 任务流程连接模型 + 表示任务流程图中节点之间的连接 + """ + __tablename__ = 'task_flow_connections' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + version_id = Column(Integer, ForeignKey('task_versions.id'), nullable=False, comment='任务版本ID') + source_node_id = Column(Integer, ForeignKey('task_flow_nodes.id'), nullable=False, comment='源节点ID') + target_node_id = Column(Integer, ForeignKey('task_flow_nodes.id'), nullable=False, comment='目标节点ID') + label = Column(String(100), nullable=True, comment='连接标签') + condition = Column(String(500), nullable=True, comment='连接条件') + config = Column(JSON, nullable=True, comment='连接配置') + is_default = Column(Boolean, default=False, comment='是否为默认连接') + + # 关联关系 + task = relationship('Task') + version = relationship('TaskVersion') + source_node = relationship('TaskFlowNode', foreign_keys=[source_node_id], back_populates='outgoing_connections') + target_node = relationship('TaskFlowNode', foreign_keys=[target_node_id], back_populates='incoming_connections') + + def __repr__(self): + return f"" + + @classmethod + def get_by_task_version(cls, task_id, version_id): + """ + 获取任务版本的所有连接 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.version_id == version_id, + cls.is_deleted == False + ).all() + + @classmethod + def create_connection(cls, task_id, version_id, source_node_id, target_node_id, + label=None, condition=None, config=None, is_default=False): + """ + 创建连接 + """ + from config.database import db_session + + connection = cls( + task_id=task_id, + version_id=version_id, + source_node_id=source_node_id, + target_node_id=target_node_id, + label=label, + condition=condition, + config=config, + is_default=is_default + ) + + db_session.add(connection) + db_session.commit() + return connection + + def update_condition(self, condition, is_default=None): + """ + 更新连接条件 + """ + from config.database import db_session + + self.condition = condition + + if is_default is not None: + self.is_default = is_default + + db_session.commit() + return self \ No newline at end of file diff --git a/data/models/task_flow_block.py b/data/models/task_flow_block.py new file mode 100644 index 0000000..275dca1 --- /dev/null +++ b/data/models/task_flow_block.py @@ -0,0 +1,191 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务流程块模型模块 +包含任务流程块相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Float, Text, Boolean, Enum, ForeignKey, JSON, UniqueConstraint +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class BlockType(enum.Enum): + """ + 块类型枚举 + """ + COMPONENT = 'component' # 组件块 + START = 'start' # 开始块 + END = 'end' # 结束块 + CONDITION = 'condition' # 条件块 + LOOP = 'loop' # 循环块 + PARALLEL = 'parallel' # 并行块 + SUBPROCESS = 'subprocess' # 子流程块 + CUSTOM = 'custom' # 自定义块 + +class TaskFlowBlock(BaseModel): + """ + 任务流程块模型 + 表示任务流程中的一个组件块 + """ + __tablename__ = 'task_flow_blocks' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + version_id = Column(Integer, ForeignKey('task_versions.id'), nullable=False, comment='任务版本ID') + block_type = Column(Enum(BlockType), nullable=False, comment='块类型') + component_type_id = Column(Integer, ForeignKey('component_types.id'), nullable=True, comment='组件类型ID') + name = Column(String(100), nullable=False, comment='块名称') + code = Column(String(100), nullable=True, comment='块代码') + description = Column(String(500), nullable=True, comment='块描述') + order = Column(Integer, nullable=False, default=0, comment='执行顺序') + config = Column(JSON, nullable=True, comment='块配置') + condition = Column(String(500), nullable=True, comment='条件表达式') + next_block_code = Column(String(100), nullable=True, comment='下一个块代码(用于跳转)') + is_disabled = Column(Boolean, default=False, comment='是否禁用') + + # 关联关系 + task = relationship('Task', back_populates='flow_blocks') + version = relationship('TaskVersion', back_populates='flow_blocks') + component_type = relationship('ComponentType') + parameter_values = relationship('ComponentParameterValue', back_populates='component_instance', cascade='all, delete-orphan') + + def __repr__(self): + return f"" + + @classmethod + def get_by_task_version(cls, task_id, version_id): + """ + 获取任务版本的所有块 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.version_id == version_id, + cls.is_deleted == False + ).order_by(cls.order).all() + + @classmethod + def get_by_code(cls, task_id, version_id, code): + """ + 根据代码获取块 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.version_id == version_id, + cls.code == code, + cls.is_deleted == False + ).first() + + @classmethod + def create_block(cls, task_id, version_id, block_type, name, component_type_id=None, + code=None, description=None, order=0, config=None, + condition=None, next_block_code=None, is_disabled=False): + """ + 创建块 + """ + from config.database import db_session + + block = cls( + task_id=task_id, + version_id=version_id, + block_type=block_type, + component_type_id=component_type_id, + name=name, + code=code, + description=description, + order=order, + config=config, + condition=condition, + next_block_code=next_block_code, + is_disabled=is_disabled + ) + + db_session.add(block) + db_session.commit() + return block + + def update_order(self, order): + """ + 更新块顺序 + """ + from config.database import db_session + + self.order = order + db_session.commit() + return self + + def update_config(self, config): + """ + 更新块配置 + """ + from config.database import db_session + + self.config = config + db_session.commit() + return self + + def update_condition(self, condition, next_block_code=None): + """ + 更新条件表达式和下一个块代码 + """ + from config.database import db_session + + self.condition = condition + if next_block_code is not None: + self.next_block_code = next_block_code + + db_session.commit() + return self + + def get_parameters(self): + """ + 获取块的所有参数值 + + Returns: + dict: 参数值字典,键为参数代码,值为参数值 + """ + from data.models.component_parameter import ComponentParameterValue + return ComponentParameterValue.get_by_component_instance(self.id) + + def set_parameter(self, parameter_code, value, value_format='simple', is_expression=False, expression=None): + """ + 设置块参数值 + + Args: + parameter_code (str): 参数代码 + value (any): 参数值 + value_format (str, optional): 值格式,可选值:simple, json, expression + is_expression (bool, optional): 是否为表达式 + expression (str, optional): 表达式内容 + + Returns: + ComponentParameterValue: 参数值对象 + """ + from data.models.component_parameter import ComponentParameterValue, ParameterValueFormat + + # 转换值格式 + if value_format == 'simple': + format_enum = ParameterValueFormat.SIMPLE + elif value_format == 'json': + format_enum = ParameterValueFormat.JSON + elif value_format == 'expression': + format_enum = ParameterValueFormat.EXPRESSION + else: + format_enum = ParameterValueFormat.SIMPLE + + return ComponentParameterValue.set_parameter_value( + self.id, parameter_code, value, format_enum, is_expression, expression + ) + + def delete_parameter(self, parameter_code): + """ + 删除块参数值 + + Args: + parameter_code (str): 参数代码 + + Returns: + bool: 是否删除成功 + """ + from data.models.component_parameter import ComponentParameterValue + return ComponentParameterValue.delete_parameter_value(self.id, parameter_code) \ No newline at end of file diff --git a/data/models/task_import_export.py b/data/models/task_import_export.py new file mode 100644 index 0000000..14ac31b --- /dev/null +++ b/data/models/task_import_export.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务导入导出模型模块 +包含任务导入导出记录相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Text, DateTime, Boolean, Enum, ForeignKey, JSON +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class ImportExportType(enum.Enum): + """ + 导入导出类型枚举 + """ + IMPORT = 'import' # 导入 + EXPORT = 'export' # 导出 + +class TaskImportExport(BaseModel): + """ + 任务导入导出模型 + 记录任务的导入导出历史 + """ + __tablename__ = 'task_import_exports' + + operation_type = Column(Enum(ImportExportType), nullable=False, comment='操作类型') + file_name = Column(String(255), nullable=False, comment='文件名称') + file_size = Column(Integer, nullable=True, comment='文件大小(字节)') + file_md5 = Column(String(32), nullable=True, comment='文件MD5校验值') + task_ids = Column(JSON, nullable=True, comment='相关任务ID列表(JSON数组)') + task_count = Column(Integer, nullable=True, comment='任务数量') + user_id = Column(String(100), nullable=False, comment='操作用户ID') + user_name = Column(String(100), nullable=True, comment='操作用户名称') + operation_time = Column(DateTime, nullable=False, comment='操作时间') + operation_ip = Column(String(50), nullable=True, comment='操作IP') + is_success = Column(Boolean, default=True, comment='操作是否成功') + error_message = Column(Text, nullable=True, comment='错误信息') + file_content_preview = Column(Text, nullable=True, comment='文件内容预览') + + def __repr__(self): + return f"" + + @classmethod + def get_by_user(cls, user_id, page=1, per_page=20): + """ + 获取用户的导入导出记录 + """ + return cls.query.filter( + cls.user_id == user_id, + cls.is_deleted == False + ).order_by(cls.operation_time.desc()).paginate(page=page, per_page=per_page) + + @classmethod + def get_by_task(cls, task_id, page=1, per_page=20): + """ + 获取任务的导入导出记录 + """ + from sqlalchemy import func + return cls.query.filter( + func.json_contains(cls.task_ids, str(task_id)), + cls.is_deleted == False + ).order_by(cls.operation_time.desc()).paginate(page=page, per_page=per_page) + + @classmethod + def log_import(cls, file_name, file_size, file_md5, task_ids, task_count, user_id, user_name, + operation_ip=None, is_success=True, error_message=None, file_content_preview=None): + """ + 记录任务导入操作 + """ + import datetime + from config.database import db_session + + record = cls( + operation_type=ImportExportType.IMPORT, + file_name=file_name, + file_size=file_size, + file_md5=file_md5, + task_ids=task_ids, + task_count=task_count, + user_id=user_id, + user_name=user_name, + operation_time=datetime.datetime.now(), + operation_ip=operation_ip, + is_success=is_success, + error_message=error_message, + file_content_preview=file_content_preview + ) + + db_session.add(record) + db_session.commit() + return record + + @classmethod + def log_export(cls, file_name, file_size, file_md5, task_ids, task_count, user_id, user_name, + operation_ip=None, is_success=True, error_message=None, file_content_preview=None): + """ + 记录任务导出操作 + """ + import datetime + from config.database import db_session + + record = cls( + operation_type=ImportExportType.EXPORT, + file_name=file_name, + file_size=file_size, + file_md5=file_md5, + task_ids=task_ids, + task_count=task_count, + user_id=user_id, + user_name=user_name, + operation_time=datetime.datetime.now(), + operation_ip=operation_ip, + is_success=is_success, + error_message=error_message, + file_content_preview=file_content_preview + ) + + db_session.add(record) + db_session.commit() + return record \ No newline at end of file diff --git a/data/models/task_input.py b/data/models/task_input.py new file mode 100644 index 0000000..015f4ce --- /dev/null +++ b/data/models/task_input.py @@ -0,0 +1,84 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务输入参数模型模块 +包含任务输入参数相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Text, Boolean, Enum, ForeignKey, JSON +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class InputParamType(enum.Enum): + """ + 输入参数类型枚举 + """ + STRING = 'string' # 字符串 + NUMBER = 'number' # 数字 + BOOLEAN = 'boolean' # 布尔值 + OBJECT = 'object' # 对象 + ARRAY = 'array' # 数组 + NULL = 'null' # 空值 + +class TaskInput(BaseModel): + """ + 任务输入参数模型 + 表示任务执行所需的输入参数 + """ + __tablename__ = 'task_inputs' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + name = Column(String(100), nullable=False, comment='参数名称') + param_type = Column(Enum(InputParamType), nullable=False, default=InputParamType.STRING, comment='参数类型') + description = Column(String(500), nullable=True, comment='参数描述') + is_required = Column(Boolean, default=False, comment='是否必填') + default_value = Column(Text, nullable=True, comment='默认值') + validation_rules = Column(JSON, nullable=True, comment='验证规则(JSON格式)') + order = Column(Integer, default=0, comment='排序顺序') + + def __repr__(self): + return f"" + + @classmethod + def get_by_task(cls, task_id): + """ + 获取任务的所有输入参数 + """ + return cls.query.filter(cls.task_id == task_id, cls.is_deleted == False).order_by(cls.order).all() + + @classmethod + def get_by_task_and_name(cls, task_id, name): + """ + 根据任务ID和参数名称获取输入参数 + """ + return cls.query.filter(cls.task_id == task_id, cls.name == name, cls.is_deleted == False).first() + +class TaskInputValue(BaseModel): + """ + 任务输入参数值模型 + 表示任务执行时的实际输入参数值 + """ + __tablename__ = 'task_input_values' + + task_record_id = Column(Integer, ForeignKey('task_records.id'), nullable=False, comment='任务记录ID') + input_id = Column(Integer, ForeignKey('task_inputs.id'), nullable=False, comment='输入参数ID') + value = Column(Text, nullable=True, comment='参数值') + + def __repr__(self): + return f"" + + @classmethod + def get_by_record(cls, task_record_id): + """ + 获取任务记录的所有输入参数值 + """ + return cls.query.filter(cls.task_record_id == task_record_id, cls.is_deleted == False).all() + + @classmethod + def get_by_record_and_input(cls, task_record_id, input_id): + """ + 根据任务记录ID和输入参数ID获取输入参数值 + """ + return cls.query.filter(cls.task_record_id == task_record_id, cls.input_id == input_id, cls.is_deleted == False).first() \ No newline at end of file diff --git a/data/models/task_record.py b/data/models/task_record.py new file mode 100644 index 0000000..f01ff8e --- /dev/null +++ b/data/models/task_record.py @@ -0,0 +1,124 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务记录模型模块 +包含任务执行记录相关的数据模型 +""" + +import datetime +from sqlalchemy import Column, Integer, String, Text, DateTime, Boolean, Enum, ForeignKey, JSON +from sqlalchemy.orm import relationship +from data.models.base import BaseModel +from data.models.task import TaskStatus + +class TaskRecord(BaseModel): + """ + 任务记录模型 + 表示任务的一次执行记录 + """ + __tablename__ = 'task_records' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + version_id = Column(Integer, ForeignKey('task_versions.id'), nullable=True, comment='任务版本ID') + status = Column(Enum(TaskStatus), nullable=False, default=TaskStatus.PENDING, comment='任务状态') + robot_id = Column(Integer, nullable=True, comment='执行机器人ID(引用外部机器人系统)') + start_time = Column(DateTime, nullable=True, comment='开始时间') + end_time = Column(DateTime, nullable=True, comment='结束时间') + result = Column(JSON, nullable=True, comment='执行结果(JSON格式)') + error_message = Column(Text, nullable=True, comment='错误信息') + execution_log = Column(Text, nullable=True, comment='执行日志') + is_test = Column(Boolean, default=False, comment='是否为测试执行') + test_environment = Column(String(50), nullable=True, comment='测试环境') + execution_details = Column(JSON, nullable=True, comment='执行详情(JSON格式)') + performance_metrics = Column(JSON, nullable=True, comment='性能指标(JSON格式)') + created_by = Column(String(100), nullable=True, comment='创建用户ID') + + # 关联关系 + task = relationship('Task', back_populates='records') + + def __repr__(self): + return f"" + + def update_status(self, status, error_message=None): + """ + 更新任务状态 + """ + self.status = status + if status == TaskStatus.RUNNING and not self.start_time: + self.start_time = datetime.datetime.now() + elif status in [TaskStatus.COMPLETED, TaskStatus.CANCELLED, TaskStatus.FAILED]: + self.end_time = datetime.datetime.now() + if status == TaskStatus.FAILED and error_message: + self.error_message = error_message + self.save() + return self + + @classmethod + def get_running_tasks(cls): + """ + 获取所有正在运行的任务 + """ + return cls.query.filter( + cls.status == TaskStatus.RUNNING, + cls.is_deleted == False + ).all() + + @classmethod + def get_task_history(cls, task_id, page=1, per_page=20): + """ + 获取任务的执行历史记录 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.is_deleted == False + ).order_by(cls.created_at.desc()).paginate(page=page, per_page=per_page) + + @classmethod + def get_test_records(cls, task_id, page=1, per_page=20): + """ + 获取任务的测试记录 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.is_test == True, + cls.is_deleted == False + ).order_by(cls.created_at.desc()).paginate(page=page, per_page=per_page) + + @classmethod + def create_test_record(cls, task_id, version_id, created_by=None, test_environment='test'): + """ + 创建测试记录 + """ + from config.database import db_session + + record = cls( + task_id=task_id, + version_id=version_id, + status=TaskStatus.PENDING, + is_test=True, + test_environment=test_environment, + created_by=created_by + ) + + db_session.add(record) + db_session.commit() + + # 记录用户操作 + from data.models.user_operation import UserOperation, OperationType, TargetType + if created_by: + UserOperation.log_operation( + user_id=created_by, + user_name=None, # 用户名称需要从外部系统获取 + operation_type=OperationType.EXECUTE, + target_type=TargetType.TASK, + target_id=task_id, + target_name=None, # 任务名称需要查询 + operation_details={ + 'record_id': record.id, + 'is_test': True, + 'test_environment': test_environment + } + ) + + return record \ No newline at end of file diff --git a/data/models/task_variable.py b/data/models/task_variable.py new file mode 100644 index 0000000..5d344b0 --- /dev/null +++ b/data/models/task_variable.py @@ -0,0 +1,164 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务变量模型模块 +包含任务变量相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Text, ForeignKey, JSON, Enum, Boolean, UniqueConstraint +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class VariableScope(enum.Enum): + """ + 变量作用域枚举 + """ + GLOBAL = 'global' # 全局变量(整个任务可见) + LOCAL = 'local' # 局部变量(仅在特定节点内可见) + FLOW = 'flow' # 流程变量(在特定流程内可见) + +class VariableType(enum.Enum): + """ + 变量类型枚举 + """ + STRING = 'string' # 字符串 + NUMBER = 'number' # 数字 + BOOLEAN = 'boolean' # 布尔值 + OBJECT = 'object' # 对象 + ARRAY = 'array' # 数组 + NULL = 'null' # 空值 + ANY = 'any' # 任意类型 + +class TaskVariableDefinition(BaseModel): + """ + 任务变量定义模型 + 表示任务中可能使用的变量定义 + """ + __tablename__ = 'task_variable_definitions' + + task_version_id = Column(Integer, ForeignKey('task_versions.id'), nullable=False, comment='任务版本ID') + name = Column(String(100), nullable=False, comment='变量名称') + var_type = Column(Enum(VariableType), nullable=False, default=VariableType.STRING, comment='变量类型') + scope = Column(Enum(VariableScope), nullable=False, default=VariableScope.GLOBAL, comment='变量作用域') + description = Column(String(500), nullable=True, comment='变量描述') + default_value = Column(Text, nullable=True, comment='默认值') + is_required = Column(Boolean, default=False, comment='是否必需') + node_id = Column(String(50), nullable=True, comment='所属节点ID(如果是局部变量)') + validation_rules = Column(JSON, nullable=True, comment='验证规则(JSON格式)') + + # 唯一约束 + __table_args__ = ( + UniqueConstraint('task_version_id', 'name', 'scope', 'node_id', name='uix_task_variable_definition'), + ) + + def __repr__(self): + return f"" + + @classmethod + def get_by_task_version(cls, task_version_id): + """ + 获取任务版本的所有变量定义 + """ + return cls.query.filter( + cls.task_version_id == task_version_id, + cls.is_deleted == False + ).all() + + @classmethod + def get_by_name(cls, task_version_id, name, scope=VariableScope.GLOBAL, node_id=None): + """ + 根据名称获取变量定义 + """ + query = cls.query.filter( + cls.task_version_id == task_version_id, + cls.name == name, + cls.scope == scope, + cls.is_deleted == False + ) + + if scope == VariableScope.LOCAL: + query = query.filter(cls.node_id == node_id) + + return query.first() + + @classmethod + def create_or_update(cls, task_version_id, name, var_type, scope=VariableScope.GLOBAL, description=None, + default_value=None, is_required=False, node_id=None, validation_rules=None): + """ + 创建或更新变量定义 + """ + from config.database import db_session + + variable = cls.get_by_name(task_version_id, name, scope, node_id) + if variable: + # 更新现有变量定义 + variable.var_type = var_type + variable.description = description + variable.default_value = default_value + variable.is_required = is_required + variable.validation_rules = validation_rules + else: + # 创建新变量定义 + variable = cls( + task_version_id=task_version_id, + name=name, + var_type=var_type, + scope=scope, + description=description, + default_value=default_value, + is_required=is_required, + node_id=node_id, + validation_rules=validation_rules + ) + db_session.add(variable) + + db_session.commit() + return variable + +class TaskVariable(BaseModel): + """ + 任务变量模型 + 表示任务执行过程中的变量 + """ + __tablename__ = 'task_variables' + + task_record_id = Column(Integer, ForeignKey('task_records.id'), nullable=False, comment='任务记录ID') + name = Column(String(100), nullable=False, comment='变量名称') + value = Column(Text, nullable=True, comment='变量值') + + def __repr__(self): + return f"" + + @classmethod + def get_by_record(cls, task_record_id): + """ + 获取任务记录的所有变量 + """ + return cls.query.filter(cls.task_record_id == task_record_id, cls.is_deleted == False).all() + + @classmethod + def get_by_record_and_name(cls, task_record_id, name): + """ + 根据任务记录ID和变量名称获取变量 + """ + return cls.query.filter(cls.task_record_id == task_record_id, cls.name == name, cls.is_deleted == False).first() + + @classmethod + def set_variable(cls, task_record_id, name, value): + """ + 设置任务变量 + 如果变量不存在则创建,存在则更新 + """ + from config.database import db_session + + variable = cls.get_by_record_and_name(task_record_id, name) + if variable: + variable.value = value + else: + variable = cls(task_record_id=task_record_id, name=name, value=value) + db_session.add(variable) + + db_session.commit() + return variable \ No newline at end of file diff --git a/data/models/task_version.py b/data/models/task_version.py new file mode 100644 index 0000000..d897dcb --- /dev/null +++ b/data/models/task_version.py @@ -0,0 +1,143 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +任务版本模型模块 +包含任务版本相关的数据模型 +""" + +from sqlalchemy import Column, Integer, String, Text, Boolean, ForeignKey, JSON +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class TaskVersion(BaseModel): + """ + 任务版本模型 + 表示任务的一个版本 + """ + __tablename__ = 'task_versions' + + task_id = Column(Integer, ForeignKey('tasks.id'), nullable=False, comment='任务ID') + version = Column(String(20), nullable=False, comment='版本号') + content = Column(JSON, nullable=True, comment='任务内容(JSON格式)') + flow_data = Column(JSON, nullable=True, comment='流程数据(JSON格式)') + remark = Column(String(500), nullable=True, comment='版本备注') + source_code = Column(Text, nullable=True, comment='生成的源代码') + source_code_type = Column(String(20), default='javascript', comment='源代码类型') + is_compiled = Column(Boolean, default=False, comment='是否已编译') + compiled_code = Column(Text, nullable=True, comment='编译后的代码') + created_by = Column(String(100), nullable=True, comment='创建用户ID') + + # 关联关系 + task = relationship('Task', back_populates='versions') + flow_blocks = relationship('TaskFlowBlock', back_populates='version') + + def __repr__(self): + return f"" + + @classmethod + def get_latest_version(cls, task_id): + """ + 获取任务的最新版本 + """ + return cls.query.filter( + cls.task_id == task_id, + cls.is_deleted == False + ).order_by(cls.created_at.desc()).first() + + @classmethod + def create_version(cls, task_id, content, flow_data=None, remark=None, source_code=None, created_by=None): + """ + 创建新版本 + """ + from config.database import db_session + + # 获取任务 + from data.models.task import Task + task = Task.query.get(task_id) + if not task or task.is_deleted: + return None + + # 获取最新版本号 + latest_version = cls.get_latest_version(task_id) + if latest_version: + # 版本号加0.1 + try: + version_num = float(latest_version.version) + 0.1 + version = f"{version_num:.1f}" + except ValueError: + # 如果版本号不是数字格式,则使用时间戳 + import time + version = str(int(time.time())) + else: + # 第一个版本 + version = "1.0" + + # 创建新版本 + version_obj = cls( + task_id=task_id, + version=version, + content=content, + flow_data=flow_data, + remark=remark, + source_code=source_code, + created_by=created_by + ) + + db_session.add(version_obj) + db_session.commit() + + # 更新任务的当前版本 + task.current_version_id = version_obj.id + task.updated_by = created_by + db_session.commit() + + # 记录用户操作 + from data.models.user_operation import UserOperation, OperationType, TargetType + if created_by: + UserOperation.log_operation( + user_id=created_by, + user_name=None, # 用户名称需要从外部系统获取 + operation_type=OperationType.CREATE, + target_type=TargetType.TASK_VERSION, + target_id=version_obj.id, + target_name=f"{task.name} v{version}", + operation_details={ + 'task_id': task_id, + 'version': version, + 'remark': remark + } + ) + + return version_obj + + def update_source_code(self, source_code, source_code_type='javascript', updated_by=None): + """ + 更新源代码 + """ + from config.database import db_session + + self.source_code = source_code + self.source_code_type = source_code_type + self.is_compiled = False # 重置编译状态 + self.compiled_code = None + + db_session.commit() + + # 记录用户操作 + from data.models.user_operation import UserOperation, OperationType, TargetType + if updated_by: + UserOperation.log_operation( + user_id=updated_by, + user_name=None, # 用户名称需要从外部系统获取 + operation_type=OperationType.UPDATE, + target_type=TargetType.TASK_VERSION, + target_id=self.id, + target_name=f"{self.task.name} v{self.version}", + operation_details={ + 'action': 'update_source_code', + 'source_code_type': source_code_type + } + ) + + return self \ No newline at end of file diff --git a/data/models/user_operation.py b/data/models/user_operation.py new file mode 100644 index 0000000..c326459 --- /dev/null +++ b/data/models/user_operation.py @@ -0,0 +1,107 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +用户操作模型模块 +包含用户操作记录相关的数据模型 +""" + +import enum +from sqlalchemy import Column, Integer, String, Text, DateTime, Enum, ForeignKey, JSON, Boolean +from sqlalchemy.orm import relationship +from data.models.base import BaseModel + +class OperationType(enum.Enum): + """ + 操作类型枚举 + """ + CREATE = 'create' # 创建 + UPDATE = 'update' # 更新 + DELETE = 'delete' # 删除 + ENABLE = 'enable' # 启用 + DISABLE = 'disable' # 禁用 + IMPORT = 'import' # 导入 + EXPORT = 'export' # 导出 + EXECUTE = 'execute' # 执行 + CANCEL = 'cancel' # 取消 + PAUSE = 'pause' # 暂停 + RESUME = 'resume' # 恢复 + +class TargetType(enum.Enum): + """ + 操作目标类型枚举 + """ + TASK = 'task' # 任务 + TASK_VERSION = 'task_version' # 任务版本 + SUBTASK = 'subtask' # 子任务 + COMPONENT = 'component' # 组件 + +class UserOperation(BaseModel): + """ + 用户操作模型 + 记录用户对系统的操作 + """ + __tablename__ = 'user_operations' + + user_id = Column(String(100), nullable=False, comment='用户ID') + user_name = Column(String(100), nullable=True, comment='用户名称') + operation_type = Column(Enum(OperationType), nullable=False, comment='操作类型') + target_type = Column(Enum(TargetType), nullable=False, comment='目标类型') + target_id = Column(Integer, nullable=False, comment='目标ID') + target_name = Column(String(100), nullable=True, comment='目标名称') + operation_time = Column(DateTime, nullable=False, comment='操作时间') + operation_ip = Column(String(50), nullable=True, comment='操作IP') + operation_details = Column(JSON, nullable=True, comment='操作详情(JSON格式)') + operation_result = Column(Boolean, nullable=False, default=True, comment='操作结果(成功/失败)') + error_message = Column(Text, nullable=True, comment='错误信息') + + def __repr__(self): + return f"" + + @classmethod + def get_by_user(cls, user_id, page=1, per_page=20): + """ + 获取用户的操作记录 + """ + return cls.query.filter( + cls.user_id == user_id, + cls.is_deleted == False + ).order_by(cls.operation_time.desc()).paginate(page=page, per_page=per_page) + + @classmethod + def get_by_target(cls, target_type, target_id, page=1, per_page=20): + """ + 获取目标对象的操作记录 + """ + return cls.query.filter( + cls.target_type == target_type, + cls.target_id == target_id, + cls.is_deleted == False + ).order_by(cls.operation_time.desc()).paginate(page=page, per_page=per_page) + + @classmethod + def log_operation(cls, user_id, user_name, operation_type, target_type, target_id, target_name=None, + operation_details=None, operation_ip=None, operation_result=True, error_message=None): + """ + 记录用户操作 + """ + import datetime + from config.database import db_session + + operation = cls( + user_id=user_id, + user_name=user_name, + operation_type=operation_type, + target_type=target_type, + target_id=target_id, + target_name=target_name, + operation_time=datetime.datetime.now(), + operation_ip=operation_ip, + operation_details=operation_details, + operation_result=operation_result, + error_message=error_message + ) + + db_session.add(operation) + db_session.commit() + return operation \ No newline at end of file diff --git a/data/session.py b/data/session.py new file mode 100644 index 0000000..416c80d --- /dev/null +++ b/data/session.py @@ -0,0 +1,274 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +数据库会话管理模块 +提供数据库会话获取和管理功能 +""" + +from contextlib import contextmanager +from config.database import DBConfig, CacheConfig + +def get_session(): + """ + 获取数据库会话 + + Returns: + Session: 数据库会话对象 + """ + return DBConfig.get_session() + +@contextmanager +def session_scope(): + """ + 会话上下文管理器 + 提供自动提交和异常回滚功能 + + Yields: + Session: 数据库会话对象 + """ + session = get_session() + try: + yield session + session.commit() + except Exception as e: + session.rollback() + raise e + finally: + session.close() + +def initialize_database(): + """ + 初始化数据库 + 创建所有表并初始化基础数据 + """ + # 创建所有表 + DBConfig.init_db() + + # 初始化基础数据 + _initialize_component_categories() + _initialize_component_types() + _initialize_system_components() + + print("数据库初始化完成") + +def _initialize_component_categories(): + """初始化组件类别""" + from data.models.component import ComponentCategory + + # 检查是否已存在数据 + if ComponentCategory.query.count() > 0: + return + + # 定义基础组件类别 + categories = [ + {"name": "基础组件", "code": "basic", "description": "基础功能组件", "sort_order": 1}, + {"name": "流程组件", "code": "flow", "description": "流程控制组件", "sort_order": 2}, + {"name": "机器人组件", "code": "robot", "description": "机器人控制组件", "sort_order": 3}, + {"name": "库位组件", "code": "storage", "description": "库位管理组件", "sort_order": 4}, + {"name": "设备组件", "code": "device", "description": "设备控制组件", "sort_order": 5}, + {"name": "HTTP组件", "code": "http", "description": "HTTP请求组件", "sort_order": 6}, + {"name": "脚本组件", "code": "script", "description": "脚本执行组件", "sort_order": 7}, + {"name": "子任务组件", "code": "subtask", "description": "子任务组件", "sort_order": 8}, + {"name": "任务组件", "code": "task", "description": "任务管理组件", "sort_order": 9} + ] + + # 批量创建 + with session_scope() as session: + for category_data in categories: + category = ComponentCategory(**category_data) + session.add(category) + + # 缓存组件类别 + _cache_component_categories() + +def _initialize_component_types(): + """初始化组件类型""" + from data.models.component import ComponentType, ComponentCategory + + # 检查是否已存在数据 + if ComponentType.query.count() > 0: + return + + # 获取组件类别 + categories = {category.code: category.id for category in ComponentCategory.query.all()} + + # 定义基础组件类型 + types = [ + # 基础组件 + {"name": "变量赋值", "code": "variable_assign", "category_id": categories["basic"], "description": "为变量赋值", "icon": "variable", "sort_order": 1}, + {"name": "条件判断", "code": "condition", "category_id": categories["basic"], "description": "条件判断", "icon": "condition", "sort_order": 2}, + {"name": "延时等待", "code": "delay", "category_id": categories["basic"], "description": "延时等待", "icon": "delay", "sort_order": 3}, + + # 流程组件 + {"name": "If条件", "code": "if", "category_id": categories["flow"], "description": "If条件判断", "icon": "if", "sort_order": 1}, + {"name": "If-Else条件", "code": "if_else", "category_id": categories["flow"], "description": "If-Else条件判断", "icon": "if_else", "sort_order": 2}, + {"name": "循环", "code": "loop", "category_id": categories["flow"], "description": "循环执行", "icon": "loop", "sort_order": 3}, + {"name": "并行执行", "code": "parallel", "category_id": categories["flow"], "description": "并行执行多个分支", "icon": "parallel", "sort_order": 4}, + + # 机器人组件 + {"name": "选择机器人", "code": "select_robot", "category_id": categories["robot"], "description": "选择执行机器人", "icon": "robot", "sort_order": 1}, + {"name": "机器人移动", "code": "robot_move", "category_id": categories["robot"], "description": "控制机器人移动", "icon": "move", "sort_order": 2}, + {"name": "获取机器人状态", "code": "robot_status", "category_id": categories["robot"], "description": "获取机器人状态", "icon": "status", "sort_order": 3}, + + # HTTP组件 + {"name": "HTTP请求", "code": "http_request", "category_id": categories["http"], "description": "发送HTTP请求", "icon": "http", "sort_order": 1}, + {"name": "API调用", "code": "api_call", "category_id": categories["http"], "description": "调用系统API", "icon": "api", "sort_order": 2}, + + # 脚本组件 + {"name": "JavaScript脚本", "code": "javascript", "category_id": categories["script"], "description": "执行JavaScript脚本", "icon": "script", "sort_order": 1}, + + # 子任务组件 + {"name": "执行子任务", "code": "execute_subtask", "category_id": categories["subtask"], "description": "执行子任务", "icon": "subtask", "sort_order": 1} + ] + + # 批量创建 + with session_scope() as session: + for type_data in types: + component_type = ComponentType(**type_data) + session.add(component_type) + + # 缓存组件类型 + _cache_component_types() + +def _initialize_system_components(): + """初始化系统组件""" + from data.models.component import Component, ComponentType + + # 检查是否已存在数据 + if Component.query.count() > 0: + return + + # 获取组件类型 + types = {component_type.code: component_type.id for component_type in ComponentType.query.all()} + + # 定义系统组件 + components = [ + { + "name": "变量赋值", + "code": "variable_assign", + "type_id": types["variable_assign"], + "description": "为变量赋值", + "is_system": True, + "config_schema": { + "type": "object", + "properties": { + "variable_name": {"type": "string", "title": "变量名"}, + "value_type": {"type": "string", "enum": ["string", "number", "boolean", "object"], "title": "值类型"}, + "value": {"type": "string", "title": "值"} + }, + "required": ["variable_name", "value_type", "value"] + }, + "input_schema": {}, + "output_schema": { + "type": "object", + "properties": { + "result": {"type": "boolean", "title": "执行结果"} + } + } + }, + { + "name": "条件判断", + "code": "condition", + "type_id": types["condition"], + "description": "条件判断", + "is_system": True, + "config_schema": { + "type": "object", + "properties": { + "condition": {"type": "string", "title": "条件表达式"} + }, + "required": ["condition"] + }, + "input_schema": {}, + "output_schema": { + "type": "object", + "properties": { + "result": {"type": "boolean", "title": "判断结果"} + } + } + }, + { + "name": "If条件", + "code": "if", + "type_id": types["if"], + "description": "If条件判断", + "is_system": True, + "config_schema": { + "type": "object", + "properties": { + "condition": {"type": "string", "title": "条件表达式"} + }, + "required": ["condition"] + }, + "input_schema": {}, + "output_schema": { + "type": "object", + "properties": { + "result": {"type": "boolean", "title": "判断结果"} + } + } + } + ] + + # 批量创建 + with session_scope() as session: + for component_data in components: + component = Component(**component_data) + session.add(component) + + # 缓存系统组件 + _cache_system_components() + +def _cache_component_categories(): + """缓存组件类别""" + from data.models.component import ComponentCategory + + categories = ComponentCategory.query.all() + categories_dict = {category.id: { + "id": category.id, + "name": category.name, + "code": category.code, + "description": category.description, + "sort_order": category.sort_order + } for category in categories} + + # 使用Redis缓存 + CacheConfig.set("component_categories", categories_dict, expire=86400) # 缓存24小时 + +def _cache_component_types(): + """缓存组件类型""" + from data.models.component import ComponentType + + types = ComponentType.query.all() + types_dict = {type.id: { + "id": type.id, + "name": type.name, + "code": type.code, + "category_id": type.category_id, + "description": type.description, + "icon": type.icon, + "sort_order": type.sort_order + } for type in types} + + # 使用Redis缓存 + CacheConfig.set("component_types", types_dict, expire=86400) # 缓存24小时 + +def _cache_system_components(): + """缓存系统组件""" + from data.models.component import Component + + components = Component.query.filter(Component.is_system == True).all() + components_dict = {component.id: { + "id": component.id, + "name": component.name, + "code": component.code, + "type_id": component.type_id, + "description": component.description, + "config_schema": component.config_schema, + "input_schema": component.input_schema, + "output_schema": component.output_schema + } for component in components} + + # 使用Redis缓存 + CacheConfig.set("system_components", components_dict, expire=86400) # 缓存24小时 diff --git a/logs/tianfeng_task.log b/logs/tianfeng_task.log new file mode 100644 index 0000000..0929bc4 --- /dev/null +++ b/logs/tianfeng_task.log @@ -0,0 +1,12218 @@ +2025-03-14 14:01:46,394 - core.component - INFO - Զ: components +2025-03-14 14:01:46,398 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:01:46,398 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:01:46,398 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:01:46,399 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:01:46,399 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:01:46,399 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:01:46,399 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:01:46,400 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:01:46,400 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:01:46,401 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:01:46,401 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:01:46,401 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:01:46,401 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:01:46,403 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:01:46,404 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:01:46,404 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:01:46,404 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:01:46,404 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:01:46,404 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:01:46,404 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:01:46,405 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:01:46,406 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:01:46,406 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:01:46,406 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:01:46,408 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:01:46,409 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:01:46,409 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:01:46,409 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:01:46,409 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:01:46,409 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:01:46,409 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:01:46,410 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:01:46,410 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:01:46,410 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:01:46,410 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:01:46,410 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:01:46,411 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:01:46,411 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:01:46,411 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:01:46,411 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:01:46,411 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:01:46,411 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:01:46,412 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:01:46,412 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:01:46,412 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:01:46,412 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:01:46,414 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:01:46,416 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:01:46,416 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:01:46,416 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:01:46,416 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:01:46,417 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:01:46,417 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:01:46,417 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:01:46,418 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:01:46,418 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:01:46,418 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:01:46,418 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:01:46,418 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:01:46,420 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:01:46,421 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:01:46,421 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:01:46,421 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:01:46,423 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:01:46,424 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:01:46,424 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:01:46,424 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:01:46,424 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:01:46,424 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:01:46,424 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:01:46,424 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:01:46,424 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:01:46,424 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:01:46,424 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:01:46,425 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:01:46,425 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:01:46,425 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:01:46,426 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:01:46,426 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:01:46,428 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:01:46,428 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:01:46,430 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:01:46,430 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:01:46,430 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:01:46,430 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:01:46,430 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:01:46,431 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:01:46,431 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:01:46,431 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:01:46,431 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:01:46,431 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:01:46,432 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:01:46,432 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:01:46,432 - config.component_registry - INFO - Զע: components +2025-03-14 14:01:46,479 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 14:01:46,803 - core.component - INFO - Զ: components +2025-03-14 14:01:46,806 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:01:46,807 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:01:46,808 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:01:46,808 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:01:46,809 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:01:46,809 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:01:46,809 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:01:46,809 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:01:46,809 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:01:46,810 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:01:46,810 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:01:46,810 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:01:46,811 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:01:46,811 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:01:46,811 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:01:46,811 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:01:46,811 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:01:46,811 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:01:46,812 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:01:46,812 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:01:46,812 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:01:46,812 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:01:46,813 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:01:46,813 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:01:46,813 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:01:46,813 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:01:46,813 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:01:46,814 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:01:46,814 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:01:46,814 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:01:46,814 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:01:46,814 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:01:46,815 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:01:46,815 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:01:46,815 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:01:46,815 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:01:46,815 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:01:46,816 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:01:46,816 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:01:46,816 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:01:46,816 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:01:46,817 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:01:46,817 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:01:46,817 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:01:46,817 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:01:46,817 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:01:46,818 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:01:46,819 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:01:46,819 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:01:46,820 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:01:46,820 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:01:46,820 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:01:46,820 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:01:46,821 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:01:46,821 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:01:46,821 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:01:46,821 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:01:46,822 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:01:46,822 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:01:46,822 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:01:46,822 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:01:46,823 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:01:46,823 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:01:46,823 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:01:46,823 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:01:46,824 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:01:46,824 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:01:46,824 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:01:46,824 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:01:46,824 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:01:46,825 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:01:46,825 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:01:46,825 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:01:46,825 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:01:46,825 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:01:46,825 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:01:46,826 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:01:46,826 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:01:46,826 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:01:46,826 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:01:46,826 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:01:46,826 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:01:46,827 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:01:46,827 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:01:46,827 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:01:46,827 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:01:46,827 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:01:46,828 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:01:46,828 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:01:46,828 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:01:46,829 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:01:46,829 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:01:46,829 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:01:46,829 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:01:46,829 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:01:46,829 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:01:46,830 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:01:46,830 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:01:46,830 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:01:46,830 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:01:46,830 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:01:46,831 - config.component_registry - INFO - Զע: components +2025-03-14 14:01:46,886 - core.component - INFO - Զ: components +2025-03-14 14:01:46,886 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:01:46,886 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:01:46,886 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:01:46,886 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:01:46,888 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:01:46,888 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:01:46,888 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:01:46,890 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:01:46,891 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:01:46,891 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:01:46,892 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:01:46,892 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:01:46,893 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:01:46,894 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:01:46,895 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:01:46,896 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:01:46,896 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:01:46,897 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:01:46,899 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:01:46,901 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:01:46,903 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:01:46,904 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:01:46,904 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:01:46,906 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:01:46,907 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:01:46,907 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:01:46,910 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:01:46,910 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:01:46,911 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:01:46,911 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:01:46,912 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:01:46,912 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:01:46,913 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:01:46,913 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:01:46,914 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:01:46,914 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:01:46,915 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:01:46,915 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:01:46,915 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:01:46,915 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:01:46,915 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:01:46,915 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:01:46,916 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:01:46,916 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:01:46,916 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:01:46,916 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:01:46,917 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:01:46,917 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:01:46,917 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:01:46,917 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:01:46,917 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:01:46,917 - config.component_registry - INFO - Զע: components +2025-03-14 14:02:03,884 - core.component - INFO - Զ: components +2025-03-14 14:02:03,886 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:03,887 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:02:03,888 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:02:03,891 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:02:03,891 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:02:03,894 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:02:03,895 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:03,896 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:02:03,899 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:02:03,900 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:02:03,901 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:03,903 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:02:03,905 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:02:03,907 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:02:03,909 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:02:03,911 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:02:03,912 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:02:03,914 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:03,916 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:02:03,917 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:02:03,920 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:02:03,922 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:02:03,924 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:02:03,926 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:02:03,928 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:02:03,930 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:02:03,932 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:02:03,932 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:02:03,933 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:02:03,933 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:02:03,933 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:02:03,933 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:02:03,934 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:02:03,934 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:02:03,934 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:02:03,934 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:02:03,935 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:02:03,935 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:02:03,935 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:02:03,935 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:02:03,935 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:02:03,935 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:02:03,936 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:02:03,936 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:02:03,936 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:02:03,936 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:02:03,937 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:02:03,937 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:02:03,938 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:02:03,938 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:02:03,938 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:02:03,938 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:02:03,938 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:02:03,938 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:02:03,939 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:02:03,939 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:02:03,939 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:02:03,939 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:02:03,939 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:02:03,940 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:02:03,941 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:02:03,941 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:02:03,943 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:02:03,945 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:02:03,947 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:02:03,948 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:02:03,948 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:02:03,951 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:02:03,953 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:02:03,954 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:03,956 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:03,958 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:02:03,960 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:02:03,964 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:02:03,964 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:02:03,965 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:02:03,965 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:02:03,965 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:02:03,965 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:03,965 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:02:03,965 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:02:03,968 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:02:03,970 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:03,972 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:02:03,974 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:02:03,975 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:02:03,977 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:02:03,979 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:02:03,982 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:02:03,984 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:02:03,986 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:02:03,988 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:02:03,990 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:02:03,992 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:02:03,994 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:02:03,995 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:02:03,995 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:02:03,995 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:02:03,996 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:02:03,996 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:02:03,996 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:02:03,996 - config.component_registry - INFO - Զע: components +2025-03-14 14:02:04,030 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 14:02:04,357 - core.component - INFO - Զ: components +2025-03-14 14:02:04,359 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:04,360 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:02:04,361 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:02:04,361 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:02:04,362 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:02:04,362 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:02:04,362 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:04,362 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:02:04,363 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:02:04,363 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:04,363 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:02:04,365 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:02:04,365 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:02:04,365 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:02:04,367 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:02:04,368 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:02:04,368 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:02:04,368 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:02:04,368 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:02:04,369 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:02:04,369 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:02:04,369 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:02:04,369 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:02:04,369 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:02:04,369 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:02:04,370 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:02:04,370 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:02:04,370 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:02:04,371 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:02:04,372 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:02:04,372 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:02:04,373 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:02:04,373 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:02:04,374 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:02:04,374 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:02:04,374 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:02:04,375 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:02:04,375 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:02:04,375 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:02:04,375 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:02:04,375 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:02:04,375 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:02:04,376 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:02:04,376 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:02:04,376 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:02:04,376 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:02:04,377 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:02:04,377 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:02:04,377 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:02:04,377 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:02:04,378 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:02:04,379 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:02:04,380 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:02:04,380 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:02:04,380 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:02:04,380 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:02:04,381 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:02:04,381 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:02:04,381 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:02:04,381 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:02:04,381 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:02:04,381 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:02:04,381 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:02:04,383 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:02:04,384 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:02:04,384 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:02:04,384 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:02:04,384 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:02:04,384 - config.component_registry - INFO - Զע: components +2025-03-14 14:02:04,441 - core.component - INFO - Զ: components +2025-03-14 14:02:04,441 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:04,442 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:02:04,442 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:02:04,442 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:02:04,442 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:02:04,442 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:02:04,443 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:02:04,443 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:04,443 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:02:04,443 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:02:04,443 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:02:04,443 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:02:04,444 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:02:04,445 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:02:04,445 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:02:04,445 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:02:04,445 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:02:04,445 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:02:04,445 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:02:04,446 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:02:04,447 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:02:04,448 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:02:04,448 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:02:04,448 - config.component_registry - INFO - Զע: components +2025-03-14 14:02:56,366 - core.component - INFO - Զ: components +2025-03-14 14:02:56,368 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:56,368 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:02:56,368 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:02:56,368 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:02:56,369 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:02:56,369 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:02:56,370 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:56,370 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:02:56,370 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:02:56,370 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:02:56,370 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:02:56,371 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:02:56,372 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:02:56,372 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:02:56,372 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:02:56,372 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:02:56,373 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:02:56,374 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:02:56,374 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:02:56,374 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:02:56,374 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:02:56,374 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:02:56,374 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:02:56,374 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:02:56,374 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:02:56,374 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:02:56,374 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:02:56,375 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:02:56,375 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:02:56,375 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:02:56,375 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:02:56,375 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:02:56,376 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:02:56,376 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:02:56,376 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:02:56,376 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:02:56,376 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:02:56,376 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:02:56,376 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:02:56,376 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:02:56,377 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:02:56,377 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:02:56,377 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:02:56,377 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:02:56,377 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:02:56,377 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:02:56,377 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:02:56,377 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:02:56,378 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:02:56,378 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:02:56,378 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:02:56,378 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:02:56,378 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:02:56,378 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:02:56,379 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:56,379 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:56,379 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:02:56,379 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:02:56,379 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:02:56,379 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:02:56,379 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:02:56,379 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:02:56,379 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:02:56,380 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:02:56,381 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:02:56,381 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:02:56,381 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:02:56,381 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:02:56,382 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:02:56,382 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:02:56,382 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:02:56,382 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:02:56,382 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:02:56,382 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:02:56,382 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:02:56,382 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:02:56,382 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:02:56,382 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:02:56,383 - config.component_registry - INFO - Զע: components +2025-03-14 14:02:56,414 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 14:02:56,717 - core.component - INFO - Զ: components +2025-03-14 14:02:56,718 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:56,719 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:02:56,719 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:02:56,719 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:02:56,720 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:02:56,720 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:02:56,720 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:56,720 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:02:56,720 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:02:56,721 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:02:56,721 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:56,721 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:02:56,721 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:02:56,721 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:02:56,723 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:02:56,723 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:02:56,723 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:02:56,723 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:56,723 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:02:56,723 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:02:56,724 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:02:56,724 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:02:56,724 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:02:56,725 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:02:56,725 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:02:56,725 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:02:56,725 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:02:56,725 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:02:56,726 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:02:56,726 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:02:56,726 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:02:56,726 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:02:56,726 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:02:56,726 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:02:56,726 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:02:56,727 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:02:56,727 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:02:56,727 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:02:56,727 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:02:56,727 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:02:56,727 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:02:56,728 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:02:56,728 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:02:56,728 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:02:56,728 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:02:56,728 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:02:56,728 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:02:56,729 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:02:56,729 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:02:56,729 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:02:56,729 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:02:56,729 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:02:56,729 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:02:56,730 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:02:56,730 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:02:56,730 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:02:56,730 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:02:56,730 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:02:56,730 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:02:56,731 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:02:56,731 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:02:56,731 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:02:56,731 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:02:56,731 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:02:56,731 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:02:56,731 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:02:56,731 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:02:56,732 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:02:56,732 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:02:56,732 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:02:56,733 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:02:56,734 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:02:56,734 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:02:56,734 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:02:56,735 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:02:56,735 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:02:56,735 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:02:56,735 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:02:56,735 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:02:56,735 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:02:56,736 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:02:56,736 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:02:56,736 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:02:56,736 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:02:56,736 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:02:56,736 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:02:56,736 - config.component_registry - INFO - Զע: components +2025-03-14 14:02:56,787 - core.component - INFO - Զ: components +2025-03-14 14:02:56,787 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:02:56,788 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:02:56,788 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:02:56,788 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:02:56,788 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:02:56,789 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:02:56,789 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:02:56,789 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:02:56,791 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:02:56,791 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:02:56,791 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:02:56,791 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:02:56,791 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:02:56,792 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:02:56,792 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:02:56,792 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:02:56,792 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:02:56,793 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:02:56,793 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:02:56,793 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:02:56,793 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:02:56,793 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:02:56,794 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:02:56,794 - core.component - ERROR - ģʧ: components.http_components, : No module named 'requests' +2025-03-14 14:02:56,794 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:02:56,794 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:02:56,794 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:02:56,794 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:02:56,795 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:02:56,796 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:02:56,796 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:02:56,796 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:02:56,796 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:02:56,797 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:02:56,797 - config.component_registry - INFO - Զע: components +2025-03-14 14:08:15,728 - core.component - INFO - Զ: components +2025-03-14 14:08:15,729 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:08:15,730 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:08:15,730 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:08:15,730 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:08:15,730 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:08:15,732 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:08:15,732 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:08:15,732 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:08:15,732 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:08:15,733 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:08:15,733 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:08:15,733 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:08:15,733 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:08:15,733 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:08:15,733 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:08:15,736 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:08:15,736 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:08:15,738 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:08:15,739 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:08:15,739 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:08:15,739 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:08:15,742 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:08:15,742 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:08:15,742 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:08:15,743 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:08:15,743 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:08:15,743 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:08:15,744 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:08:15,744 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:08:15,744 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:08:15,744 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:08:15,744 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:08:15,746 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:08:15,746 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:08:15,746 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:08:15,746 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:08:15,747 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:08:15,747 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:08:15,747 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:08:15,747 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:08:15,747 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:08:15,747 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:08:15,748 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:08:15,748 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:08:15,748 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:08:15,748 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:08:15,933 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 14:08:15,934 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 14:08:15,935 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:08:15,935 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:08:15,935 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:08:15,935 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:08:15,936 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:08:15,936 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:08:15,936 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:08:15,937 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:08:15,937 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:08:15,937 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:08:15,937 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:08:15,937 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:08:15,938 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:08:15,938 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:08:15,938 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:08:15,938 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:08:15,938 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:08:15,938 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:08:15,941 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:08:15,941 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:08:15,941 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:08:15,941 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:08:15,942 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:08:15,942 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:08:15,942 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:08:15,943 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:08:15,944 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:08:15,944 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:08:15,944 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:08:15,944 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:08:15,945 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:08:15,945 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:08:15,945 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:08:15,945 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:08:15,945 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:08:15,945 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:08:15,945 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:08:15,945 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:08:15,945 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:08:15,945 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:08:15,946 - config.component_registry - INFO - Զע: components +2025-03-14 14:08:15,983 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 14:08:16,309 - core.component - INFO - Զ: components +2025-03-14 14:08:16,311 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:08:16,312 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:08:16,312 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:08:16,313 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:08:16,313 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:08:16,313 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:08:16,314 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:08:16,314 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:08:16,314 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:08:16,314 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:08:16,315 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:08:16,315 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:08:16,315 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:08:16,315 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:08:16,316 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:08:16,316 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:08:16,316 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:08:16,316 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:08:16,316 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:08:16,316 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:08:16,316 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:08:16,316 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:08:16,316 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:08:16,319 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:08:16,320 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:08:16,320 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:08:16,321 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:08:16,321 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:08:16,321 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:08:16,321 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:08:16,321 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:08:16,321 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:08:16,321 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:08:16,323 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:08:16,323 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:08:16,325 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:08:16,520 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 14:08:16,521 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 14:08:16,521 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:08:16,521 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:08:16,522 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:08:16,522 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:08:16,523 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:08:16,523 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:08:16,523 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:08:16,523 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:08:16,523 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:08:16,523 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:08:16,523 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:08:16,523 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:08:16,523 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:08:16,523 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:08:16,525 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:08:16,525 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:08:16,525 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:08:16,525 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:08:16,525 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:08:16,526 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:08:16,526 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:08:16,526 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:08:16,527 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:08:16,527 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:08:16,527 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:08:16,527 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:08:16,528 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:08:16,528 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:08:16,528 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:08:16,528 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:08:16,528 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:08:16,529 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:08:16,529 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:08:16,530 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:08:16,531 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:08:16,531 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:08:16,531 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:08:16,531 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:08:16,532 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:08:16,532 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:08:16,533 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:08:16,533 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:08:16,533 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:08:16,533 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:08:16,533 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:08:16,534 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:08:16,534 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:08:16,534 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:08:16,534 - config.component_registry - INFO - Զע: components +2025-03-14 14:08:16,588 - core.component - INFO - Զ: components +2025-03-14 14:08:16,588 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:08:16,595 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:08:16,597 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:08:16,597 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:08:16,598 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:08:16,598 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:08:16,599 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:08:16,599 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:08:16,600 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:08:16,601 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:08:16,602 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:08:16,602 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:08:16,602 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:08:16,603 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:08:16,603 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:08:16,603 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:08:16,603 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:08:16,603 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:08:16,604 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:08:16,604 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:08:16,604 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:08:16,604 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:08:16,605 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:08:16,606 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:08:16,606 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:08:16,606 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:08:16,606 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:08:16,607 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:08:16,607 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:08:16,607 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:08:16,607 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:08:16,608 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:08:16,608 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:08:16,609 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:08:16,609 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:08:16,610 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:08:16,610 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:08:16,610 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:08:16,611 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:08:16,611 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:08:16,611 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:08:16,611 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:08:16,612 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:08:16,612 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:08:16,612 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:08:16,612 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:08:16,613 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:08:16,613 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:08:16,613 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:08:16,613 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:08:16,613 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:08:16,614 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:08:16,614 - config.component_registry - INFO - Զע: components +2025-03-14 14:27:22,643 - root - ERROR - ݿʼʧ: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods +2025-03-14 14:29:59,905 - root - ERROR - ݿʼʧ: (pymysql.err.OperationalError) (1045, "Access denied for user 'root'@'localhost' (using password: YES)") +(Background on this error at: https://sqlalche.me/e/20/e3q8) +2025-03-14 14:31:44,801 - root - ERROR - ݿʼʧ: (pymysql.err.OperationalError) (1049, "Unknown database 'tianfeng_task'") +(Background on this error at: https://sqlalche.me/e/20/e3q8) +2025-03-14 14:34:10,000 - root - INFO - ʼʼݿ... +2025-03-14 14:34:10,870 - root - INFO - ݿɹ +2025-03-14 14:34:10,871 - root - INFO - ʼʼ... +2025-03-14 14:34:10,931 - root - INFO - 9 +2025-03-14 14:34:10,935 - root - INFO - ݳʼɹ +2025-03-14 14:34:10,935 - core.component - INFO - Զ: components +2025-03-14 14:34:10,937 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:10,937 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:34:10,937 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:34:10,937 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:34:10,937 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:34:10,938 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:34:10,939 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:10,940 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:34:10,940 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:34:10,940 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:34:10,940 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:10,940 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:34:10,941 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:34:10,941 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:34:10,941 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:34:10,942 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:34:10,942 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:34:10,942 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:10,942 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:34:10,942 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:34:10,943 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:34:10,943 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:34:10,943 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:34:10,943 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:34:10,944 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:34:10,944 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:34:10,944 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:34:10,944 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:34:10,944 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:34:10,946 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:34:10,946 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:34:10,946 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:34:10,946 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:34:10,947 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:34:10,947 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:34:10,947 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:34:10,947 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:34:10,947 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:34:10,947 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:34:10,949 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:34:10,950 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:34:10,951 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:34:10,951 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:34:10,952 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:34:10,952 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:34:10,953 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:34:11,147 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 14:34:11,148 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 14:34:11,148 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:34:11,148 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:34:11,149 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:34:11,149 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:34:11,149 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:34:11,150 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:34:11,151 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:34:11,151 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:34:11,151 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:34:11,151 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:34:11,151 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:34:11,152 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:34:11,152 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:34:11,152 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:34:11,153 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:34:11,153 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:34:11,153 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:34:11,153 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:34:11,153 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:11,154 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:34:11,155 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:34:11,155 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:34:11,155 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:34:11,155 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:34:11,155 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:34:11,155 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:34:11,155 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:11,155 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:34:11,156 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:34:11,156 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:34:11,156 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:11,156 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:34:11,156 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:34:11,156 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:34:11,159 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:34:11,162 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:34:11,162 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:34:11,163 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:34:11,163 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:34:11,163 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:34:11,163 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:34:11,166 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:34:11,167 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:34:11,167 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:34:11,167 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:34:11,167 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:34:11,167 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:34:11,167 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:34:11,167 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:34:11,167 - config.component_registry - INFO - Զע: components +2025-03-14 14:34:11,199 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 14:34:11,787 - root - INFO - ʼʼݿ... +2025-03-14 14:34:11,846 - root - INFO - ݿɹ +2025-03-14 14:34:11,846 - root - INFO - ʼʼ... +2025-03-14 14:34:11,863 - root - INFO - Ѵڣʼ +2025-03-14 14:34:11,864 - root - INFO - ݳʼɹ +2025-03-14 14:34:11,865 - core.component - INFO - Զ: components +2025-03-14 14:34:11,868 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:11,869 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:34:11,871 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:34:11,872 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:34:11,872 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:34:11,872 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:34:11,872 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:11,873 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:34:11,873 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:34:11,873 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:34:11,873 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:11,873 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:34:11,873 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:34:11,873 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:34:11,873 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:34:11,874 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:34:11,874 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:34:11,874 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:11,874 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:34:11,874 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:34:11,874 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:34:11,874 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:34:11,874 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:34:11,874 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:34:11,874 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:34:11,875 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:34:11,875 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:34:11,875 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:34:11,875 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:34:11,876 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:34:12,061 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 14:34:12,061 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 14:34:12,061 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:34:12,062 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:34:12,062 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:34:12,063 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:34:12,064 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:34:12,065 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:34:12,065 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:34:12,065 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:34:12,065 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:34:12,066 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:34:12,066 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:34:12,066 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:34:12,066 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:34:12,067 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:34:12,067 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:34:12,067 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:34:12,068 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:34:12,068 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:34:12,068 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:34:12,069 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:34:12,069 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:34:12,069 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:34:12,069 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:34:12,069 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:34:12,069 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:12,070 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:12,070 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:34:12,070 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:34:12,070 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:34:12,070 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:34:12,070 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:34:12,070 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:34:12,070 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:34:12,070 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:12,070 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:34:12,071 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:34:12,071 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:34:12,071 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:12,071 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:34:12,071 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:34:12,071 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:34:12,071 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:34:12,071 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:34:12,072 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:34:12,072 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:34:12,072 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:34:12,072 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:34:12,072 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:34:12,074 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:34:12,074 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:34:12,074 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:34:12,074 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:34:12,074 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:34:12,074 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:34:12,075 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:34:12,075 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:34:12,075 - config.component_registry - INFO - Զע: components +2025-03-14 14:34:12,132 - root - INFO - ʼʼݿ... +2025-03-14 14:34:12,175 - root - INFO - ݿɹ +2025-03-14 14:34:12,175 - root - INFO - ʼʼ... +2025-03-14 14:34:12,176 - root - INFO - Ѵڣʼ +2025-03-14 14:34:12,176 - root - INFO - ݳʼɹ +2025-03-14 14:34:12,177 - core.component - INFO - Զ: components +2025-03-14 14:34:12,177 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:12,177 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:34:12,178 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:34:12,178 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:34:12,178 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:34:12,179 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:34:12,179 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:34:12,180 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:12,181 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:34:12,181 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:34:12,181 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:34:12,181 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:34:12,181 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:34:12,182 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:34:12,182 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:34:12,182 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:34:12,183 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:34:12,183 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:34:12,183 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:34:12,184 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:34:12,185 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:34:12,186 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:34:12,187 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:34:12,187 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:34:12,187 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:34:12,187 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:34:12,187 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:34:12,187 - config.component_registry - INFO - Զע: components +2025-03-14 14:34:12,198 - root - INFO - Ӧ +2025-03-14 14:34:33,925 - root - INFO - Ӧùر +2025-03-14 14:34:34,685 - root - INFO - ʼʼݿ... +2025-03-14 14:34:34,691 - root - ERROR - ݿʼʧ: (pymysql.err.OperationalError) (1045, "Access denied for user 'root'@'localhost' (using password: NO)") +(Background on this error at: https://sqlalche.me/e/20/e3q8) +2025-03-14 14:34:45,701 - root - INFO - ʼʼݿ... +2025-03-14 14:34:45,737 - root - INFO - ݿɹ +2025-03-14 14:34:45,737 - root - INFO - ʼʼ... +2025-03-14 14:34:45,755 - root - INFO - Ѵڣʼ +2025-03-14 14:34:45,755 - root - INFO - ݳʼɹ +2025-03-14 14:34:45,756 - core.component - INFO - Զ: components +2025-03-14 14:34:45,757 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:45,758 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:34:45,758 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:34:45,758 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:34:45,758 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:34:45,759 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:34:45,759 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:45,759 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:34:45,759 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:34:45,759 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:34:45,759 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:45,759 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:34:45,759 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:34:45,763 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:34:45,763 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:34:45,763 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:34:45,763 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:34:45,763 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:45,763 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:34:45,764 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:34:45,764 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:34:45,764 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:34:45,764 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:34:45,764 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:34:45,765 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:34:45,765 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:34:45,765 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:34:45,765 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:34:45,765 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:34:45,765 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:34:45,765 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:34:45,767 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:34:45,767 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:34:45,767 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:34:45,767 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:34:45,767 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:34:45,767 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:34:45,767 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:34:45,767 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:34:45,767 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:34:45,767 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:34:45,768 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:34:45,768 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:34:45,768 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:34:45,768 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:34:45,768 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:34:45,961 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 14:34:45,963 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 14:34:45,964 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:34:45,965 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:34:45,965 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:34:45,967 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:34:45,968 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:34:45,970 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:34:45,972 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:34:45,972 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:34:45,973 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:34:45,977 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:34:45,978 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:34:45,981 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:34:45,983 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:34:45,985 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:34:45,986 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:34:45,987 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:34:45,987 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:34:45,988 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:34:45,988 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:34:45,989 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:34:45,989 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:34:45,990 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:34:45,990 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:34:45,991 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:34:45,991 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:45,991 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:45,991 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:34:45,992 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:34:45,992 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:34:45,992 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:34:45,992 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:34:45,993 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:34:45,993 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:34:45,993 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:45,993 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:34:45,993 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:34:45,994 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:34:45,994 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:45,994 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:34:45,994 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:34:45,994 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:34:45,995 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:34:45,995 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:34:45,995 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:34:45,996 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:34:45,996 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:34:45,996 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:34:45,997 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:34:45,998 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:34:45,998 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:34:45,999 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:34:45,999 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:34:45,999 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:34:45,999 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:34:45,999 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:34:45,999 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:34:46,000 - config.component_registry - INFO - Զע: components +2025-03-14 14:34:46,059 - root - INFO - ʼʼݿ... +2025-03-14 14:34:46,108 - root - INFO - ݿɹ +2025-03-14 14:34:46,109 - root - INFO - ʼʼ... +2025-03-14 14:34:46,110 - root - INFO - Ѵڣʼ +2025-03-14 14:34:46,110 - root - INFO - ݳʼɹ +2025-03-14 14:34:46,111 - core.component - INFO - Զ: components +2025-03-14 14:34:46,111 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:34:46,111 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:34:46,112 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:34:46,112 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:34:46,112 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:34:46,112 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:34:46,113 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:34:46,113 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:34:46,113 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:34:46,113 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:34:46,113 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:34:46,113 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:34:46,114 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:34:46,115 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:34:46,116 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:34:46,117 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:34:46,117 - config.component_registry - INFO - Զע: components +2025-03-14 14:34:46,126 - root - INFO - Ӧ +2025-03-14 14:38:48,490 - root - INFO - Ӧùر +2025-03-14 14:38:49,709 - root - INFO - ʼʼݿ... +2025-03-14 14:38:49,761 - root - INFO - ݿɹ +2025-03-14 14:38:49,761 - root - INFO - ʼʼ... +2025-03-14 14:38:49,779 - root - INFO - Ѵڣʼ +2025-03-14 14:38:49,780 - root - INFO - ݳʼɹ +2025-03-14 14:38:49,781 - core.component - INFO - Զ: components +2025-03-14 14:38:49,782 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:38:49,783 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 14:38:49,783 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 14:38:49,786 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 14:38:49,786 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 14:38:49,786 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 14:38:49,786 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 14:38:49,786 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 14:38:49,788 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 14:38:49,788 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 14:38:49,789 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:38:49,789 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:38:49,789 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:38:49,790 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:38:49,790 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:38:49,790 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:38:49,791 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:38:49,791 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:38:49,792 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:38:49,792 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:38:49,793 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 14:38:49,793 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 14:38:49,793 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:38:49,793 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:38:49,794 - core.component - INFO - ע: if -> IfComponent +2025-03-14 14:38:49,794 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 14:38:49,794 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 14:38:49,794 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 14:38:49,794 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 14:38:49,794 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 14:38:49,795 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 14:38:49,795 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 14:38:49,795 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 14:38:49,795 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 14:38:49,795 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 14:38:49,795 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:38:49,795 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:38:49,796 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:38:49,797 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:38:49,981 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 14:38:49,982 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 14:38:49,983 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:38:49,983 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:38:49,984 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 14:38:49,984 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 14:38:49,985 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 14:38:49,985 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 14:38:49,985 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 14:38:49,986 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 14:38:49,986 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:38:49,986 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:38:49,986 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:38:49,987 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:38:49,987 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:38:49,987 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:38:49,987 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 14:38:49,988 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 14:38:49,988 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:38:49,988 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:38:49,989 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 14:38:49,989 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 14:38:49,989 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 14:38:49,989 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 14:38:49,990 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 14:38:49,990 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 14:38:49,990 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 14:38:49,991 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 14:38:49,991 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 14:38:49,991 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 14:38:49,991 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 14:38:49,991 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 14:38:49,991 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:38:49,991 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:38:49,992 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:38:49,992 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:38:49,992 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:38:49,992 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:38:49,992 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:38:49,992 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:38:49,993 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:38:49,993 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:38:49,993 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:38:49,993 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:38:49,993 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 14:38:49,994 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:38:49,994 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 14:38:49,994 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 14:38:49,994 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 14:38:49,994 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 14:38:49,995 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 14:38:49,995 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 14:38:49,995 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:38:49,995 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:38:49,995 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:38:49,995 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:38:49,996 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:38:49,996 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:38:49,996 - config.component_registry - INFO - Զע: components +2025-03-14 14:38:50,060 - root - INFO - ʼʼݿ... +2025-03-14 14:38:50,116 - root - INFO - ݿɹ +2025-03-14 14:38:50,119 - root - INFO - ʼʼ... +2025-03-14 14:38:50,121 - root - INFO - Ѵڣʼ +2025-03-14 14:38:50,121 - root - INFO - ݳʼɹ +2025-03-14 14:38:50,121 - core.component - INFO - Զ: components +2025-03-14 14:38:50,121 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 14:38:50,122 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 14:38:50,122 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 14:38:50,122 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 14:38:50,122 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 14:38:50,123 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 14:38:50,123 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 14:38:50,123 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 14:38:50,123 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 14:38:50,123 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 14:38:50,124 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 14:38:50,125 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 14:38:50,126 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 14:38:50,127 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 14:38:50,128 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 14:38:50,128 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 14:38:50,128 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 14:38:50,128 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 14:38:50,128 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 14:38:50,128 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 14:38:50,128 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 14:38:50,128 - config.component_registry - INFO - Զע: components +2025-03-14 14:38:50,139 - root - INFO - Ӧ +2025-03-14 14:39:10,679 - root - INFO - Ӧùر +2025-03-14 15:07:31,435 - root - INFO - ʼʼݿ... +2025-03-14 15:07:31,531 - root - INFO - ݿɹ +2025-03-14 15:07:31,531 - root - INFO - ʼʼ... +2025-03-14 15:07:31,546 - root - INFO - Ѵڣʼ +2025-03-14 15:07:31,546 - root - INFO - ݳʼɹ +2025-03-14 15:07:31,546 - core.component - INFO - Զ: components +2025-03-14 15:07:31,546 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:07:31,546 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:07:31,546 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:07:31,546 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:07:31,546 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:07:31,562 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:07:31,562 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:07:31,752 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:07:31,752 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:07:31,752 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:07:31,752 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:07:31,752 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:07:31,752 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:07:31,768 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:07:31,768 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:07:31,768 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:07:31,768 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:07:31,768 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:07:31,768 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:07:31,768 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:07:31,768 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:07:31,768 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:07:31,768 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:07:31,778 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:07:31,778 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:07:31,778 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:07:31,784 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:07:31,784 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:07:31,800 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:07:31,800 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:07:31,800 - config.component_registry - INFO - Զע: components +2025-03-14 15:07:31,848 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 15:07:32,426 - root - INFO - ʼʼݿ... +2025-03-14 15:13:15,749 - root - INFO - ʼʼݿ... +2025-03-14 15:13:15,811 - root - INFO - ݿɹ +2025-03-14 15:13:15,811 - root - INFO - ʼʼ... +2025-03-14 15:13:15,838 - root - INFO - Ѵڣʼ +2025-03-14 15:13:15,838 - root - INFO - ݳʼɹ +2025-03-14 15:13:15,838 - core.component - INFO - Զ: components +2025-03-14 15:13:15,838 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:13:15,838 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:13:15,848 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:13:15,848 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:13:15,848 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:13:15,848 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:13:15,854 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:13:15,854 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:13:16,045 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:13:16,045 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:13:16,045 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:13:16,045 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:13:16,053 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:13:16,053 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:13:16,055 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:13:16,057 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:13:16,059 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:13:16,061 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:13:16,061 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:13:16,061 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:13:16,063 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:13:16,063 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:13:16,065 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:13:16,065 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:13:16,065 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:13:16,065 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:13:16,065 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:13:16,065 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:13:16,065 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:13:16,065 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:13:16,065 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:13:16,077 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:13:16,084 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:13:16,084 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:13:16,084 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:13:16,084 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:13:16,092 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:13:16,092 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:13:16,092 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:13:16,092 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:13:16,092 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:13:16,092 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:13:16,092 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:13:16,092 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:13:16,092 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:13:16,092 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:13:16,092 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:13:16,092 - config.component_registry - INFO - Զע: components +2025-03-14 15:13:16,124 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 15:13:16,726 - root - INFO - ʼʼݿ... +2025-03-14 15:13:16,779 - root - INFO - ݿɹ +2025-03-14 15:13:16,789 - root - INFO - ʼʼ... +2025-03-14 15:13:16,805 - root - INFO - Ѵڣʼ +2025-03-14 15:13:16,805 - root - INFO - ݳʼɹ +2025-03-14 15:13:16,805 - core.component - INFO - Զ: components +2025-03-14 15:13:16,805 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:13:16,805 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:13:16,805 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:13:16,991 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:13:16,991 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:13:16,995 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:13:16,995 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:13:16,995 - config.component_registry - INFO - Զע: components +2025-03-14 15:13:17,058 - root - INFO - ʼʼݿ... +2025-03-14 15:13:17,090 - root - INFO - ݿɹ +2025-03-14 15:13:17,090 - root - INFO - ʼʼ... +2025-03-14 15:13:17,090 - root - INFO - Ѵڣʼ +2025-03-14 15:13:17,090 - root - INFO - ݳʼɹ +2025-03-14 15:13:17,106 - core.component - INFO - Զ: components +2025-03-14 15:13:17,106 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:13:17,106 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:13:17,106 - config.component_registry - INFO - Զע: components +2025-03-14 15:13:17,121 - root - INFO - Ӧ +2025-03-14 15:13:17,906 - root - INFO - Ӧùر +2025-03-14 15:13:20,058 - root - INFO - ʼʼݿ... +2025-03-14 15:13:20,106 - root - INFO - ݿɹ +2025-03-14 15:13:20,106 - root - INFO - ʼʼ... +2025-03-14 15:13:20,126 - root - INFO - Ѵڣʼ +2025-03-14 15:13:20,126 - root - INFO - ݳʼɹ +2025-03-14 15:13:20,126 - core.component - INFO - Զ: components +2025-03-14 15:13:20,132 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:20,132 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:13:20,132 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:13:20,132 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:13:20,132 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:13:20,134 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:13:20,134 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:20,134 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:13:20,134 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:13:20,134 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:13:20,134 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:20,134 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:13:20,134 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:13:20,136 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:13:20,136 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:13:20,136 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:13:20,136 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:13:20,136 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:20,136 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:13:20,136 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:13:20,138 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:13:20,138 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:13:20,328 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:13:20,328 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:13:20,343 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:13:20,343 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:13:20,343 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:13:20,343 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:13:20,343 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:13:20,343 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:13:20,343 - config.component_registry - INFO - Զע: components +2025-03-14 15:13:20,375 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 15:13:20,931 - root - INFO - ʼʼݿ... +2025-03-14 15:13:20,963 - root - INFO - ݿɹ +2025-03-14 15:13:20,963 - root - INFO - ʼʼ... +2025-03-14 15:13:20,985 - root - INFO - Ѵڣʼ +2025-03-14 15:13:20,985 - root - INFO - ݳʼɹ +2025-03-14 15:13:20,985 - core.component - INFO - Զ: components +2025-03-14 15:13:20,985 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:13:20,985 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:13:20,985 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:13:20,994 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:13:20,994 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:13:20,994 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:13:20,994 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:13:20,995 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:13:20,995 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:13:20,995 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:13:20,995 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:13:20,995 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:13:21,181 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:13:21,181 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:13:21,181 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:13:21,181 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:13:21,181 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:13:21,181 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:13:21,184 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:13:21,184 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:13:21,184 - config.component_registry - INFO - Զע: components +2025-03-14 15:13:21,231 - root - INFO - ʼʼݿ... +2025-03-14 15:13:21,278 - root - INFO - ݿɹ +2025-03-14 15:13:21,278 - root - INFO - ʼʼ... +2025-03-14 15:13:21,278 - root - INFO - Ѵڣʼ +2025-03-14 15:13:21,278 - root - INFO - ݳʼɹ +2025-03-14 15:13:21,278 - core.component - INFO - Զ: components +2025-03-14 15:13:21,278 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:13:21,295 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:13:21,295 - config.component_registry - INFO - Զע: components +2025-03-14 15:13:21,315 - root - INFO - Ӧ +2025-03-14 15:17:55,534 - root - INFO - Ӧùر +2025-03-14 15:17:56,699 - root - INFO - ʼʼݿ... +2025-03-14 15:17:56,754 - root - INFO - ݿɹ +2025-03-14 15:17:56,756 - root - INFO - ʼʼ... +2025-03-14 15:17:56,770 - root - INFO - Ѵڣʼ +2025-03-14 15:17:56,770 - root - INFO - ݳʼɹ +2025-03-14 15:17:56,770 - core.component - INFO - Զ: components +2025-03-14 15:17:56,770 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:17:56,770 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:17:56,770 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:17:56,770 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:17:56,770 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:17:56,780 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:17:56,780 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:17:56,790 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:17:56,790 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:17:56,790 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:17:56,790 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:17:56,790 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:17:56,790 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:17:56,968 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:17:56,968 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:17:56,968 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:17:56,968 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:17:56,968 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:17:56,972 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:17:56,972 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:17:56,982 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:17:56,982 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:17:56,982 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:17:56,982 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:17:56,982 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:17:56,982 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:17:56,982 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:17:56,982 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:17:56,982 - config.component_registry - INFO - Զע: components +2025-03-14 15:18:05,472 - root - INFO - ʼʼݿ... +2025-03-14 15:18:05,510 - root - INFO - ݿɹ +2025-03-14 15:18:05,510 - root - INFO - ʼʼ... +2025-03-14 15:18:05,535 - root - INFO - Ѵڣʼ +2025-03-14 15:18:05,535 - root - INFO - ݳʼɹ +2025-03-14 15:18:05,535 - core.component - INFO - Զ: components +2025-03-14 15:18:05,535 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:18:05,535 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:18:05,535 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:18:05,551 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:18:05,551 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:18:05,740 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:18:05,740 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:18:05,740 - config.component_registry - INFO - Զע: components +2025-03-14 15:20:10,435 - root - INFO - ʼʼݿ... +2025-03-14 15:20:10,478 - root - INFO - ݿɹ +2025-03-14 15:20:10,478 - root - INFO - ʼʼ... +2025-03-14 15:20:10,504 - root - INFO - Ѵڣʼ +2025-03-14 15:20:10,504 - root - INFO - ݳʼɹ +2025-03-14 15:20:10,504 - core.component - INFO - Զ: components +2025-03-14 15:20:10,504 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:20:10,504 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:20:10,504 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:20:10,504 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:20:10,504 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:20:10,504 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:20:10,509 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:20:10,509 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:20:10,696 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:20:10,696 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:20:10,700 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:20:10,700 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:20:10,700 - config.component_registry - INFO - Զע: components +2025-03-14 15:20:10,732 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 15:20:11,311 - root - INFO - ʼʼݿ... +2025-03-14 15:20:11,344 - root - INFO - ݿɹ +2025-03-14 15:20:11,344 - root - INFO - ʼʼ... +2025-03-14 15:20:11,374 - root - INFO - Ѵڣʼ +2025-03-14 15:20:11,374 - root - INFO - ݳʼɹ +2025-03-14 15:20:11,374 - core.component - INFO - Զ: components +2025-03-14 15:20:11,374 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:20:11,374 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:20:11,374 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:20:11,390 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:20:11,390 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:20:11,390 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:20:11,390 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:20:11,580 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:20:11,580 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:20:11,580 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:20:11,580 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:20:11,580 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:20:11,580 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:20:11,580 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:20:11,596 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:20:11,596 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:20:11,596 - config.component_registry - INFO - Զע: components +2025-03-14 15:20:11,643 - root - INFO - ʼʼݿ... +2025-03-14 15:20:11,707 - root - INFO - ݿɹ +2025-03-14 15:20:11,707 - root - INFO - ʼʼ... +2025-03-14 15:20:11,707 - root - INFO - Ѵڣʼ +2025-03-14 15:20:11,707 - root - INFO - ݳʼɹ +2025-03-14 15:20:11,707 - core.component - INFO - Զ: components +2025-03-14 15:20:11,707 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:20:11,707 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:20:11,723 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:20:11,723 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:20:11,723 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:20:11,723 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:20:11,731 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:20:11,731 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:20:11,731 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:20:11,731 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:20:11,731 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:20:11,731 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:20:11,731 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:20:11,734 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:20:11,734 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:20:11,734 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:20:11,734 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:20:11,734 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:20:11,738 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:20:11,739 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:20:11,739 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:20:11,739 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:20:11,739 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:20:11,739 - config.component_registry - INFO - Զע: components +2025-03-14 15:20:11,747 - root - INFO - Ӧ +2025-03-14 15:20:26,941 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'types' +2025-03-14 15:21:35,301 - root - INFO - Ӧùر +2025-03-14 15:21:36,451 - root - INFO - ʼʼݿ... +2025-03-14 15:21:36,500 - root - INFO - ݿɹ +2025-03-14 15:21:36,500 - root - INFO - ʼʼ... +2025-03-14 15:21:36,516 - root - INFO - Ѵڣʼ +2025-03-14 15:21:36,516 - root - INFO - ݳʼɹ +2025-03-14 15:21:36,516 - core.component - INFO - Զ: components +2025-03-14 15:21:36,516 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:21:36,516 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:21:36,516 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:21:36,702 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:21:36,703 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:21:36,703 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:21:36,704 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:21:36,704 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:21:36,705 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:21:36,705 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:21:36,705 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:21:36,705 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:21:36,706 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:21:36,706 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:21:36,706 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:21:36,706 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:21:36,706 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:21:36,707 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:21:36,707 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:21:36,707 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:21:36,707 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:21:36,708 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:21:36,708 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:21:36,708 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:21:36,709 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:21:36,709 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:21:36,709 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:21:36,709 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:21:36,709 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:21:36,709 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:21:36,710 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:21:36,710 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:21:36,710 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:21:36,710 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:21:36,710 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:21:36,711 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:21:36,711 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:21:36,711 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:21:36,711 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:21:36,711 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:21:36,712 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:21:36,712 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:21:36,712 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:21:36,713 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:21:36,713 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:21:36,714 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:21:36,714 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:21:36,714 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:21:36,715 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:21:36,715 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:21:36,715 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:21:36,716 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:21:36,716 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:21:36,716 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:21:36,716 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:21:36,716 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:21:36,717 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:21:36,717 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:21:36,717 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:21:36,717 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:21:36,718 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:21:36,718 - config.component_registry - INFO - Զע: components +2025-03-14 15:21:49,744 - root - INFO - ʼʼݿ... +2025-03-14 15:21:49,787 - root - INFO - ݿɹ +2025-03-14 15:21:49,787 - root - INFO - ʼʼ... +2025-03-14 15:21:49,819 - root - INFO - Ѵڣʼ +2025-03-14 15:21:49,819 - root - INFO - ݳʼɹ +2025-03-14 15:21:49,819 - core.component - INFO - Զ: components +2025-03-14 15:21:49,819 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:21:49,819 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:21:49,819 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:21:49,819 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:21:49,819 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:21:49,835 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:21:49,835 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:21:50,022 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:21:50,022 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:21:50,038 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:21:50,038 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:21:50,046 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:21:50,046 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:21:50,046 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:21:50,046 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:21:50,047 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:21:50,047 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:21:50,047 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:21:50,047 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:21:50,047 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:21:50,047 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:21:50,048 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:21:50,048 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:21:50,048 - config.component_registry - INFO - Զע: components +2025-03-14 15:21:50,111 - root - INFO - ʼʼݿ... +2025-03-14 15:21:50,159 - root - INFO - ݿɹ +2025-03-14 15:21:50,176 - root - INFO - ʼʼ... +2025-03-14 15:21:50,176 - root - INFO - Ѵڣʼ +2025-03-14 15:21:50,176 - root - INFO - ݳʼɹ +2025-03-14 15:21:50,176 - core.component - INFO - Զ: components +2025-03-14 15:21:50,176 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:21:50,176 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:21:50,192 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:21:50,192 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:21:50,192 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:21:50,192 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:21:50,208 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:21:50,224 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:21:50,240 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:21:50,240 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:21:50,240 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:21:50,240 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:21:50,240 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:21:50,240 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:21:50,240 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:21:50,256 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:21:50,256 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:21:50,256 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:21:50,256 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:21:50,256 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:21:50,256 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:21:50,256 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:21:50,272 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:21:50,273 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:21:50,288 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:21:50,288 - config.component_registry - INFO - Զע: components +2025-03-14 15:21:50,295 - root - INFO - Ӧ +2025-03-14 15:21:59,391 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'types' +2025-03-14 15:22:45,688 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'types' +2025-03-14 15:24:48,113 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'types' +2025-03-14 15:24:48,310 - root - INFO - Ӧùر +2025-03-14 15:24:49,423 - root - INFO - ʼʼݿ... +2025-03-14 15:24:49,475 - root - INFO - ݿɹ +2025-03-14 15:24:49,475 - root - INFO - ʼʼ... +2025-03-14 15:24:49,500 - root - INFO - Ѵڣʼ +2025-03-14 15:24:49,500 - root - INFO - ݳʼɹ +2025-03-14 15:24:49,500 - core.component - INFO - Զ: components +2025-03-14 15:24:49,500 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:24:49,504 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:24:49,506 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:24:49,506 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:24:49,721 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:24:49,721 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:24:49,732 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:24:49,732 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:24:49,732 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:24:49,734 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:24:49,734 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:24:49,734 - config.component_registry - INFO - Զע: components +2025-03-14 15:24:49,786 - root - INFO - ʼʼݿ... +2025-03-14 15:24:49,834 - root - INFO - ݿɹ +2025-03-14 15:24:49,834 - root - INFO - ʼʼ... +2025-03-14 15:24:49,834 - root - INFO - Ѵڣʼ +2025-03-14 15:24:49,834 - root - INFO - ݳʼɹ +2025-03-14 15:24:49,834 - core.component - INFO - Զ: components +2025-03-14 15:24:49,834 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:24:49,834 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:24:49,834 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:24:49,834 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:24:49,834 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:24:49,834 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:24:49,834 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:24:49,840 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:24:49,844 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:24:49,851 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:24:49,855 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:24:49,855 - config.component_registry - INFO - Զע: components +2025-03-14 15:24:49,875 - root - INFO - Ӧ +2025-03-14 15:29:09,122 - root - INFO - Ӧùر +2025-03-14 15:29:10,315 - root - INFO - ʼʼݿ... +2025-03-14 15:29:10,358 - root - INFO - ݿɹ +2025-03-14 15:29:10,358 - root - INFO - ʼʼ... +2025-03-14 15:29:10,375 - root - INFO - Ѵڣʼ +2025-03-14 15:29:10,375 - root - INFO - ݳʼɹ +2025-03-14 15:29:10,375 - core.component - INFO - Զ: components +2025-03-14 15:29:10,379 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:29:10,380 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:29:10,380 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:29:10,380 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:29:10,381 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:29:10,381 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:29:10,381 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:29:10,382 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:29:10,382 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:29:10,382 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:29:10,382 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:29:10,382 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:29:10,382 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:29:10,382 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:29:10,382 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:29:10,386 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:29:10,386 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:29:10,564 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:29:10,564 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:29:10,568 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:29:10,568 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:29:10,568 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:29:10,568 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:29:10,568 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:29:10,572 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:29:10,572 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:29:10,577 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:29:10,577 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:29:10,577 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:29:10,581 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:29:10,581 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:29:10,581 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:29:10,585 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:29:10,585 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:29:10,585 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:29:10,585 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:29:10,585 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:29:10,585 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:29:10,590 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:29:10,590 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:29:10,590 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:29:10,590 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:29:10,590 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:29:10,594 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:29:10,594 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:29:10,594 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:29:10,594 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:29:10,594 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:29:10,594 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:29:10,598 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:29:10,598 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:29:10,598 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:29:10,602 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:29:10,602 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:29:10,602 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:29:10,602 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:29:10,604 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:29:10,604 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:29:10,604 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:29:10,605 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:29:10,605 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:29:10,605 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:29:10,605 - config.component_registry - INFO - Զע: components +2025-03-14 15:29:26,994 - root - INFO - ʼʼݿ... +2025-03-14 15:29:27,056 - root - INFO - ݿɹ +2025-03-14 15:29:27,056 - root - INFO - ʼʼ... +2025-03-14 15:29:27,075 - root - INFO - Ѵڣʼ +2025-03-14 15:29:27,077 - root - INFO - ݳʼɹ +2025-03-14 15:29:27,077 - core.component - INFO - Զ: components +2025-03-14 15:29:27,081 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:29:27,081 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:29:27,081 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:29:27,081 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:29:27,081 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:29:27,085 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:29:27,085 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:29:27,090 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:29:27,090 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:29:27,090 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:29:27,090 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:29:27,090 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:29:27,090 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:29:27,090 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:29:27,090 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:29:27,263 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:29:27,269 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:29:27,269 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:29:27,269 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:29:27,273 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:29:27,273 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:29:27,273 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:29:27,273 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:29:27,273 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:29:27,273 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:29:27,273 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:29:27,273 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:29:27,277 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:29:27,277 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:29:27,277 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:29:27,277 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:29:27,277 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:29:27,277 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:29:27,277 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:29:27,277 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:29:27,282 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:29:27,282 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:29:27,283 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:29:27,283 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:29:27,283 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:29:27,283 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:29:27,283 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:29:27,283 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:29:27,283 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:29:27,286 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:29:27,286 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:29:27,286 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:29:27,286 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:29:27,286 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:29:27,286 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:29:27,286 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:29:27,286 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:29:27,286 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:29:27,290 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:29:27,290 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:29:27,290 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:29:27,290 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:29:27,290 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:29:27,290 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:29:27,290 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:29:27,290 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:29:27,294 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:29:27,294 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:29:27,296 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:29:27,296 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:29:27,296 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:29:27,296 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:29:27,298 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:29:27,298 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:29:27,298 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:29:27,298 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:29:27,298 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:29:27,298 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:29:27,298 - config.component_registry - INFO - Զע: components +2025-03-14 15:29:37,949 - root - INFO - ʼʼݿ... +2025-03-14 15:29:37,997 - root - INFO - ݿɹ +2025-03-14 15:29:37,998 - root - INFO - ʼʼ... +2025-03-14 15:29:38,014 - root - INFO - Ѵڣʼ +2025-03-14 15:29:38,015 - root - INFO - ݳʼɹ +2025-03-14 15:29:38,015 - core.component - INFO - Զ: components +2025-03-14 15:29:38,016 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:29:38,016 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:29:38,016 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:29:38,018 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:29:38,018 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:29:38,018 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:29:38,018 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:29:38,018 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:29:38,018 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:29:38,018 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:29:38,020 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:29:38,022 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:29:38,022 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:29:38,022 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:29:38,023 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:29:38,023 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:29:38,023 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:29:38,023 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:29:38,023 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:29:38,023 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:29:38,023 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:29:38,024 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:29:38,024 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:29:38,024 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:29:38,024 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:29:38,024 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:29:38,024 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:29:38,024 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:29:38,024 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:29:38,025 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:29:38,025 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:29:38,025 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:29:38,026 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:29:38,026 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:29:38,026 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:29:38,026 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:29:38,026 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:29:38,026 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:29:38,210 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:29:38,210 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:29:38,211 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:29:38,211 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:29:38,211 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:29:38,212 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:29:38,212 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:29:38,212 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:29:38,212 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:29:38,212 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:29:38,212 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:29:38,213 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:29:38,213 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:29:38,213 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:29:38,213 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:29:38,214 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:29:38,214 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:29:38,215 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:29:38,216 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:29:38,216 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:29:38,216 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:29:38,216 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:29:38,216 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:29:38,216 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:29:38,217 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:29:38,217 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:29:38,218 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:29:38,218 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:29:38,218 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:29:38,218 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:29:38,218 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:29:38,218 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:29:38,218 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:29:38,218 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:29:38,219 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:29:38,220 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:29:38,220 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:29:38,220 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:29:38,221 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:29:38,221 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:29:38,222 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:29:38,222 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:29:38,223 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:29:38,223 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:29:38,223 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:29:38,224 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:29:38,225 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:29:38,225 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:29:38,226 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:29:38,227 - config.component_registry - INFO - Զע: components +2025-03-14 15:29:38,291 - root - INFO - ʼʼݿ... +2025-03-14 15:29:38,334 - root - INFO - ݿɹ +2025-03-14 15:29:38,334 - root - INFO - ʼʼ... +2025-03-14 15:29:38,336 - root - INFO - Ѵڣʼ +2025-03-14 15:29:38,336 - root - INFO - ݳʼɹ +2025-03-14 15:29:38,336 - core.component - INFO - Զ: components +2025-03-14 15:29:38,336 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:29:38,337 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:29:38,337 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:29:38,337 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:29:38,338 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:29:38,339 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:29:38,339 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:29:38,339 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:29:38,339 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:29:38,339 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:29:38,340 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:29:38,340 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:29:38,341 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:29:38,341 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:29:38,342 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:29:38,342 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:29:38,342 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:29:38,343 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:29:38,343 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:29:38,343 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:29:38,343 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:29:38,344 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:29:38,344 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:29:38,344 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:29:38,345 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:29:38,345 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:29:38,345 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:29:38,346 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:29:38,346 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:29:38,347 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:29:38,347 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:29:38,348 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:29:38,348 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:29:38,349 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:29:38,349 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:29:38,349 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:29:38,349 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:29:38,350 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:29:38,350 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:29:38,351 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:29:38,351 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:29:38,351 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:29:38,352 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:29:38,352 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:29:38,352 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:29:38,352 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:29:38,353 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:29:38,354 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:29:38,354 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:29:38,355 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:29:38,355 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:29:38,355 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:29:38,356 - config.component_registry - INFO - Զע: components +2025-03-14 15:29:38,364 - root - INFO - Ӧ +2025-03-14 15:29:43,453 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'types' +2025-03-14 15:29:44,745 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'types' +2025-03-14 15:30:46,605 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'types' +2025-03-14 15:31:13,732 - root - INFO - Ӧùر +2025-03-14 15:31:14,877 - root - INFO - ʼʼݿ... +2025-03-14 15:31:14,945 - root - INFO - ݿɹ +2025-03-14 15:31:14,949 - root - INFO - ʼʼ... +2025-03-14 15:31:14,966 - root - INFO - Ѵڣʼ +2025-03-14 15:31:14,971 - root - INFO - ݳʼɹ +2025-03-14 15:31:14,971 - core.component - INFO - Զ: components +2025-03-14 15:31:14,971 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:31:14,971 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:31:14,971 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:31:14,975 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:31:14,975 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:31:14,975 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:31:14,975 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:31:14,975 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:31:14,975 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:31:14,975 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:31:14,979 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:31:14,979 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:31:14,979 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:31:14,983 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:31:14,983 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:31:14,983 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:31:14,987 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:31:14,987 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:31:14,987 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:31:14,987 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:31:14,987 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:31:14,987 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:31:14,987 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:31:14,992 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:31:14,992 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:31:14,992 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:31:14,992 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:31:14,996 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:31:14,996 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:31:15,000 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:31:15,000 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:31:15,000 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:31:15,004 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:31:15,004 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:31:15,004 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:31:15,004 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:31:15,004 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:31:15,009 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:31:15,009 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:31:15,009 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:31:15,009 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:31:15,009 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:31:15,012 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:31:15,012 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:31:15,017 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:31:15,017 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:31:15,195 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:31:15,197 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:31:15,197 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:31:15,197 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:31:15,201 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:31:15,201 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:31:15,201 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:31:15,201 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:31:15,201 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:31:15,205 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:31:15,209 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:31:15,209 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:31:15,209 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:31:15,209 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:31:15,209 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:31:15,209 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:31:15,214 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:31:15,214 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:31:15,214 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:31:15,218 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:31:15,218 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:31:15,218 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:31:15,218 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:31:15,218 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:31:15,218 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:31:15,222 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:31:15,222 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:31:15,222 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:31:15,222 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:31:15,222 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:31:15,226 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:31:15,226 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:31:15,226 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:31:15,226 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:31:15,231 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:31:15,235 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:31:15,235 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:31:15,235 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:31:15,235 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:31:15,235 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:31:15,235 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:31:15,235 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:31:15,235 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:31:15,238 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:31:15,238 - config.component_registry - INFO - Զע: components +2025-03-14 15:31:15,277 - root - INFO - ʼʼݿ... +2025-03-14 15:31:15,344 - root - INFO - ݿɹ +2025-03-14 15:31:15,344 - root - INFO - ʼʼ... +2025-03-14 15:31:15,344 - root - INFO - Ѵڣʼ +2025-03-14 15:31:15,344 - root - INFO - ݳʼɹ +2025-03-14 15:31:15,344 - core.component - INFO - Զ: components +2025-03-14 15:31:15,344 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:31:15,344 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:31:15,349 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:31:15,357 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:31:15,361 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:31:15,361 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:31:15,361 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:31:15,361 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:31:15,361 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:31:15,361 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:31:15,365 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:31:15,365 - config.component_registry - INFO - Զע: components +2025-03-14 15:31:15,374 - root - INFO - Ӧ +2025-03-14 15:36:14,502 - root - INFO - Ӧùر +2025-03-14 15:36:15,718 - root - INFO - ʼʼݿ... +2025-03-14 15:36:15,767 - root - INFO - ݿɹ +2025-03-14 15:36:15,767 - root - INFO - ʼʼ... +2025-03-14 15:36:15,786 - root - INFO - Ѵڣʼ +2025-03-14 15:36:15,786 - root - INFO - ݳʼɹ +2025-03-14 15:36:15,786 - core.component - INFO - Զ: components +2025-03-14 15:36:15,786 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:36:15,786 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:36:15,786 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:36:15,786 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:36:15,799 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:36:15,800 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:36:15,800 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:36:15,801 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:36:15,801 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:36:15,984 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:36:15,985 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:36:15,985 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:36:15,985 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:36:15,985 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:36:15,985 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:36:15,985 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:36:15,985 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:36:15,985 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:36:15,985 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:36:15,985 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:36:15,999 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:36:16,000 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:36:16,000 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:36:16,000 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:36:16,000 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:36:16,001 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:36:16,001 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:36:16,002 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:36:16,002 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:36:16,003 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:36:16,006 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:36:16,009 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:36:16,010 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:36:16,010 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:36:16,011 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:36:16,011 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:36:16,014 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:36:16,015 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:36:16,015 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:36:16,016 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:36:16,017 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:36:16,017 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:36:16,017 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:36:16,017 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:36:16,017 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:36:16,017 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:36:16,017 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:36:16,017 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:36:16,034 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:36:16,034 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:36:16,035 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:36:16,035 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:36:16,035 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:36:16,035 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:36:16,036 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:36:16,036 - config.component_registry - INFO - Զע: components +2025-03-14 15:36:16,083 - root - INFO - ʼʼݿ... +2025-03-14 15:36:16,118 - root - INFO - ݿɹ +2025-03-14 15:36:16,118 - root - INFO - ʼʼ... +2025-03-14 15:36:16,118 - root - INFO - Ѵڣʼ +2025-03-14 15:36:16,118 - root - INFO - ݳʼɹ +2025-03-14 15:36:16,118 - core.component - INFO - Զ: components +2025-03-14 15:36:16,118 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:36:16,118 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:36:16,118 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:36:16,118 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:36:16,118 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:36:16,118 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:36:16,118 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:36:16,118 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:36:16,132 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:36:16,132 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:36:16,133 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:36:16,133 - config.component_registry - INFO - Զע: components +2025-03-14 15:36:16,148 - root - INFO - Ӧ +2025-03-14 15:40:10,941 - root - INFO - Ӧùر +2025-03-14 15:40:12,382 - root - INFO - ʼʼݿ... +2025-03-14 15:40:12,431 - root - INFO - ݿɹ +2025-03-14 15:40:12,431 - root - INFO - ʼʼ... +2025-03-14 15:40:12,456 - root - INFO - Ѵڣʼ +2025-03-14 15:40:12,456 - root - INFO - ݳʼɹ +2025-03-14 15:40:12,456 - core.component - INFO - Զ: components +2025-03-14 15:40:12,456 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:40:12,456 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:40:12,466 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:40:12,466 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:40:12,466 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:40:12,466 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:40:12,466 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:40:12,466 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:40:12,469 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:40:12,469 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:40:12,469 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:40:12,469 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:40:12,469 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:40:12,471 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:40:12,471 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:40:12,471 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:40:12,471 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:40:12,471 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:40:12,472 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:40:12,472 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:40:12,473 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:40:12,474 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:40:12,474 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:40:12,474 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:40:12,475 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:40:12,475 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:40:12,476 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:40:12,477 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:40:12,477 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:40:12,477 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:40:12,477 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:40:12,477 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:40:12,478 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:40:12,478 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:40:12,478 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:40:12,478 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:40:12,478 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:40:12,479 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:40:12,479 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:40:12,479 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:40:12,479 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:40:12,480 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:40:12,480 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:40:12,480 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:40:12,480 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:40:12,481 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:40:12,664 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:40:12,664 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:40:12,664 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:40:12,664 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:40:12,665 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:40:12,665 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:40:12,669 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:40:12,669 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:40:12,669 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:40:12,669 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:40:12,669 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:40:12,669 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:40:12,669 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:40:12,669 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:40:12,669 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:40:12,669 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:40:12,671 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:40:12,671 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:40:12,671 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:40:12,671 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:40:12,672 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:40:12,673 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:40:12,673 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:40:12,673 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:40:12,673 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:40:12,673 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:40:12,673 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:40:12,673 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:40:12,682 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:40:12,682 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:40:12,682 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:40:12,682 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:40:12,682 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:40:12,682 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:40:12,682 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:40:12,682 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:40:12,682 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:40:12,682 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:40:12,682 - config.component_registry - INFO - Զע: components +2025-03-14 15:40:12,743 - root - INFO - ʼʼݿ... +2025-03-14 15:40:12,799 - root - INFO - ݿɹ +2025-03-14 15:40:12,799 - root - INFO - ʼʼ... +2025-03-14 15:40:12,799 - root - INFO - Ѵڣʼ +2025-03-14 15:40:12,799 - root - INFO - ݳʼɹ +2025-03-14 15:40:12,799 - core.component - INFO - Զ: components +2025-03-14 15:40:12,799 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:40:12,799 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:40:12,809 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:40:12,809 - config.component_registry - INFO - Զע: components +2025-03-14 15:40:12,819 - root - INFO - Ӧ +2025-03-14 15:45:11,581 - root - INFO - Ӧùر +2025-03-14 15:45:12,956 - root - INFO - ʼʼݿ... +2025-03-14 15:45:13,005 - root - INFO - ݿɹ +2025-03-14 15:45:13,006 - root - INFO - ʼʼ... +2025-03-14 15:45:13,018 - root - INFO - Ѵڣʼ +2025-03-14 15:45:13,018 - root - INFO - ݳʼɹ +2025-03-14 15:45:13,018 - core.component - INFO - Զ: components +2025-03-14 15:45:13,018 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:45:13,018 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:45:13,018 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:45:13,028 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:45:13,028 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:45:13,034 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:45:13,034 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:45:13,034 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:45:13,207 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:45:13,208 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:45:13,210 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:45:13,213 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:45:13,214 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:45:13,216 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:45:13,219 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:45:13,219 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:45:13,219 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:45:13,220 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:45:13,222 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:45:13,224 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:45:13,226 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:45:13,227 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:45:13,227 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:45:13,229 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:45:13,229 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:45:13,231 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:45:13,231 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:45:13,234 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:45:13,236 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:45:13,251 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:45:13,251 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:45:13,251 - config.component_registry - INFO - Զע: components +2025-03-14 15:45:13,307 - root - INFO - ʼʼݿ... +2025-03-14 15:45:13,348 - root - INFO - ݿɹ +2025-03-14 15:45:13,348 - root - INFO - ʼʼ... +2025-03-14 15:45:13,348 - root - INFO - Ѵڣʼ +2025-03-14 15:45:13,348 - root - INFO - ݳʼɹ +2025-03-14 15:45:13,348 - core.component - INFO - Զ: components +2025-03-14 15:45:13,348 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:45:13,361 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:45:13,378 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:45:13,393 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:45:13,393 - config.component_registry - INFO - Զע: components +2025-03-14 15:45:13,409 - root - INFO - Ӧ +2025-03-14 15:48:30,417 - root - INFO - Ӧùر +2025-03-14 15:48:46,308 - root - INFO - ʼʼݿ... +2025-03-14 15:48:46,341 - root - INFO - ݿɹ +2025-03-14 15:48:46,341 - root - INFO - ʼʼ... +2025-03-14 15:48:46,375 - root - INFO - Ѵڣʼ +2025-03-14 15:48:46,376 - root - INFO - ݳʼɹ +2025-03-14 15:48:46,377 - core.component - INFO - Զ: components +2025-03-14 15:48:46,379 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:48:46,379 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:48:46,379 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:48:46,379 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:48:46,379 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:48:46,380 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:48:46,380 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:48:46,380 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:48:46,380 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:48:46,380 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:48:46,381 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:48:46,381 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:48:46,381 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:48:46,382 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:48:46,382 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:48:46,383 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:48:46,383 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:48:46,383 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:48:46,384 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:48:46,384 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:48:46,384 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:48:46,385 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:48:46,385 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:48:46,385 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:48:46,386 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:48:46,386 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:48:46,387 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:48:46,387 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:48:46,387 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:48:46,388 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:48:46,390 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:48:46,390 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:48:46,390 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:48:46,391 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:48:46,391 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:48:46,391 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:48:46,391 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:48:46,392 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:48:46,392 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:48:46,392 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:48:46,392 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:48:46,393 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:48:46,393 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:48:46,393 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:48:46,393 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:48:46,394 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:48:46,571 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:48:46,571 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:48:46,580 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:48:46,580 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:48:46,586 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:48:46,586 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:48:46,586 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:48:46,586 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:48:46,586 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:48:46,586 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:48:46,586 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:48:46,586 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:48:46,586 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:48:46,586 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:48:46,586 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:48:46,586 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:48:46,586 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:48:46,586 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:48:46,586 - config.component_registry - INFO - Զע: components +2025-03-14 15:48:46,635 - root - INFO - ʼʼݿ... +2025-03-14 15:48:46,688 - root - INFO - ݿɹ +2025-03-14 15:48:46,688 - root - INFO - ʼʼ... +2025-03-14 15:48:46,690 - root - INFO - Ѵڣʼ +2025-03-14 15:48:46,690 - root - INFO - ݳʼɹ +2025-03-14 15:48:46,690 - core.component - INFO - Զ: components +2025-03-14 15:48:46,691 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:48:46,691 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:48:46,691 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:48:46,691 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:48:46,692 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:48:46,692 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:48:46,692 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:48:46,692 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:48:46,693 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:48:46,693 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:48:46,693 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:48:46,694 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:48:46,694 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:48:46,694 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:48:46,694 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:48:46,695 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:48:46,695 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:48:46,695 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:48:46,695 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:48:46,696 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:48:46,696 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:48:46,696 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:48:46,696 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:48:46,696 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:48:46,697 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:48:46,697 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:48:46,697 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:48:46,697 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:48:46,698 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:48:46,698 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:48:46,698 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:48:46,698 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:48:46,698 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:48:46,699 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:48:46,699 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:48:46,699 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:48:46,699 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:48:46,699 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:48:46,699 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:48:46,700 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:48:46,700 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:48:46,700 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:48:46,700 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:48:46,700 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:48:46,700 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:48:46,701 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:48:46,701 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:48:46,701 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:48:46,701 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:48:46,701 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:48:46,701 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:48:46,702 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:48:46,702 - config.component_registry - INFO - Զע: components +2025-03-14 15:48:46,710 - root - INFO - Ӧ +2025-03-14 15:52:12,919 - root - INFO - Ӧùر +2025-03-14 15:52:14,426 - root - INFO - ʼʼݿ... +2025-03-14 15:52:14,484 - root - INFO - ݿɹ +2025-03-14 15:52:14,484 - root - INFO - ʼʼ... +2025-03-14 15:52:14,489 - root - INFO - Ѵڣʼ +2025-03-14 15:52:14,489 - root - INFO - ݳʼɹ +2025-03-14 15:52:14,489 - core.component - INFO - Զ: components +2025-03-14 15:52:14,489 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 15:52:14,505 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:52:14,513 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:52:14,513 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: if -> IfComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 15:52:14,521 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:52:14,521 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:52:14,538 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:52:14,538 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:52:14,538 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:52:14,538 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:52:14,538 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:52:14,729 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 15:52:14,745 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 15:52:14,745 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:52:14,745 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:52:14,745 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 15:52:14,745 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 15:52:14,745 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 15:52:14,745 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 15:52:14,761 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 15:52:14,761 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 15:52:14,761 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:52:14,761 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:52:14,761 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:52:14,777 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:52:14,777 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:52:14,777 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:52:14,777 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 15:52:14,777 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 15:52:14,777 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:52:14,777 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:52:14,793 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 15:52:14,793 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 15:52:14,793 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 15:52:14,809 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 15:52:14,809 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 15:52:14,809 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 15:52:14,813 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 15:52:14,813 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 15:52:14,813 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 15:52:14,813 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 15:52:14,813 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 15:52:14,825 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:52:14,825 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 15:52:14,825 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:52:14,825 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 15:52:14,840 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 15:52:14,840 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 15:52:14,840 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 15:52:14,840 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 15:52:14,840 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 15:52:14,840 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:52:14,840 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:52:14,840 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:52:14,840 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:52:14,840 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:52:14,840 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:52:14,840 - config.component_registry - INFO - Զע: components +2025-03-14 15:52:14,887 - root - INFO - ʼʼݿ... +2025-03-14 15:52:14,935 - root - INFO - ݿɹ +2025-03-14 15:52:14,935 - root - INFO - ʼʼ... +2025-03-14 15:52:14,935 - root - INFO - Ѵڣʼ +2025-03-14 15:52:14,935 - root - INFO - ݳʼɹ +2025-03-14 15:52:14,935 - core.component - INFO - Զ: components +2025-03-14 15:52:14,935 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 15:52:14,935 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 15:52:14,935 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 15:52:14,951 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 15:52:14,960 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 15:52:14,964 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 15:52:14,964 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 15:52:14,964 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 15:52:14,964 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 15:52:14,969 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 15:52:14,977 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 15:52:14,977 - config.component_registry - INFO - Զע: components +2025-03-14 15:52:14,987 - root - INFO - Ӧ +2025-03-14 15:54:14,756 - services.task_service - INFO - : test1 (ID: 1) +2025-03-14 16:02:13,701 - root - INFO - Ӧùر +2025-03-14 16:08:44,200 - root - INFO - ʼʼݿ... +2025-03-14 16:08:44,278 - root - INFO - ݿɹ +2025-03-14 16:08:44,278 - root - INFO - ʼʼ... +2025-03-14 16:08:44,294 - root - INFO - Ѵڣʼ +2025-03-14 16:08:44,294 - root - INFO - ݳʼɹ +2025-03-14 16:08:44,294 - core.component - INFO - Զ: components +2025-03-14 16:08:44,294 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:08:44,310 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:08:44,310 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:08:44,326 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:08:44,326 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:08:44,326 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:08:44,326 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:08:44,326 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:08:44,326 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:08:44,514 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:08:44,514 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:08:44,514 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:08:44,514 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:08:44,528 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:08:44,531 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:08:44,531 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:08:44,543 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:08:44,543 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:08:44,543 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:08:44,543 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:08:44,543 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:08:44,543 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:08:44,543 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:08:44,543 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:08:44,543 - config.component_registry - INFO - Զע: components +2025-03-14 16:08:44,577 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 16:08:45,185 - root - INFO - ʼʼݿ... +2025-03-14 16:08:45,240 - root - INFO - ݿɹ +2025-03-14 16:08:45,240 - root - INFO - ʼʼ... +2025-03-14 16:08:45,261 - root - INFO - Ѵڣʼ +2025-03-14 16:08:45,263 - root - INFO - ݳʼɹ +2025-03-14 16:08:45,263 - core.component - INFO - Զ: components +2025-03-14 16:08:45,263 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:08:45,263 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:08:45,263 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:08:45,278 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:08:45,278 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:08:45,286 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:08:45,286 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:08:45,286 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:08:45,286 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:08:45,286 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:08:45,286 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:08:45,286 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:08:45,473 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:08:45,473 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:08:45,473 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:08:45,474 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:08:45,476 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:08:45,476 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:08:45,477 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:08:45,478 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:08:45,478 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:08:45,478 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:08:45,478 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:08:45,479 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:08:45,479 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:08:45,479 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:08:45,479 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:08:45,480 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:08:45,480 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:08:45,480 - config.component_registry - INFO - Զע: components +2025-03-14 16:08:45,531 - root - INFO - ʼʼݿ... +2025-03-14 16:08:45,576 - root - INFO - ݿɹ +2025-03-14 16:08:45,576 - root - INFO - ʼʼ... +2025-03-14 16:08:45,578 - root - INFO - Ѵڣʼ +2025-03-14 16:08:45,578 - root - INFO - ݳʼɹ +2025-03-14 16:08:45,579 - core.component - INFO - Զ: components +2025-03-14 16:08:45,579 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:08:45,580 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:08:45,580 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:08:45,581 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:08:45,581 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:08:45,581 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:08:45,581 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:08:45,581 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:08:45,582 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:08:45,582 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:08:45,582 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:08:45,583 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:08:45,583 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:08:45,583 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:08:45,583 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:08:45,583 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:08:45,583 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:08:45,584 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:08:45,585 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:08:45,586 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:08:45,586 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:08:45,586 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:08:45,586 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:08:45,586 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:08:45,586 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:08:45,586 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:08:45,587 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:08:45,587 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:08:45,587 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:08:45,587 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:08:45,587 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:08:45,587 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:08:45,587 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:08:45,588 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:08:45,589 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:08:45,589 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:08:45,589 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:08:45,589 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:08:45,590 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:08:45,590 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:08:45,590 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:08:45,590 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:08:45,590 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:08:45,591 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:08:45,591 - config.component_registry - INFO - Զע: components +2025-03-14 16:08:45,601 - root - INFO - Ӧ +2025-03-14 16:08:48,849 - services.task_service - ERROR - ȡʧ: invalid literal for int() with base 10: 'list' +2025-03-14 16:12:49,621 - root - INFO - Ӧùر +2025-03-14 16:12:50,782 - root - INFO - ʼʼݿ... +2025-03-14 16:12:50,875 - root - INFO - ݿɹ +2025-03-14 16:12:50,875 - root - INFO - ʼʼ... +2025-03-14 16:12:50,891 - root - INFO - Ѵڣʼ +2025-03-14 16:12:50,891 - root - INFO - ݳʼɹ +2025-03-14 16:12:50,891 - core.component - INFO - Զ: components +2025-03-14 16:12:50,891 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:12:50,891 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:12:50,891 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:12:50,891 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:12:50,891 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:12:50,891 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:12:50,907 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:12:50,907 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:12:50,923 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:12:50,924 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:12:50,926 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:12:50,927 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:12:50,927 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:12:51,143 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:12:51,145 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:12:51,146 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:12:51,146 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:12:51,146 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:12:51,146 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:12:51,146 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:12:51,153 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:12:51,155 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:12:51,155 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:12:51,155 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:12:51,157 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:12:51,157 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:12:51,157 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:12:51,162 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:12:51,164 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:12:51,164 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:12:51,164 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:12:51,164 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:12:51,164 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:12:51,172 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:12:51,172 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:12:51,178 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:12:51,178 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:12:51,178 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:12:51,178 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:12:51,178 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:12:51,178 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:12:51,178 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:12:51,178 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:12:51,178 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:12:51,178 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:12:51,178 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:12:51,178 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:12:51,178 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:12:51,178 - config.component_registry - INFO - Զע: components +2025-03-14 16:12:51,254 - root - INFO - ʼʼݿ... +2025-03-14 16:12:51,309 - root - INFO - ݿɹ +2025-03-14 16:12:51,309 - root - INFO - ʼʼ... +2025-03-14 16:12:51,311 - root - INFO - Ѵڣʼ +2025-03-14 16:12:51,312 - root - INFO - ݳʼɹ +2025-03-14 16:12:51,312 - core.component - INFO - Զ: components +2025-03-14 16:12:51,313 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:12:51,313 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:12:51,313 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:12:51,313 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:12:51,314 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:12:51,315 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:12:51,329 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:12:51,329 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:12:51,329 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:12:51,329 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:12:51,331 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:12:51,331 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:12:51,331 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:12:51,332 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:12:51,332 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:12:51,332 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:12:51,333 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:12:51,333 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:12:51,333 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:12:51,333 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:12:51,334 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:12:51,334 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:12:51,334 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:12:51,334 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:12:51,334 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:12:51,335 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:12:51,335 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:12:51,335 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:12:51,335 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:12:51,336 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:12:51,336 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:12:51,336 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:12:51,336 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:12:51,336 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:12:51,337 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:12:51,337 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:12:51,337 - config.component_registry - INFO - Զע: components +2025-03-14 16:12:51,349 - root - INFO - Ӧ +2025-03-14 16:17:50,197 - root - INFO - Ӧùر +2025-03-14 16:17:51,195 - root - INFO - ʼʼݿ... +2025-03-14 16:17:51,245 - root - INFO - ݿɹ +2025-03-14 16:17:51,245 - root - INFO - ʼʼ... +2025-03-14 16:17:51,261 - root - INFO - Ѵڣʼ +2025-03-14 16:17:51,261 - root - INFO - ݳʼɹ +2025-03-14 16:17:51,261 - core.component - INFO - Զ: components +2025-03-14 16:17:51,261 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:17:51,261 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:17:51,277 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:17:51,277 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:17:51,279 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:17:51,279 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:17:51,281 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:17:51,281 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:17:51,281 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:17:51,281 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:17:51,290 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:17:51,290 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:17:51,293 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:17:51,293 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:17:51,293 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:17:51,293 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:17:51,293 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:17:51,293 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:17:51,293 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:17:51,297 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:17:51,297 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:17:51,493 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:17:51,494 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:17:51,495 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:17:51,495 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:17:51,496 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:17:51,496 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:17:51,496 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:17:51,496 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:17:51,496 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:17:51,496 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:17:51,496 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:17:51,496 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:17:51,496 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:17:51,496 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:17:51,507 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:17:51,507 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:17:51,509 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:17:51,509 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:17:51,510 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:17:51,510 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:17:51,511 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:17:51,527 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:17:51,529 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:17:51,529 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:17:51,529 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:17:51,529 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:17:51,529 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:17:51,529 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:17:51,529 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:17:51,542 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:17:51,543 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:17:51,543 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:17:51,544 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:17:51,545 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:17:51,546 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:17:51,548 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:17:51,551 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:17:51,554 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:17:51,556 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:17:51,558 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:17:51,559 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:17:51,561 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:17:51,562 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:17:51,562 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:17:51,563 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:17:51,563 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:17:51,563 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:17:51,564 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:17:51,564 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:17:51,564 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:17:51,564 - config.component_registry - INFO - Զע: components +2025-03-14 16:17:51,609 - root - INFO - ʼʼݿ... +2025-03-14 16:17:51,675 - root - INFO - ݿɹ +2025-03-14 16:17:51,675 - root - INFO - ʼʼ... +2025-03-14 16:17:51,675 - root - INFO - Ѵڣʼ +2025-03-14 16:17:51,675 - root - INFO - ݳʼɹ +2025-03-14 16:17:51,675 - core.component - INFO - Զ: components +2025-03-14 16:17:51,675 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:17:51,675 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:17:51,675 - config.component_registry - INFO - Զע: components +2025-03-14 16:17:51,694 - root - INFO - Ӧ +2025-03-14 16:18:43,634 - root - INFO - Ӧùر +2025-03-14 16:18:44,750 - root - INFO - ʼʼݿ... +2025-03-14 16:18:44,813 - root - INFO - ݿɹ +2025-03-14 16:18:44,813 - root - INFO - ʼʼ... +2025-03-14 16:18:44,830 - root - INFO - Ѵڣʼ +2025-03-14 16:18:44,831 - root - INFO - ݳʼɹ +2025-03-14 16:18:44,831 - core.component - INFO - Զ: components +2025-03-14 16:18:44,833 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:18:44,833 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:18:44,834 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:18:44,835 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:18:44,835 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:18:44,835 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:18:44,835 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:18:44,836 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:18:44,836 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:18:45,062 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:18:45,063 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:18:45,063 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:18:45,063 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:18:45,064 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:18:45,064 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:18:45,065 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:18:45,065 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:18:45,065 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:18:45,066 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:18:45,066 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:18:45,066 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:18:45,066 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:18:45,066 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:18:45,067 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:18:45,067 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:18:45,067 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:18:45,068 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:18:45,068 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:18:45,068 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:18:45,069 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:18:45,069 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:18:45,069 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:18:45,069 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:18:45,069 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:18:45,070 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:18:45,070 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:18:45,070 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:18:45,070 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:18:45,070 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:18:45,071 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:18:45,071 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:18:45,071 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:18:45,071 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:18:45,072 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:18:45,072 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:18:45,072 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:18:45,072 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:18:45,072 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:18:45,072 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:18:45,073 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:18:45,073 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:18:45,073 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:18:45,073 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:18:45,074 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:18:45,074 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:18:45,074 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:18:45,075 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:18:45,075 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:18:45,075 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:18:45,075 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:18:45,075 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:18:45,075 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:18:45,076 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:18:45,076 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:18:45,076 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:18:45,076 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:18:45,076 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:18:45,077 - config.component_registry - INFO - Զע: components +2025-03-14 16:18:45,126 - root - INFO - ʼʼݿ... +2025-03-14 16:18:45,187 - root - INFO - ݿɹ +2025-03-14 16:18:45,187 - root - INFO - ʼʼ... +2025-03-14 16:18:45,187 - root - INFO - Ѵڣʼ +2025-03-14 16:18:45,187 - root - INFO - ݳʼɹ +2025-03-14 16:18:45,187 - core.component - INFO - Զ: components +2025-03-14 16:18:45,187 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:18:45,187 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:18:45,197 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:18:45,197 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:18:45,197 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:18:45,198 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:18:45,198 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:18:45,198 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:18:45,198 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:18:45,199 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:18:45,199 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:18:45,199 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:18:45,199 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:18:45,200 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:18:45,200 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:18:45,200 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:18:45,200 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:18:45,201 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:18:45,201 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:18:45,201 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:18:45,201 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:18:45,202 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:18:45,202 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:18:45,202 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:18:45,202 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:18:45,203 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:18:45,203 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:18:45,203 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:18:45,203 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:18:45,204 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:18:45,210 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:18:45,212 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:18:45,212 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:18:45,212 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:18:45,212 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:18:45,213 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:18:45,213 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:18:45,213 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:18:45,214 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:18:45,215 - config.component_registry - INFO - Զע: components +2025-03-14 16:18:45,224 - root - INFO - Ӧ +2025-03-14 16:23:44,313 - root - INFO - Ӧùر +2025-03-14 16:23:45,454 - root - INFO - ʼʼݿ... +2025-03-14 16:23:45,500 - root - INFO - ݿɹ +2025-03-14 16:23:45,500 - root - INFO - ʼʼ... +2025-03-14 16:23:45,516 - root - INFO - Ѵڣʼ +2025-03-14 16:23:45,516 - root - INFO - ݳʼɹ +2025-03-14 16:23:45,516 - core.component - INFO - Զ: components +2025-03-14 16:23:45,516 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:23:45,516 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:23:45,516 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:23:45,699 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:23:45,700 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:23:45,702 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:23:45,703 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:23:45,704 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:23:45,706 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:23:45,706 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:23:45,706 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:23:45,706 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:23:45,707 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:23:45,708 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:23:45,709 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:23:45,710 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:23:45,712 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:23:45,713 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:23:45,714 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:23:45,714 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:23:45,716 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:23:45,716 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:23:45,719 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:23:45,719 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:23:45,719 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:23:45,719 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:23:45,726 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:23:45,726 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:23:45,728 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:23:45,729 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:23:45,730 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:23:45,731 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:23:45,732 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:23:45,732 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:23:45,734 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:23:45,734 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:23:45,734 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:23:45,734 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:23:45,734 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:23:45,734 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:23:45,734 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:23:45,743 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:23:45,744 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:23:45,744 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:23:45,744 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:23:45,746 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:23:45,746 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:23:45,747 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:23:45,747 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:23:45,747 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:23:45,752 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:23:45,754 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:23:45,756 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:23:45,758 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:23:45,761 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:23:45,762 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:23:45,763 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:23:45,763 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:23:45,763 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:23:45,764 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:23:45,764 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:23:45,766 - config.component_registry - INFO - Զע: components +2025-03-14 16:23:45,810 - root - INFO - ʼʼݿ... +2025-03-14 16:23:45,858 - root - INFO - ݿɹ +2025-03-14 16:23:45,858 - root - INFO - ʼʼ... +2025-03-14 16:23:45,858 - root - INFO - Ѵڣʼ +2025-03-14 16:23:45,859 - root - INFO - ݳʼɹ +2025-03-14 16:23:45,859 - core.component - INFO - Զ: components +2025-03-14 16:23:45,859 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:23:45,862 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:23:45,862 - config.component_registry - INFO - Զע: components +2025-03-14 16:23:45,878 - root - INFO - Ӧ +2025-03-14 16:25:36,886 - root - INFO - Ӧùر +2025-03-14 16:25:38,049 - root - INFO - ʼʼݿ... +2025-03-14 16:25:38,106 - root - INFO - ݿɹ +2025-03-14 16:25:38,106 - root - INFO - ʼʼ... +2025-03-14 16:25:38,122 - root - INFO - Ѵڣʼ +2025-03-14 16:25:38,122 - root - INFO - ݳʼɹ +2025-03-14 16:25:38,122 - core.component - INFO - Զ: components +2025-03-14 16:25:38,122 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:25:38,122 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:25:38,122 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:25:38,138 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:25:38,313 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:25:38,313 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:25:38,328 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:25:38,328 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:25:38,328 - config.component_registry - INFO - Զע: components +2025-03-14 16:25:38,400 - root - INFO - ʼʼݿ... +2025-03-14 16:25:38,460 - root - INFO - ݿɹ +2025-03-14 16:25:38,460 - root - INFO - ʼʼ... +2025-03-14 16:25:38,460 - root - INFO - Ѵڣʼ +2025-03-14 16:25:38,467 - root - INFO - ݳʼɹ +2025-03-14 16:25:38,467 - core.component - INFO - Զ: components +2025-03-14 16:25:38,468 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:25:38,468 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:25:38,468 - config.component_registry - INFO - Զע: components +2025-03-14 16:25:38,483 - root - INFO - Ӧ +2025-03-14 16:30:37,573 - root - INFO - Ӧùر +2025-03-14 16:30:39,053 - root - INFO - ʼʼݿ... +2025-03-14 16:30:39,118 - root - INFO - ݿɹ +2025-03-14 16:30:39,118 - root - INFO - ʼʼ... +2025-03-14 16:30:39,134 - root - INFO - Ѵڣʼ +2025-03-14 16:30:39,134 - root - INFO - ݳʼɹ +2025-03-14 16:30:39,134 - core.component - INFO - Զ: components +2025-03-14 16:30:39,136 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:30:39,136 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:30:39,136 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:30:39,136 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:30:39,137 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:30:39,137 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:30:39,137 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:30:39,137 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:30:39,137 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:30:39,138 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:30:39,138 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:30:39,139 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:30:39,139 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:30:39,139 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:30:39,139 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:30:39,140 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:30:39,140 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:30:39,141 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:30:39,143 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:30:39,143 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:30:39,143 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:30:39,143 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:30:39,143 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:30:39,143 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:30:39,144 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:30:39,144 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:30:39,144 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:30:39,144 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:30:39,144 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:30:39,144 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:30:39,144 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:30:39,355 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:30:39,355 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:30:39,356 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:30:39,356 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:30:39,366 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:30:39,367 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:30:39,367 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:30:39,367 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:30:39,368 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:30:39,369 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:30:39,369 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:30:39,369 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:30:39,370 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:30:39,370 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:30:39,370 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:30:39,370 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:30:39,371 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:30:39,371 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:30:39,372 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:30:39,372 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:30:39,372 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:30:39,373 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:30:39,373 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:30:39,373 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:30:39,373 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:30:39,373 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:30:39,373 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:30:39,373 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:30:39,373 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:30:39,373 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:30:39,373 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:30:39,373 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:30:39,373 - config.component_registry - INFO - Զע: components +2025-03-14 16:30:39,420 - root - INFO - ʼʼݿ... +2025-03-14 16:30:39,458 - root - INFO - ݿɹ +2025-03-14 16:30:39,458 - root - INFO - ʼʼ... +2025-03-14 16:30:39,458 - root - INFO - Ѵڣʼ +2025-03-14 16:30:39,458 - root - INFO - ݳʼɹ +2025-03-14 16:30:39,458 - core.component - INFO - Զ: components +2025-03-14 16:30:39,458 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:30:39,458 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:30:39,466 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:30:39,467 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:30:39,467 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:30:39,468 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:30:39,469 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:30:39,470 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:30:39,470 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:30:39,470 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:30:39,471 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:30:39,472 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:30:39,472 - config.component_registry - INFO - Զע: components +2025-03-14 16:30:39,483 - root - INFO - Ӧ +2025-03-14 16:33:43,213 - root - INFO - Ӧùر +2025-03-14 16:33:44,660 - root - INFO - ʼʼݿ... +2025-03-14 16:33:44,704 - root - INFO - ݿɹ +2025-03-14 16:33:44,704 - root - INFO - ʼʼ... +2025-03-14 16:33:44,736 - root - INFO - Ѵڣʼ +2025-03-14 16:33:44,736 - root - INFO - ݳʼɹ +2025-03-14 16:33:44,736 - core.component - INFO - Զ: components +2025-03-14 16:33:44,736 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:33:44,736 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:33:44,736 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:33:44,736 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:33:44,736 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:33:44,736 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:33:44,752 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:33:44,752 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:33:44,752 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:33:44,752 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:33:44,752 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:33:44,760 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:33:44,760 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:33:44,760 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:33:44,760 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:33:44,760 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:33:44,760 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:33:44,760 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:33:44,760 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:33:44,768 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:33:44,768 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:33:44,768 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:33:44,768 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:33:44,768 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:33:44,768 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:33:44,768 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:33:44,768 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:33:44,768 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:33:44,768 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:33:44,768 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:33:44,768 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:33:44,768 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:33:44,784 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:33:44,784 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:33:44,784 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:33:44,784 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:33:44,784 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:33:45,006 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:33:45,022 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:33:45,022 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:33:45,038 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:33:45,038 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:33:45,038 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:33:45,038 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:33:45,038 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:33:45,038 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:33:45,038 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:33:45,038 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:33:45,038 - config.component_registry - INFO - Զע: components +2025-03-14 16:33:45,086 - root - INFO - ʼʼݿ... +2025-03-14 16:33:45,118 - root - INFO - ݿɹ +2025-03-14 16:33:45,118 - root - INFO - ʼʼ... +2025-03-14 16:33:45,118 - root - INFO - Ѵڣʼ +2025-03-14 16:33:45,134 - root - INFO - ݳʼɹ +2025-03-14 16:33:45,134 - core.component - INFO - Զ: components +2025-03-14 16:33:45,134 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:33:45,134 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:33:45,150 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:33:45,161 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:33:45,161 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:33:45,166 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:33:45,166 - config.component_registry - INFO - Զע: components +2025-03-14 16:33:45,182 - root - INFO - Ӧ +2025-03-14 16:38:28,953 - root - INFO - Ӧùر +2025-03-14 16:38:30,300 - root - INFO - ʼʼݿ... +2025-03-14 16:38:30,359 - root - INFO - ݿɹ +2025-03-14 16:38:30,360 - root - INFO - ʼʼ... +2025-03-14 16:38:30,382 - root - INFO - Ѵڣʼ +2025-03-14 16:38:30,382 - root - INFO - ݳʼɹ +2025-03-14 16:38:30,382 - core.component - INFO - Զ: components +2025-03-14 16:38:30,387 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:38:30,388 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:38:30,389 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:38:30,389 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:38:30,389 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:38:30,389 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:38:30,389 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:38:30,389 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:38:30,390 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:38:30,390 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:38:30,390 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:38:30,390 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:38:30,391 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:38:30,391 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:38:30,391 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:38:30,391 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:38:30,392 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:38:30,392 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:38:30,392 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:38:30,392 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:38:30,393 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:38:30,393 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:38:30,393 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:38:30,393 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:38:30,394 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:38:30,394 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:38:30,395 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:38:30,396 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:38:30,396 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:38:30,396 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:38:30,396 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:38:30,397 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:38:30,397 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:38:30,397 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:38:30,397 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:38:30,397 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:38:30,398 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:38:30,400 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:38:30,400 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:38:30,582 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:38:30,593 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:38:30,593 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:38:30,596 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:38:30,597 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:38:30,598 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:38:30,598 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:38:30,598 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:38:30,598 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:38:30,598 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:38:30,598 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:38:30,598 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:38:30,598 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:38:30,598 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:38:30,613 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:38:30,617 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:38:30,619 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:38:30,619 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:38:30,620 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:38:30,622 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:38:30,624 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:38:30,626 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:38:30,628 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:38:30,631 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:38:30,633 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:38:30,634 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:38:30,636 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:38:30,636 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:38:30,638 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:38:30,640 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:38:30,642 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:38:30,643 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:38:30,643 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:38:30,644 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:38:30,644 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:38:30,644 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:38:30,645 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:38:30,645 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:38:30,646 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:38:30,646 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:38:30,646 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:38:30,647 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:38:30,647 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:38:30,647 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:38:30,648 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:38:30,648 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:38:30,649 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:38:30,649 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:38:30,649 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:38:30,649 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:38:30,649 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:38:30,649 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:38:30,649 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:38:30,649 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:38:30,650 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:38:30,650 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:38:30,650 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:38:30,650 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:38:30,650 - config.component_registry - INFO - Զע: components +2025-03-14 16:38:30,704 - root - INFO - ʼʼݿ... +2025-03-14 16:38:30,777 - root - INFO - ݿɹ +2025-03-14 16:38:30,777 - root - INFO - ʼʼ... +2025-03-14 16:38:30,780 - root - INFO - Ѵڣʼ +2025-03-14 16:38:30,781 - root - INFO - ݳʼɹ +2025-03-14 16:38:30,781 - core.component - INFO - Զ: components +2025-03-14 16:38:30,781 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:38:30,782 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:38:30,782 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:38:30,783 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:38:30,783 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:38:30,783 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:38:30,783 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:38:30,783 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:38:30,784 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:38:30,784 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:38:30,784 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:38:30,784 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:38:30,785 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:38:30,786 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:38:30,786 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:38:30,786 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:38:30,786 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:38:30,786 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:38:30,787 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:38:30,787 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:38:30,787 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:38:30,787 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:38:30,788 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:38:30,788 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:38:30,788 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:38:30,788 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:38:30,788 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:38:30,788 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:38:30,789 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:38:30,789 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:38:30,790 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:38:30,791 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:38:30,791 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:38:30,791 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:38:30,791 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:38:30,791 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:38:30,791 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:38:30,792 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:38:30,792 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:38:30,792 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:38:30,792 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:38:30,792 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:38:30,792 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:38:30,793 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:38:30,793 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:38:30,793 - config.component_registry - INFO - Զע: components +2025-03-14 16:38:30,803 - root - INFO - Ӧ +2025-03-14 16:43:29,724 - root - INFO - Ӧùر +2025-03-14 16:43:30,938 - root - INFO - ʼʼݿ... +2025-03-14 16:43:30,988 - root - INFO - ݿɹ +2025-03-14 16:43:30,988 - root - INFO - ʼʼ... +2025-03-14 16:43:31,016 - root - INFO - Ѵڣʼ +2025-03-14 16:43:31,020 - root - INFO - ݳʼɹ +2025-03-14 16:43:31,020 - core.component - INFO - Զ: components +2025-03-14 16:43:31,020 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:43:31,020 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:43:31,020 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:43:31,207 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:43:31,209 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:43:31,209 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:43:31,209 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:43:31,209 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:43:31,209 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:43:31,209 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:43:31,209 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:43:31,209 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:43:31,209 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:43:31,225 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:43:31,226 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:43:31,226 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:43:31,226 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:43:31,227 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:43:31,227 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:43:31,227 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:43:31,227 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:43:31,227 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:43:31,227 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:43:31,227 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:43:31,238 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:43:31,238 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:43:31,238 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:43:31,243 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:43:31,244 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:43:31,244 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:43:31,244 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:43:31,245 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:43:31,248 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:43:31,250 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:43:31,251 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:43:31,251 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:43:31,253 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:43:31,253 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:43:31,255 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:43:31,255 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:43:31,255 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:43:31,255 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:43:31,255 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:43:31,255 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:43:31,256 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:43:31,257 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:43:31,258 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:43:31,259 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:43:31,259 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:43:31,259 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:43:31,259 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:43:31,259 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:43:31,259 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:43:31,259 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:43:31,259 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:43:31,259 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:43:31,275 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:43:31,275 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:43:31,275 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:43:31,291 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:43:31,291 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:43:31,291 - config.component_registry - INFO - Զע: components +2025-03-14 16:43:31,323 - root - INFO - ʼʼݿ... +2025-03-14 16:43:31,387 - root - INFO - ݿɹ +2025-03-14 16:43:31,387 - root - INFO - ʼʼ... +2025-03-14 16:43:31,388 - root - INFO - Ѵڣʼ +2025-03-14 16:43:31,389 - root - INFO - ݳʼɹ +2025-03-14 16:43:31,389 - core.component - INFO - Զ: components +2025-03-14 16:43:31,389 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:43:31,389 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:43:31,390 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:43:31,390 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:43:31,390 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:43:31,390 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:43:31,391 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:43:31,391 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:43:31,391 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:43:31,391 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:43:31,391 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:43:31,391 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:43:31,392 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:43:31,393 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:43:31,409 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:43:31,409 - config.component_registry - INFO - Զע: components +2025-03-14 16:43:31,425 - root - INFO - Ӧ +2025-03-14 16:48:30,405 - root - INFO - Ӧùر +2025-03-14 16:48:31,591 - root - INFO - ʼʼݿ... +2025-03-14 16:48:31,641 - root - INFO - ݿɹ +2025-03-14 16:48:31,641 - root - INFO - ʼʼ... +2025-03-14 16:48:31,663 - root - INFO - Ѵڣʼ +2025-03-14 16:48:31,664 - root - INFO - ݳʼɹ +2025-03-14 16:48:31,664 - core.component - INFO - Զ: components +2025-03-14 16:48:31,665 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:48:31,665 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:48:31,665 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:48:31,665 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:48:31,665 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:48:31,665 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:48:31,665 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:48:31,668 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:48:31,668 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:48:31,668 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:48:31,668 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:48:31,668 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:48:31,668 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:48:31,668 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:48:31,668 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:48:31,668 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:48:31,668 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:48:31,671 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:48:31,671 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:48:31,671 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:48:31,671 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:48:31,671 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:48:31,671 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:48:31,671 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:48:31,671 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:48:31,673 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:48:31,673 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:48:31,674 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:48:31,675 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:48:31,675 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:48:31,676 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:48:31,676 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:48:31,676 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:48:31,676 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:48:31,676 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:48:31,676 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:48:31,864 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:48:31,865 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:48:31,866 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:48:31,866 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:48:31,866 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:48:31,867 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:48:31,867 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:48:31,867 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:48:31,868 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:48:31,868 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:48:31,868 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:48:31,868 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:48:31,868 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:48:31,869 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:48:31,869 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:48:31,869 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:48:31,869 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:48:31,870 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:48:31,870 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:48:31,870 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:48:31,871 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:48:31,871 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:48:31,872 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:48:31,872 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:48:31,872 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:48:31,872 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:48:31,873 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:48:31,873 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:48:31,873 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:48:31,873 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:48:31,874 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:48:31,874 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:48:31,874 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:48:31,874 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:48:31,874 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:48:31,874 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:48:31,874 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:48:31,875 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:48:31,875 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:48:31,875 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:48:31,875 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:48:31,875 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:48:31,875 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:48:31,875 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:48:31,875 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:48:31,876 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:48:31,876 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:48:31,876 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:48:31,876 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:48:31,876 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:48:31,876 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:48:31,877 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:48:31,877 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:48:31,877 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:48:31,877 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:48:31,877 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:48:31,877 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:48:31,877 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:48:31,877 - config.component_registry - INFO - Զע: components +2025-03-14 16:48:31,920 - root - INFO - ʼʼݿ... +2025-03-14 16:48:31,965 - root - INFO - ݿɹ +2025-03-14 16:48:31,970 - root - INFO - ʼʼ... +2025-03-14 16:48:31,976 - root - INFO - Ѵڣʼ +2025-03-14 16:48:31,977 - root - INFO - ݳʼɹ +2025-03-14 16:48:31,977 - core.component - INFO - Զ: components +2025-03-14 16:48:31,979 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:48:31,991 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:48:31,991 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:48:31,992 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:48:31,992 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:48:31,995 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:48:32,004 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:48:32,006 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:48:32,007 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:48:32,009 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:48:32,009 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:48:32,009 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:48:32,009 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:48:32,009 - config.component_registry - INFO - Զע: components +2025-03-14 16:48:32,020 - root - INFO - Ӧ +2025-03-14 16:51:55,808 - root - INFO - Ӧùر +2025-03-14 16:51:57,177 - root - INFO - ʼʼݿ... +2025-03-14 16:51:57,227 - root - INFO - ݿɹ +2025-03-14 16:51:57,228 - root - INFO - ʼʼ... +2025-03-14 16:51:57,244 - root - INFO - Ѵڣʼ +2025-03-14 16:51:57,244 - root - INFO - ݳʼɹ +2025-03-14 16:51:57,252 - core.component - INFO - Զ: components +2025-03-14 16:51:57,256 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:51:57,257 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:51:57,257 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:51:57,259 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:51:57,260 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:51:57,271 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:51:57,271 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:51:57,272 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:51:57,272 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:51:57,272 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:51:57,272 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:51:57,279 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:51:57,280 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:51:57,280 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:51:57,280 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:51:57,280 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:51:57,281 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:51:57,281 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:51:57,281 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:51:57,283 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:51:57,284 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:51:57,286 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:51:57,287 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:51:57,287 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:51:57,288 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:51:57,288 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:51:57,288 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:51:57,288 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:51:57,289 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:51:57,289 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:51:57,289 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:51:57,289 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:51:57,290 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:51:57,292 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:51:57,293 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:51:57,297 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:51:57,297 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:51:57,298 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:51:57,298 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:51:57,298 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:51:57,299 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:51:57,299 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:51:57,300 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:51:57,300 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:51:57,301 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:51:57,301 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:51:57,473 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:51:57,477 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:51:57,481 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:51:57,482 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:51:57,482 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:51:57,483 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:51:57,485 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:51:57,487 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:51:57,487 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:51:57,488 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:51:57,488 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:51:57,489 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:51:57,491 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:51:57,492 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:51:57,493 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:51:57,494 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:51:57,503 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:51:57,503 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:51:57,504 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:51:57,504 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:51:57,505 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:51:57,506 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:51:57,507 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:51:57,508 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:51:57,509 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:51:57,515 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:51:57,515 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:51:57,517 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:51:57,518 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:51:57,519 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:51:57,519 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:51:57,520 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:51:57,520 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:51:57,520 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:51:57,520 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:51:57,520 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:51:57,520 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:51:57,520 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:51:57,520 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:51:57,521 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:51:57,521 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:51:57,521 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:51:57,521 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:51:57,521 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:51:57,522 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:51:57,522 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:51:57,524 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:51:57,524 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:51:57,527 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:51:57,528 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:51:57,528 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:51:57,528 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:51:57,529 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:51:57,529 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:51:57,529 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:51:57,529 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:51:57,529 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:51:57,530 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:51:57,530 - config.component_registry - INFO - Զע: components +2025-03-14 16:51:57,591 - root - INFO - ʼʼݿ... +2025-03-14 16:51:57,636 - root - INFO - ݿɹ +2025-03-14 16:51:57,638 - root - INFO - ʼʼ... +2025-03-14 16:51:57,641 - root - INFO - Ѵڣʼ +2025-03-14 16:51:57,641 - root - INFO - ݳʼɹ +2025-03-14 16:51:57,641 - core.component - INFO - Զ: components +2025-03-14 16:51:57,642 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:51:57,643 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:51:57,643 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:51:57,644 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:51:57,644 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:51:57,644 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:51:57,644 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:51:57,644 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:51:57,644 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:51:57,645 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:51:57,645 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:51:57,645 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:51:57,645 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:51:57,645 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:51:57,645 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:51:57,646 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:51:57,646 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:51:57,647 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:51:57,647 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:51:57,647 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:51:57,648 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:51:57,648 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:51:57,648 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:51:57,649 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:51:57,651 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:51:57,652 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:51:57,654 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:51:57,655 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:51:57,656 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:51:57,657 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:51:57,657 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:51:57,659 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:51:57,660 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:51:57,661 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:51:57,662 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:51:57,663 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:51:57,663 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:51:57,664 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:51:57,666 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:51:57,666 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:51:57,666 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:51:57,671 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:51:57,671 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:51:57,672 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:51:57,673 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:51:57,674 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:51:57,675 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:51:57,675 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:51:57,676 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:51:57,676 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:51:57,677 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:51:57,677 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:51:57,678 - config.component_registry - INFO - Զע: components +2025-03-14 16:51:57,690 - root - INFO - Ӧ +2025-03-14 16:56:56,523 - root - INFO - Ӧùر +2025-03-14 16:56:57,898 - root - INFO - ʼʼݿ... +2025-03-14 16:56:57,958 - root - INFO - ݿɹ +2025-03-14 16:56:57,958 - root - INFO - ʼʼ... +2025-03-14 16:56:57,976 - root - INFO - Ѵڣʼ +2025-03-14 16:56:57,976 - root - INFO - ݳʼɹ +2025-03-14 16:56:57,976 - core.component - INFO - Զ: components +2025-03-14 16:56:57,977 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:56:57,977 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:56:57,978 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:56:57,978 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:56:57,979 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:56:57,979 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:56:57,980 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:56:57,980 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:56:57,980 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:56:57,981 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:56:57,981 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:56:57,981 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:56:57,982 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:56:57,982 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:56:57,983 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:56:57,983 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:56:57,983 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:56:57,983 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:56:57,984 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:56:57,984 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:56:57,985 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:56:57,985 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:56:57,985 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:56:57,986 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:56:57,986 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:56:57,987 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:56:57,987 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:56:57,987 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:56:57,987 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:56:57,989 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:56:57,989 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:56:57,989 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:56:57,989 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:56:57,989 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:56:57,990 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:56:57,990 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:56:57,990 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:56:57,990 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:56:57,991 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:56:57,991 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:56:57,991 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:56:57,991 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:56:57,992 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:56:57,992 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:56:57,992 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:56:57,992 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:56:58,174 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:56:58,174 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:56:58,176 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:56:58,178 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:56:58,179 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:56:58,180 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:56:58,180 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:56:58,180 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:56:58,182 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:56:58,182 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:56:58,184 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:56:58,184 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:56:58,185 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:56:58,186 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:56:58,187 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:56:58,187 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:56:58,197 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:56:58,197 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:56:58,197 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:56:58,197 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:56:58,197 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:56:58,197 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:56:58,197 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:56:58,197 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:56:58,197 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:56:58,197 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:56:58,197 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:56:58,197 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:56:58,203 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:56:58,204 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:56:58,205 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:56:58,205 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:56:58,205 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:56:58,205 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:56:58,206 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:56:58,207 - config.component_registry - INFO - Զע: components +2025-03-14 16:56:58,249 - root - INFO - ʼʼݿ... +2025-03-14 16:56:58,287 - root - INFO - ݿɹ +2025-03-14 16:56:58,291 - root - INFO - ʼʼ... +2025-03-14 16:56:58,294 - root - INFO - Ѵڣʼ +2025-03-14 16:56:58,294 - root - INFO - ݳʼɹ +2025-03-14 16:56:58,294 - core.component - INFO - Զ: components +2025-03-14 16:56:58,295 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:56:58,296 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:56:58,297 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:56:58,297 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:56:58,297 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:56:58,297 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:56:58,297 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:56:58,298 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:56:58,298 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:56:58,298 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:56:58,298 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:56:58,298 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:56:58,298 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:56:58,299 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:56:58,299 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:56:58,299 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:56:58,300 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:56:58,300 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:56:58,302 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:56:58,304 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:56:58,304 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:56:58,304 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:56:58,304 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:56:58,305 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:56:58,307 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:56:58,307 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:56:58,308 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:56:58,308 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:56:58,308 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:56:58,309 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:56:58,309 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:56:58,309 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:56:58,309 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:56:58,310 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:56:58,310 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:56:58,310 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:56:58,310 - config.component_registry - INFO - Զע: components +2025-03-14 16:56:58,320 - root - INFO - Ӧ +2025-03-14 16:57:52,206 - services.task_service - ERROR - ȡбʧ: (pymysql.err.OperationalError) (1054, "Unknown column 'tasks.task_uuid' in 'field list'") +[SQL: SELECT count(*) AS count_1 +FROM (SELECT tasks.task_uuid AS tasks_task_uuid, tasks.name AS tasks_name, tasks.task_type AS tasks_task_type, tasks.description AS tasks_description, tasks.is_template AS tasks_is_template, tasks.template_description AS tasks_template_description, tasks.current_version_id AS tasks_current_version_id, tasks.is_enabled AS tasks_is_enabled, tasks.created_by AS tasks_created_by, tasks.updated_by AS tasks_updated_by, tasks.is_scheduled AS tasks_is_scheduled, tasks.schedule_expression AS tasks_schedule_expression, tasks.next_run_time AS tasks_next_run_time, tasks.id AS tasks_id, tasks.created_at AS tasks_created_at, tasks.updated_at AS tasks_updated_at, tasks.is_deleted AS tasks_is_deleted +FROM tasks +WHERE tasks.is_deleted = false) AS anon_1] +(Background on this error at: https://sqlalche.me/e/20/e3q8) +2025-03-14 16:57:52,362 - root - INFO - Ӧùر +2025-03-14 16:57:53,577 - root - INFO - ʼʼݿ... +2025-03-14 16:57:53,638 - root - INFO - ݿɹ +2025-03-14 16:57:53,638 - root - INFO - ʼʼ... +2025-03-14 16:57:53,654 - root - INFO - Ѵڣʼ +2025-03-14 16:57:53,670 - root - INFO - ݳʼɹ +2025-03-14 16:57:53,670 - core.component - INFO - Զ: components +2025-03-14 16:57:53,670 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:57:53,670 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 16:57:53,670 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 16:57:53,670 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 16:57:53,670 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 16:57:53,670 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 16:57:53,670 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 16:57:53,677 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 16:57:53,677 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 16:57:53,677 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:57:53,677 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 16:57:53,677 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:57:53,677 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: if -> IfComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 16:57:53,686 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:57:53,686 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:57:53,893 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 16:57:53,893 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 16:57:53,893 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:57:53,893 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:57:53,909 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 16:57:53,909 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 16:57:53,909 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 16:57:53,909 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 16:57:53,909 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 16:57:53,909 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 16:57:53,909 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:57:53,909 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:57:53,909 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:57:53,909 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:57:53,925 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:57:53,925 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:57:53,925 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 16:57:53,925 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 16:57:53,925 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:57:53,925 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:57:53,925 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 16:57:53,925 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 16:57:53,941 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:57:53,941 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:57:53,957 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:57:53,957 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 16:57:53,957 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:57:53,957 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 16:57:53,957 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 16:57:53,957 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 16:57:53,957 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 16:57:53,957 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 16:57:53,957 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 16:57:53,957 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:57:53,957 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:57:53,957 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:57:53,957 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:57:53,957 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:57:53,973 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:57:53,973 - config.component_registry - INFO - Զע: components +2025-03-14 16:57:54,021 - root - INFO - ʼʼݿ... +2025-03-14 16:57:54,053 - root - INFO - ݿɹ +2025-03-14 16:57:54,053 - root - INFO - ʼʼ... +2025-03-14 16:57:54,053 - root - INFO - Ѵڣʼ +2025-03-14 16:57:54,069 - root - INFO - ݳʼɹ +2025-03-14 16:57:54,069 - core.component - INFO - Զ: components +2025-03-14 16:57:54,069 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 16:57:54,069 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 16:57:54,069 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 16:57:54,069 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 16:57:54,078 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 16:57:54,078 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 16:57:54,078 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 16:57:54,078 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 16:57:54,078 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 16:57:54,085 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 16:57:54,101 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 16:57:54,117 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 16:57:54,133 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 16:57:54,149 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 16:57:54,149 - config.component_registry - INFO - Զע: components +2025-03-14 16:57:54,166 - root - INFO - Ӧ +2025-03-14 16:57:55,311 - services.task_service - ERROR - ȡбʧ: (pymysql.err.OperationalError) (1054, "Unknown column 'tasks.task_id' in 'field list'") +[SQL: SELECT count(*) AS count_1 +FROM (SELECT tasks.task_id AS tasks_task_id, tasks.name AS tasks_name, tasks.task_type AS tasks_task_type, tasks.description AS tasks_description, tasks.is_template AS tasks_is_template, tasks.template_description AS tasks_template_description, tasks.current_version_id AS tasks_current_version_id, tasks.is_enabled AS tasks_is_enabled, tasks.created_by AS tasks_created_by, tasks.updated_by AS tasks_updated_by, tasks.is_scheduled AS tasks_is_scheduled, tasks.schedule_expression AS tasks_schedule_expression, tasks.next_run_time AS tasks_next_run_time, tasks.id AS tasks_id, tasks.created_at AS tasks_created_at, tasks.updated_at AS tasks_updated_at, tasks.is_deleted AS tasks_is_deleted +FROM tasks +WHERE tasks.is_deleted = false) AS anon_1] +(Background on this error at: https://sqlalche.me/e/20/e3q8) +2025-03-14 17:02:53,113 - root - INFO - Ӧùر +2025-03-14 17:02:54,461 - root - INFO - ʼʼݿ... +2025-03-14 17:02:54,515 - root - INFO - ݿɹ +2025-03-14 17:02:54,515 - root - INFO - ʼʼ... +2025-03-14 17:02:54,540 - root - INFO - Ѵڣʼ +2025-03-14 17:02:54,541 - root - INFO - ݳʼɹ +2025-03-14 17:02:54,541 - core.component - INFO - Զ: components +2025-03-14 17:02:54,542 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:02:54,542 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 17:02:54,542 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 17:02:54,542 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 17:02:54,543 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 17:02:54,543 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 17:02:54,543 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 17:02:54,543 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 17:02:54,544 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 17:02:54,544 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 17:02:54,544 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:02:54,544 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:02:54,544 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:02:54,544 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:02:54,545 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:02:54,545 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:02:54,545 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:02:54,545 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:02:54,545 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:02:54,545 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:02:54,547 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 17:02:54,547 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 17:02:54,547 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: if -> IfComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 17:02:54,548 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:02:54,548 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:02:54,744 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 17:02:54,744 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 17:02:54,744 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:02:54,744 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:02:54,744 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 17:02:54,744 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 17:02:54,744 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 17:02:54,756 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 17:02:54,757 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 17:02:54,757 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 17:02:54,758 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:02:54,760 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:02:54,760 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:02:54,761 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:02:54,761 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:02:54,761 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:02:54,762 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 17:02:54,762 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 17:02:54,762 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:02:54,762 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:02:54,763 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 17:02:54,763 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 17:02:54,763 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 17:02:54,764 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 17:02:54,764 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 17:02:54,764 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 17:02:54,764 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 17:02:54,765 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 17:02:54,767 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 17:02:54,768 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 17:02:54,769 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 17:02:54,770 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 17:02:54,772 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:02:54,774 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:02:54,775 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:02:54,775 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:02:54,776 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:02:54,777 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:02:54,778 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:02:54,779 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:02:54,781 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:02:54,782 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:02:54,785 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:02:54,786 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:02:54,788 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 17:02:54,788 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:02:54,789 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 17:02:54,789 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 17:02:54,790 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 17:02:54,791 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 17:02:54,791 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 17:02:54,791 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 17:02:54,794 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:02:54,795 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:02:54,795 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:02:54,798 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:02:54,799 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:02:54,800 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:02:54,800 - config.component_registry - INFO - Զע: components +2025-03-14 17:02:54,861 - root - INFO - ʼʼݿ... +2025-03-14 17:02:54,922 - root - INFO - ݿɹ +2025-03-14 17:02:54,922 - root - INFO - ʼʼ... +2025-03-14 17:02:54,924 - root - INFO - Ѵڣʼ +2025-03-14 17:02:54,924 - root - INFO - ݳʼɹ +2025-03-14 17:02:54,924 - core.component - INFO - Զ: components +2025-03-14 17:02:54,925 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:02:54,925 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:02:54,925 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:02:54,926 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:02:54,926 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:02:54,927 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:02:54,927 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:02:54,927 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:02:54,927 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:02:54,927 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:02:54,927 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:02:54,928 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:02:54,928 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:02:54,929 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:02:54,929 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:02:54,929 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:02:54,929 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:02:54,929 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:02:54,929 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:02:54,929 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:02:54,930 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:02:54,930 - config.component_registry - INFO - Զע: components +2025-03-14 17:02:54,949 - root - INFO - Ӧ +2025-03-14 17:07:53,852 - root - INFO - Ӧùر +2025-03-14 17:07:55,094 - root - INFO - ʼʼݿ... +2025-03-14 17:07:55,157 - root - INFO - ݿɹ +2025-03-14 17:07:55,157 - root - INFO - ʼʼ... +2025-03-14 17:07:55,173 - root - INFO - Ѵڣʼ +2025-03-14 17:07:55,173 - root - INFO - ݳʼɹ +2025-03-14 17:07:55,173 - core.component - INFO - Զ: components +2025-03-14 17:07:55,173 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:07:55,173 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: if -> IfComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 17:07:55,189 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:07:55,189 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:07:55,364 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:07:55,364 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 17:07:55,380 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:07:55,380 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:07:55,380 - config.component_registry - INFO - Զע: components +2025-03-14 17:07:55,439 - root - INFO - ʼʼݿ... +2025-03-14 17:07:55,500 - root - INFO - ݿɹ +2025-03-14 17:07:55,500 - root - INFO - ʼʼ... +2025-03-14 17:07:55,500 - root - INFO - Ѵڣʼ +2025-03-14 17:07:55,500 - root - INFO - ݳʼɹ +2025-03-14 17:07:55,500 - core.component - INFO - Զ: components +2025-03-14 17:07:55,500 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:07:55,500 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:07:55,500 - config.component_registry - INFO - Զע: components +2025-03-14 17:07:55,515 - root - INFO - Ӧ +2025-03-14 17:17:54,547 - root - INFO - Ӧùر +2025-03-14 17:17:55,677 - root - INFO - ʼʼݿ... +2025-03-14 17:17:55,751 - root - INFO - ݿɹ +2025-03-14 17:17:55,753 - root - INFO - ʼʼ... +2025-03-14 17:17:55,772 - root - INFO - Ѵڣʼ +2025-03-14 17:17:55,773 - root - INFO - ݳʼɹ +2025-03-14 17:17:55,773 - core.component - INFO - Զ: components +2025-03-14 17:17:55,774 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:17:55,775 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 17:17:55,775 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 17:17:55,776 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 17:17:55,776 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 17:17:55,776 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 17:17:55,777 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 17:17:55,777 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 17:17:55,777 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 17:17:55,777 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 17:17:55,777 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:17:55,778 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:17:55,778 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:17:55,779 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:17:55,779 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:17:55,779 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:17:55,779 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:17:55,780 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:17:55,780 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:17:55,780 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:17:55,781 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 17:17:55,781 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 17:17:55,781 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:17:55,781 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:17:55,782 - core.component - INFO - ע: if -> IfComponent +2025-03-14 17:17:55,782 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 17:17:55,782 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 17:17:55,782 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 17:17:55,782 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 17:17:55,783 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 17:17:55,783 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 17:17:55,783 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 17:17:55,783 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 17:17:55,783 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 17:17:55,783 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 17:17:55,784 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:17:55,786 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:17:55,787 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:17:55,787 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:17:55,960 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 17:17:55,961 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 17:17:55,962 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:17:55,962 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:17:55,963 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 17:17:55,964 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 17:17:55,964 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 17:17:55,964 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 17:17:55,964 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 17:17:55,965 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 17:17:55,965 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:17:55,965 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:17:55,965 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:17:55,965 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:17:55,967 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:17:55,967 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:17:55,968 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 17:17:55,968 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 17:17:55,969 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:17:55,969 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:17:55,970 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 17:17:55,970 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 17:17:55,971 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 17:17:55,972 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 17:17:55,972 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 17:17:55,973 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 17:17:55,973 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 17:17:55,974 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 17:17:55,976 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 17:17:55,976 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 17:17:55,976 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 17:17:55,977 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 17:17:55,978 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:17:55,978 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:17:55,978 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:17:55,979 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:17:55,979 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:17:55,979 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:17:55,979 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:17:55,979 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:17:55,981 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:17:55,981 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:17:55,981 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:17:55,981 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:17:55,982 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 17:17:55,982 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:17:55,983 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 17:17:55,983 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 17:17:55,983 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 17:17:55,984 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 17:17:55,984 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 17:17:55,984 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 17:17:55,984 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:17:55,985 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:17:55,985 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:17:55,985 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:17:55,985 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:17:55,986 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:17:55,986 - config.component_registry - INFO - Զע: components +2025-03-14 17:17:56,053 - root - INFO - ʼʼݿ... +2025-03-14 17:17:56,123 - root - INFO - ݿɹ +2025-03-14 17:17:56,124 - root - INFO - ʼʼ... +2025-03-14 17:17:56,126 - root - INFO - Ѵڣʼ +2025-03-14 17:17:56,126 - root - INFO - ݳʼɹ +2025-03-14 17:17:56,126 - core.component - INFO - Զ: components +2025-03-14 17:17:56,127 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:17:56,128 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:17:56,128 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:17:56,128 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:17:56,129 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:17:56,129 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:17:56,129 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:17:56,129 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:17:56,130 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:17:56,130 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:17:56,130 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:17:56,130 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:17:56,131 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:17:56,131 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:17:56,131 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:17:56,132 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:17:56,132 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:17:56,132 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:17:56,132 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:17:56,132 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:17:56,132 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:17:56,132 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:17:56,133 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:17:56,133 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:17:56,133 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:17:56,133 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:17:56,133 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:17:56,133 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:17:56,134 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:17:56,134 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:17:56,134 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:17:56,134 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:17:56,134 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:17:56,134 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:17:56,134 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:17:56,135 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:17:56,135 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:17:56,135 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:17:56,135 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:17:56,135 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:17:56,136 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:17:56,136 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:17:56,137 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:17:56,137 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:17:56,137 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:17:56,137 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:17:56,137 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:17:56,137 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:17:56,138 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:17:56,138 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:17:56,138 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:17:56,138 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:17:56,138 - config.component_registry - INFO - Զע: components +2025-03-14 17:17:56,148 - root - INFO - Ӧ +2025-03-14 17:22:55,277 - root - INFO - Ӧùر +2025-03-14 17:22:56,528 - root - INFO - ʼʼݿ... +2025-03-14 17:22:56,580 - root - INFO - ݿɹ +2025-03-14 17:22:56,581 - root - INFO - ʼʼ... +2025-03-14 17:22:56,600 - root - INFO - Ѵڣʼ +2025-03-14 17:22:56,600 - root - INFO - ݳʼɹ +2025-03-14 17:22:56,601 - core.component - INFO - Զ: components +2025-03-14 17:22:56,602 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:22:56,602 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 17:22:56,603 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 17:22:56,603 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 17:22:56,603 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 17:22:56,603 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 17:22:56,604 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 17:22:56,604 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 17:22:56,604 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 17:22:56,604 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 17:22:56,604 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:22:56,604 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:22:56,604 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:22:56,604 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:22:56,605 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:22:56,605 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:22:56,605 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:22:56,605 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:22:56,606 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:22:56,606 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:22:56,606 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 17:22:56,607 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 17:22:56,607 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:22:56,607 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:22:56,609 - core.component - INFO - ע: if -> IfComponent +2025-03-14 17:22:56,609 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 17:22:56,609 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 17:22:56,610 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 17:22:56,610 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:22:56,611 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:22:56,611 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:22:56,611 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:22:56,611 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:22:56,611 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:22:56,611 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:22:56,612 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:22:56,612 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:22:56,612 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:22:56,612 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:22:56,831 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 17:22:56,832 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 17:22:56,833 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:22:56,834 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:22:56,834 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 17:22:56,835 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 17:22:56,836 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 17:22:56,836 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 17:22:56,837 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 17:22:56,839 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 17:22:56,839 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:22:56,839 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:22:56,840 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:22:56,840 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:22:56,842 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:22:56,842 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:22:56,843 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 17:22:56,844 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 17:22:56,844 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:22:56,845 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:22:56,845 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 17:22:56,846 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 17:22:56,848 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 17:22:56,848 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 17:22:56,848 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 17:22:56,849 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 17:22:56,850 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 17:22:56,851 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 17:22:56,852 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 17:22:56,852 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 17:22:56,852 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 17:22:56,852 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 17:22:56,853 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:22:56,853 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:22:56,853 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:22:56,854 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:22:56,855 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:22:56,855 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:22:56,856 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:22:56,857 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:22:56,857 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:22:56,859 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:22:56,859 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:22:56,859 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:22:56,860 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 17:22:56,860 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:22:56,861 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 17:22:56,863 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 17:22:56,864 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 17:22:56,864 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 17:22:56,864 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 17:22:56,865 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 17:22:56,869 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:22:56,870 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:22:56,870 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:22:56,870 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:22:56,871 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:22:56,872 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:22:56,872 - config.component_registry - INFO - Զע: components +2025-03-14 17:22:56,942 - root - INFO - ʼʼݿ... +2025-03-14 17:22:57,003 - root - INFO - ݿɹ +2025-03-14 17:22:57,003 - root - INFO - ʼʼ... +2025-03-14 17:22:57,004 - root - INFO - Ѵڣʼ +2025-03-14 17:22:57,005 - root - INFO - ݳʼɹ +2025-03-14 17:22:57,005 - core.component - INFO - Զ: components +2025-03-14 17:22:57,005 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 17:22:57,006 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 17:22:57,006 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 17:22:57,006 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 17:22:57,006 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 17:22:57,006 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 17:22:57,007 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 17:22:57,007 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 17:22:57,007 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 17:22:57,007 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 17:22:57,007 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 17:22:57,007 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 17:22:57,008 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 17:22:57,009 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 17:22:57,009 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 17:22:57,010 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 17:22:57,012 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 17:22:57,012 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 17:22:57,012 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 17:22:57,012 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 17:22:57,012 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 17:22:57,014 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 17:22:57,014 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 17:22:57,014 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 17:22:57,015 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 17:22:57,015 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 17:22:57,017 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 17:22:57,017 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 17:22:57,017 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 17:22:57,017 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 17:22:57,018 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 17:22:57,018 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 17:22:57,020 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 17:22:57,020 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 17:22:57,020 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 17:22:57,021 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 17:22:57,023 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 17:22:57,023 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 17:22:57,023 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 17:22:57,023 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 17:22:57,023 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 17:22:57,023 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 17:22:57,024 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 17:22:57,024 - config.component_registry - INFO - Զע: components +2025-03-14 17:22:57,034 - root - INFO - Ӧ +2025-03-14 17:34:50,822 - root - INFO - Ӧùر +2025-03-14 18:19:52,416 - root - INFO - ʼʼݿ... +2025-03-14 18:19:52,496 - root - INFO - ݿɹ +2025-03-14 18:19:52,496 - root - INFO - ʼʼ... +2025-03-14 18:19:52,514 - root - INFO - Ѵڣʼ +2025-03-14 18:19:52,514 - root - INFO - ݳʼɹ +2025-03-14 18:19:52,514 - core.component - INFO - Զ: components +2025-03-14 18:19:52,514 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 18:19:52,514 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 18:19:52,514 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:19:52,514 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:19:52,514 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:19:52,514 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:19:52,514 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:19:52,514 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: if -> IfComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 18:19:52,527 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:19:52,527 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:19:52,708 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 18:19:52,718 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 18:19:52,718 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:19:52,718 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:19:52,719 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 18:19:52,720 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 18:19:52,721 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 18:19:52,721 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 18:19:52,721 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 18:19:52,722 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 18:19:52,722 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:19:52,722 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:19:52,723 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:19:52,723 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:19:52,723 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:19:52,723 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:19:52,723 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 18:19:52,723 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 18:19:52,723 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 18:19:52,734 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 18:19:52,734 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 18:19:52,748 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 18:19:52,748 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 18:19:52,748 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 18:19:52,748 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:19:52,748 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:19:52,749 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:19:52,749 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:19:52,749 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:19:52,749 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:19:52,749 - config.component_registry - INFO - Զע: components +2025-03-14 18:19:52,781 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 18:19:53,355 - root - INFO - ʼʼݿ... +2025-03-14 18:19:53,401 - root - INFO - ݿɹ +2025-03-14 18:19:53,401 - root - INFO - ʼʼ... +2025-03-14 18:19:53,417 - root - INFO - Ѵڣʼ +2025-03-14 18:19:53,417 - root - INFO - ݳʼɹ +2025-03-14 18:19:53,417 - core.component - INFO - Զ: components +2025-03-14 18:19:53,417 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 18:19:53,417 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 18:19:53,417 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:19:53,417 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:19:53,417 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:19:53,417 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:19:53,417 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:19:53,417 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: if -> IfComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 18:19:53,433 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:19:53,433 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:19:53,613 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 18:19:53,613 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 18:19:53,622 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:19:53,622 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:19:53,622 - config.component_registry - INFO - Զע: components +2025-03-14 18:19:53,678 - root - INFO - ʼʼݿ... +2025-03-14 18:19:53,735 - root - INFO - ݿɹ +2025-03-14 18:19:53,735 - root - INFO - ʼʼ... +2025-03-14 18:19:53,748 - root - INFO - Ѵڣʼ +2025-03-14 18:19:53,748 - root - INFO - ݳʼɹ +2025-03-14 18:19:53,748 - core.component - INFO - Զ: components +2025-03-14 18:19:53,748 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:19:53,748 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:19:53,764 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:19:53,764 - config.component_registry - INFO - Զע: components +2025-03-14 18:19:53,778 - root - INFO - Ӧ +2025-03-14 18:21:41,580 - root - INFO - Ӧùر +2025-03-14 18:21:42,760 - root - INFO - ʼʼݿ... +2025-03-14 18:21:42,831 - root - INFO - ݿɹ +2025-03-14 18:21:42,831 - root - INFO - ʼʼ... +2025-03-14 18:21:42,846 - root - INFO - Ѵڣʼ +2025-03-14 18:21:42,846 - root - INFO - ݳʼɹ +2025-03-14 18:21:42,846 - core.component - INFO - Զ: components +2025-03-14 18:21:42,846 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 18:21:42,846 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 18:21:42,846 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:21:42,862 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:21:42,862 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 18:21:42,862 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 18:21:42,878 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:21:42,878 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: if -> IfComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 18:21:42,878 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 18:21:42,894 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 18:21:42,894 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 18:21:42,894 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:21:42,894 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:21:43,080 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 18:21:43,080 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 18:21:43,080 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:21:43,083 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:21:43,083 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 18:21:43,099 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 18:21:43,099 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 18:21:43,104 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 18:21:43,106 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 18:21:43,106 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 18:21:43,108 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 18:21:43,108 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 18:21:43,108 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 18:21:43,108 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 18:21:43,108 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 18:21:43,108 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 18:21:43,108 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:21:43,115 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 18:21:43,115 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:21:43,115 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 18:21:43,115 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 18:21:43,131 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 18:21:43,131 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 18:21:43,131 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 18:21:43,135 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 18:21:43,136 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:21:43,136 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:21:43,139 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:21:43,139 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:21:43,139 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:21:43,139 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:21:43,139 - config.component_registry - INFO - Զע: components +2025-03-14 18:21:43,186 - root - INFO - ʼʼݿ... +2025-03-14 18:21:43,226 - root - INFO - ݿɹ +2025-03-14 18:21:43,242 - root - INFO - ʼʼ... +2025-03-14 18:21:43,242 - root - INFO - Ѵڣʼ +2025-03-14 18:21:43,242 - root - INFO - ݳʼɹ +2025-03-14 18:21:43,242 - core.component - INFO - Զ: components +2025-03-14 18:21:43,242 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:21:43,242 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:21:43,242 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:21:43,242 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:21:43,257 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:21:43,273 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:21:43,289 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:21:43,305 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:21:43,305 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:21:43,305 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:21:43,305 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:21:43,305 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:21:43,305 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:21:43,305 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:21:43,305 - config.component_registry - INFO - Զע: components +2025-03-14 18:21:43,321 - root - INFO - Ӧ +2025-03-14 18:21:54,317 - services.task_service - ERROR - ɾʧ: type object 'Task' has no attribute 'task_uuid' +2025-03-14 18:22:37,635 - root - INFO - Ӧùر +2025-03-14 18:22:41,127 - root - INFO - ʼʼݿ... +2025-03-14 18:22:41,185 - root - INFO - ݿɹ +2025-03-14 18:22:41,185 - root - INFO - ʼʼ... +2025-03-14 18:22:41,195 - root - INFO - Ѵڣʼ +2025-03-14 18:22:41,195 - root - INFO - ݳʼɹ +2025-03-14 18:22:41,195 - core.component - INFO - Զ: components +2025-03-14 18:22:41,195 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:22:41,195 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 18:22:41,195 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 18:22:41,195 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 18:22:41,205 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 18:22:41,205 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 18:22:41,205 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 18:22:41,205 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 18:22:41,205 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 18:22:41,205 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 18:22:41,205 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:22:41,209 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:22:41,211 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:22:41,211 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:22:41,211 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:22:41,211 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:22:41,211 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:22:41,216 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:22:41,217 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:22:41,217 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 18:22:41,217 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:22:41,217 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: if -> IfComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 18:22:41,217 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 18:22:41,217 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:22:41,217 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:22:41,217 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:22:41,226 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:22:41,391 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 18:22:41,391 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 18:22:41,391 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:22:41,391 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:22:41,391 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 18:22:41,391 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 18:22:41,391 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:22:41,407 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 18:22:41,407 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 18:22:41,423 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 18:22:41,423 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 18:22:41,423 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 18:22:41,423 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 18:22:41,423 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 18:22:41,428 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 18:22:41,428 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:22:41,428 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:22:41,439 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:22:41,441 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:22:41,441 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 18:22:41,441 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 18:22:41,441 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 18:22:41,441 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 18:22:41,441 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 18:22:41,441 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:22:41,441 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:22:41,441 - config.component_registry - INFO - Զע: components +2025-03-14 18:22:41,485 - root - INFO - ģ񣬵ģʽ: True +2025-03-14 18:22:42,029 - root - INFO - ʼʼݿ... +2025-03-14 18:22:42,077 - root - INFO - ݿɹ +2025-03-14 18:22:42,077 - root - INFO - ʼʼ... +2025-03-14 18:22:42,095 - root - INFO - Ѵڣʼ +2025-03-14 18:22:42,095 - root - INFO - ݳʼɹ +2025-03-14 18:22:42,095 - core.component - INFO - Զ: components +2025-03-14 18:22:42,095 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:22:42,095 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:22:42,095 - core.component - INFO - ע: if -> IfComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 18:22:42,109 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:22:42,109 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:22:42,284 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 18:22:42,284 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 18:22:42,284 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:22:42,284 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:22:42,284 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 18:22:42,295 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 18:22:42,295 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 18:22:42,295 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:22:42,300 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 18:22:42,300 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 18:22:42,316 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:22:42,316 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:22:42,316 - config.component_registry - INFO - Զע: components +2025-03-14 18:22:42,364 - root - INFO - ʼʼݿ... +2025-03-14 18:22:42,415 - root - INFO - ݿɹ +2025-03-14 18:22:42,415 - root - INFO - ʼʼ... +2025-03-14 18:22:42,415 - root - INFO - Ѵڣʼ +2025-03-14 18:22:42,422 - root - INFO - ݳʼɹ +2025-03-14 18:22:42,422 - core.component - INFO - Զ: components +2025-03-14 18:22:42,422 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:22:42,422 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:22:42,422 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:22:42,422 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:22:42,423 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:22:42,431 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:22:42,431 - config.component_registry - INFO - Զע: components +2025-03-14 18:22:42,441 - root - INFO - Ӧ +2025-03-14 18:22:46,207 - services.task_service - ERROR - ɾʧ: type object 'Task' has no attribute 'task_uuid' +2025-03-14 18:23:15,985 - services.task_service - ERROR - ɾʧ: type object 'Task' has no attribute 'task_uuid' +2025-03-14 18:24:43,126 - root - INFO - Ӧùر +2025-03-14 18:24:44,326 - root - INFO - ʼʼݿ... +2025-03-14 18:24:44,384 - root - INFO - ݿɹ +2025-03-14 18:24:44,384 - root - INFO - ʼʼ... +2025-03-14 18:24:44,400 - root - INFO - Ѵڣʼ +2025-03-14 18:24:44,400 - root - INFO - ݳʼɹ +2025-03-14 18:24:44,400 - core.component - INFO - Զ: components +2025-03-14 18:24:44,406 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:24:44,406 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: if -> IfComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 18:24:44,406 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 18:24:44,413 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 18:24:44,413 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 18:24:44,413 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 18:24:44,413 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 18:24:44,413 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:24:44,413 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:24:44,572 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 18:24:44,572 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 18:24:44,572 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:24:44,588 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:24:44,588 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 18:24:44,588 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 18:24:44,588 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 18:24:44,588 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 18:24:44,588 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 18:24:44,588 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 18:24:44,588 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:24:44,604 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:24:44,604 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:24:44,607 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:24:44,607 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:24:44,611 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:24:44,611 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 18:24:44,611 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 18:24:44,611 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:24:44,611 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:24:44,621 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 18:24:44,622 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 18:24:44,622 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 18:24:44,622 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 18:24:44,625 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 18:24:44,625 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 18:24:44,625 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 18:24:44,625 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 18:24:44,625 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 18:24:44,625 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 18:24:44,625 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 18:24:44,634 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 18:24:44,634 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:24:44,634 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:24:44,636 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:24:44,639 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:24:44,640 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:24:44,640 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 18:24:44,640 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 18:24:44,640 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 18:24:44,640 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 18:24:44,640 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 18:24:44,640 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:24:44,640 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:24:44,650 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:24:44,650 - config.component_registry - INFO - Զע: components +2025-03-14 18:24:44,691 - root - INFO - ʼʼݿ... +2025-03-14 18:24:44,751 - root - INFO - ݿɹ +2025-03-14 18:24:44,751 - root - INFO - ʼʼ... +2025-03-14 18:24:44,751 - root - INFO - Ѵڣʼ +2025-03-14 18:24:44,763 - root - INFO - ݳʼɹ +2025-03-14 18:24:44,763 - core.component - INFO - Զ: components +2025-03-14 18:24:44,763 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:24:44,763 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:24:44,763 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:24:44,763 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:24:44,763 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:24:44,763 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:24:44,763 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:24:44,767 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:24:44,769 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:24:44,771 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:24:44,771 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:24:44,771 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:24:44,771 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:24:44,771 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:24:44,771 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:24:44,771 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:24:44,774 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:24:44,774 - config.component_registry - INFO - Զע: components +2025-03-14 18:24:44,786 - root - INFO - Ӧ +2025-03-14 18:24:49,726 - services.task_service - INFO - ɾ: 1111111122222 +2025-03-14 18:24:51,658 - services.task_service - ERROR - ɾʧ: Ҳ 1111111122222 +2025-03-14 18:27:40,773 - root - INFO - Ӧùر +2025-03-14 18:27:42,100 - root - INFO - ʼʼݿ... +2025-03-14 18:27:42,147 - root - INFO - ݿɹ +2025-03-14 18:27:42,147 - root - INFO - ʼʼ... +2025-03-14 18:27:42,163 - root - INFO - Ѵڣʼ +2025-03-14 18:27:42,163 - root - INFO - ݳʼɹ +2025-03-14 18:27:42,163 - core.component - INFO - Զ: components +2025-03-14 18:27:42,163 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-14 18:27:42,163 - core.component - INFO - ע: print -> PrintComponent +2025-03-14 18:27:42,163 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:27:42,163 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:27:42,163 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:27:42,163 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:27:42,163 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: if -> IfComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: while -> WhileComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: break -> BreakComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: return -> ReturnComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: delay -> DelayComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-14 18:27:42,179 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:27:42,179 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:27:42,195 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:27:42,195 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:27:42,195 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:27:42,195 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:27:42,195 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:27:42,368 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-14 18:27:42,368 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-14 18:27:42,368 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:27:42,368 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:27:42,368 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-14 18:27:42,368 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-14 18:27:42,380 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-14 18:27:42,380 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-14 18:27:42,380 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-14 18:27:42,380 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-14 18:27:42,380 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:27:42,383 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:27:42,383 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:27:42,383 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:27:42,383 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:27:42,383 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:27:42,384 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-14 18:27:42,384 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-14 18:27:42,384 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:27:42,384 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:27:42,385 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-14 18:27:42,385 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-14 18:27:42,385 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-14 18:27:42,385 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-14 18:27:42,386 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-14 18:27:42,386 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-14 18:27:42,396 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-14 18:27:42,396 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:27:42,396 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:27:42,396 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:27:42,396 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:27:42,396 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:27:42,396 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:27:42,412 - config.component_registry - INFO - Զע: components +2025-03-14 18:27:42,468 - root - INFO - ʼʼݿ... +2025-03-14 18:27:42,508 - root - INFO - ݿɹ +2025-03-14 18:27:42,523 - root - INFO - ʼʼ... +2025-03-14 18:27:42,525 - root - INFO - Ѵڣʼ +2025-03-14 18:27:42,525 - root - INFO - ݳʼɹ +2025-03-14 18:27:42,525 - core.component - INFO - Զ: components +2025-03-14 18:27:42,525 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: print -> PrintComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-14 18:27:42,527 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: break -> BreakComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: if -> IfComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: while -> WhileComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-14 18:27:42,529 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-14 18:27:42,531 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-14 18:27:42,533 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-14 18:27:42,533 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-14 18:27:42,533 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-14 18:27:42,533 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-14 18:27:42,533 - config.component_registry - INFO - Զע: components +2025-03-14 18:27:42,539 - root - INFO - Ӧ +2025-03-14 18:29:20,525 - root - INFO - Ӧùر +2025-03-17 10:46:11,706 - root - INFO - ʼʼݿ... +2025-03-17 10:46:11,738 - root - INFO - ݿɹ +2025-03-17 10:46:11,753 - root - INFO - ʼʼ... +2025-03-17 10:46:11,769 - root - INFO - Ѵڣʼ +2025-03-17 10:46:11,769 - root - INFO - ݳʼɹ +2025-03-17 10:46:11,769 - core.component - INFO - Զ: components +2025-03-17 10:46:11,769 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: if -> IfComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 10:46:11,769 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:46:11,769 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:46:12,013 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 10:46:12,013 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 10:46:12,013 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:46:12,013 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:46:12,016 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 10:46:12,016 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 10:46:12,016 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 10:46:12,016 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 10:46:12,016 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 10:46:12,016 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 10:46:12,016 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:46:12,016 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:46:12,016 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:46:12,016 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:46:12,016 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:46:12,017 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:46:12,017 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 10:46:12,017 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 10:46:12,017 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:46:12,017 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:46:12,018 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 10:46:12,018 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 10:46:12,019 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 10:46:12,020 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:46:12,020 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:46:12,021 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:46:12,021 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:46:12,021 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:46:12,021 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 10:46:12,021 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:46:12,022 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 10:46:12,022 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 10:46:12,022 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 10:46:12,022 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 10:46:12,022 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 10:46:12,022 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 10:46:12,022 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:46:12,022 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:46:12,023 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:46:12,023 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:46:12,023 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:46:12,023 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:46:12,023 - config.component_registry - INFO - Զע: components +2025-03-17 10:46:12,080 - root - INFO - ģ񣬵ģʽ: True +2025-03-17 10:46:12,679 - root - INFO - ʼʼݿ... +2025-03-17 10:46:12,729 - root - INFO - ݿɹ +2025-03-17 10:46:12,730 - root - INFO - ʼʼ... +2025-03-17 10:46:12,745 - root - INFO - Ѵڣʼ +2025-03-17 10:46:12,745 - root - INFO - ݳʼɹ +2025-03-17 10:46:12,745 - core.component - INFO - Զ: components +2025-03-17 10:46:12,745 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:46:12,745 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 10:46:12,745 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: if -> IfComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 10:46:12,761 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:46:12,761 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 10:46:12,945 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:46:12,945 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 10:46:12,945 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 10:46:12,945 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 10:46:12,951 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:46:12,951 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:46:12,951 - config.component_registry - INFO - Զע: components +2025-03-17 10:46:13,047 - root - INFO - ʼʼݿ... +2025-03-17 10:46:13,079 - root - INFO - ݿɹ +2025-03-17 10:46:13,079 - root - INFO - ʼʼ... +2025-03-17 10:46:13,079 - root - INFO - Ѵڣʼ +2025-03-17 10:46:13,079 - root - INFO - ݳʼɹ +2025-03-17 10:46:13,079 - core.component - INFO - Զ: components +2025-03-17 10:46:13,079 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:46:13,079 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:46:13,079 - config.component_registry - INFO - Զע: components +2025-03-17 10:46:13,095 - root - INFO - Ӧ +2025-03-17 10:56:11,187 - root - INFO - Ӧùر +2025-03-17 10:56:12,331 - root - INFO - ʼʼݿ... +2025-03-17 10:56:12,390 - root - INFO - ݿɹ +2025-03-17 10:56:12,390 - root - INFO - ʼʼ... +2025-03-17 10:56:12,414 - root - INFO - Ѵڣʼ +2025-03-17 10:56:12,414 - root - INFO - ݳʼɹ +2025-03-17 10:56:12,414 - core.component - INFO - Զ: components +2025-03-17 10:56:12,414 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:56:12,414 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 10:56:12,414 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 10:56:12,414 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 10:56:12,414 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 10:56:12,414 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 10:56:12,414 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 10:56:12,420 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 10:56:12,422 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 10:56:12,422 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:56:12,423 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: if -> IfComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 10:56:12,423 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 10:56:12,436 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 10:56:12,436 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:56:12,436 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:56:12,436 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:56:12,436 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:56:12,437 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:56:12,437 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:56:12,437 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:56:12,437 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:56:12,438 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:56:12,438 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:56:12,438 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:56:12,656 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 10:56:12,656 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 10:56:12,656 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:56:12,656 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:56:12,656 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 10:56:12,671 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 10:56:12,672 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 10:56:12,672 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 10:56:12,672 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 10:56:12,672 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 10:56:12,674 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:56:12,675 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:56:12,675 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:56:12,675 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:56:12,675 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:56:12,675 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 10:56:12,675 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:56:12,675 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 10:56:12,675 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 10:56:12,686 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 10:56:12,687 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:56:12,689 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:56:12,690 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:56:12,690 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 10:56:12,690 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 10:56:12,690 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 10:56:12,690 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 10:56:12,690 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 10:56:12,690 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:56:12,690 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:56:12,690 - config.component_registry - INFO - Զע: components +2025-03-17 10:56:12,739 - root - INFO - ʼʼݿ... +2025-03-17 10:56:12,782 - root - INFO - ݿɹ +2025-03-17 10:56:12,782 - root - INFO - ʼʼ... +2025-03-17 10:56:12,782 - root - INFO - Ѵڣʼ +2025-03-17 10:56:12,782 - root - INFO - ݳʼɹ +2025-03-17 10:56:12,782 - core.component - INFO - Զ: components +2025-03-17 10:56:12,782 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:56:12,787 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:56:12,787 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:56:12,787 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:56:12,787 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:56:12,788 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:56:12,788 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:56:12,788 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:56:12,789 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:56:12,789 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:56:12,790 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:56:12,796 - config.component_registry - INFO - Զע: components +2025-03-17 10:56:12,806 - root - INFO - Ӧ +2025-03-17 10:56:40,193 - root - INFO - Ӧùر +2025-03-17 10:56:41,312 - root - INFO - ʼʼݿ... +2025-03-17 10:56:41,373 - root - INFO - ݿɹ +2025-03-17 10:56:41,384 - root - INFO - ʼʼ... +2025-03-17 10:56:41,394 - root - INFO - Ѵڣʼ +2025-03-17 10:56:41,404 - root - INFO - ݳʼɹ +2025-03-17 10:56:41,404 - core.component - INFO - Զ: components +2025-03-17 10:56:41,404 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:56:41,407 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 10:56:41,407 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 10:56:41,407 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 10:56:41,407 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 10:56:41,414 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 10:56:41,414 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 10:56:41,414 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 10:56:41,414 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 10:56:41,414 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 10:56:41,414 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:56:41,414 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:56:41,414 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:56:41,414 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:56:41,414 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:56:41,424 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:56:41,424 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:56:41,424 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:56:41,424 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:56:41,424 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:56:41,424 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 10:56:41,424 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 10:56:41,434 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:56:41,434 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: if -> IfComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 10:56:41,434 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 10:56:41,445 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 10:56:41,445 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:56:41,445 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:56:41,448 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:56:41,631 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 10:56:41,631 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 10:56:41,632 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:56:41,632 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:56:41,632 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 10:56:41,634 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 10:56:41,634 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 10:56:41,635 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 10:56:41,635 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 10:56:41,635 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 10:56:41,636 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:56:41,636 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:56:41,636 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:56:41,636 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:56:41,636 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:56:41,637 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:56:41,637 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 10:56:41,637 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 10:56:41,638 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:56:41,638 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:56:41,638 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 10:56:41,639 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:56:41,640 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:56:41,641 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:56:41,641 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:56:41,641 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:56:41,641 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:56:41,642 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 10:56:41,642 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:56:41,643 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 10:56:41,643 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 10:56:41,643 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 10:56:41,643 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 10:56:41,643 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 10:56:41,643 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 10:56:41,643 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:56:41,643 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:56:41,643 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:56:41,643 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:56:41,643 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:56:41,643 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:56:41,643 - config.component_registry - INFO - Զע: components +2025-03-17 10:56:41,713 - root - INFO - ʼʼݿ... +2025-03-17 10:56:41,762 - root - INFO - ݿɹ +2025-03-17 10:56:41,762 - root - INFO - ʼʼ... +2025-03-17 10:56:41,762 - root - INFO - Ѵڣʼ +2025-03-17 10:56:41,762 - root - INFO - ݳʼɹ +2025-03-17 10:56:41,762 - core.component - INFO - Զ: components +2025-03-17 10:56:41,772 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:56:41,772 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:56:41,782 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:56:41,782 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:56:41,782 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:56:41,782 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:56:41,782 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:56:41,793 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:56:41,803 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:56:41,814 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:56:41,814 - config.component_registry - INFO - Զע: components +2025-03-17 10:56:41,824 - root - INFO - Ӧ +2025-03-17 10:58:23,997 - root - INFO - Ӧùر +2025-03-17 10:58:25,196 - root - INFO - ʼʼݿ... +2025-03-17 10:58:25,251 - root - INFO - ݿɹ +2025-03-17 10:58:25,251 - root - INFO - ʼʼ... +2025-03-17 10:58:25,264 - root - INFO - Ѵڣʼ +2025-03-17 10:58:25,264 - root - INFO - ݳʼɹ +2025-03-17 10:58:25,264 - core.component - INFO - Զ: components +2025-03-17 10:58:25,264 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 10:58:25,264 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:58:25,282 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: if -> IfComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 10:58:25,282 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 10:58:25,296 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 10:58:25,296 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 10:58:25,296 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 10:58:25,296 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 10:58:25,296 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 10:58:25,296 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:58:25,296 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:58:25,474 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 10:58:25,474 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 10:58:25,474 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:58:25,474 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:58:25,474 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 10:58:25,474 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 10:58:25,474 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 10:58:25,486 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 10:58:25,486 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 10:58:25,486 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 10:58:25,486 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:58:25,486 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:58:25,489 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:58:25,489 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 10:58:25,501 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:58:25,501 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 10:58:25,501 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 10:58:25,501 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 10:58:25,501 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 10:58:25,501 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 10:58:25,501 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 10:58:25,501 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:58:25,501 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:58:25,501 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:58:25,501 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:58:25,501 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:58:25,501 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:58:25,501 - config.component_registry - INFO - Զע: components +2025-03-17 10:58:25,575 - root - INFO - ʼʼݿ... +2025-03-17 10:58:25,613 - root - INFO - ݿɹ +2025-03-17 10:58:25,629 - root - INFO - ʼʼ... +2025-03-17 10:58:25,629 - root - INFO - Ѵڣʼ +2025-03-17 10:58:25,629 - root - INFO - ݳʼɹ +2025-03-17 10:58:25,629 - core.component - INFO - Զ: components +2025-03-17 10:58:25,629 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 10:58:25,629 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 10:58:25,629 - config.component_registry - INFO - Զע: components +2025-03-17 10:58:25,645 - root - INFO - Ӧ +2025-03-17 11:02:20,441 - root - INFO - Ӧùر +2025-03-17 11:02:21,518 - root - INFO - ʼʼݿ... +2025-03-17 11:02:21,582 - root - INFO - ݿɹ +2025-03-17 11:02:21,582 - root - INFO - ʼʼ... +2025-03-17 11:02:21,602 - root - INFO - Ѵڣʼ +2025-03-17 11:02:21,602 - root - INFO - ݳʼɹ +2025-03-17 11:02:21,602 - core.component - INFO - Զ: components +2025-03-17 11:02:21,602 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:02:21,602 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:02:21,602 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:02:21,614 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:02:21,614 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:02:21,614 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:02:21,614 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:02:21,614 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:02:21,614 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:02:21,614 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:02:21,614 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:02:21,629 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:02:21,629 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:02:21,629 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:02:21,629 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:02:21,629 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:02:21,629 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:02:21,629 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:02:21,629 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:02:21,629 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:02:21,645 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:02:21,645 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:02:21,645 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:02:21,645 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:02:21,645 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:02:21,645 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:02:21,645 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:02:21,645 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:02:21,827 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:02:21,827 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:02:21,827 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:02:21,827 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:02:21,827 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:02:21,827 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:02:21,836 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:02:21,836 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:02:21,836 - config.component_registry - INFO - Զע: components +2025-03-17 11:02:21,915 - root - INFO - ʼʼݿ... +2025-03-17 11:02:21,955 - root - INFO - ݿɹ +2025-03-17 11:02:21,955 - root - INFO - ʼʼ... +2025-03-17 11:02:21,971 - root - INFO - Ѵڣʼ +2025-03-17 11:02:21,971 - root - INFO - ݳʼɹ +2025-03-17 11:02:21,971 - core.component - INFO - Զ: components +2025-03-17 11:02:21,971 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:02:21,971 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:02:21,987 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:02:22,003 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:02:22,003 - config.component_registry - INFO - Զע: components +2025-03-17 11:02:22,018 - root - INFO - Ӧ +2025-03-17 11:25:38,817 - root - INFO - Ӧùر +2025-03-17 11:25:40,172 - root - INFO - ʼʼݿ... +2025-03-17 11:25:40,223 - root - INFO - ݿɹ +2025-03-17 11:25:40,223 - root - INFO - ʼʼ... +2025-03-17 11:25:40,243 - root - INFO - Ѵڣʼ +2025-03-17 11:25:40,243 - root - INFO - ݳʼɹ +2025-03-17 11:25:40,243 - core.component - INFO - Զ: components +2025-03-17 11:25:40,243 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:25:40,243 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:25:40,243 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:25:40,243 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:25:40,254 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:25:40,254 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:25:40,264 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:25:40,264 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:25:40,264 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:25:40,264 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:25:40,265 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:25:40,265 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:25:40,265 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:25:40,265 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:25:40,447 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:25:40,447 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:25:40,458 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:25:40,458 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:25:40,458 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:25:40,458 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:25:40,458 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:25:40,458 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:25:40,458 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:25:40,458 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:25:40,458 - config.component_registry - INFO - Զע: components +2025-03-17 11:25:40,509 - root - INFO - ʼʼݿ... +2025-03-17 11:25:40,539 - root - INFO - ݿɹ +2025-03-17 11:25:40,539 - root - INFO - ʼʼ... +2025-03-17 11:25:40,539 - root - INFO - Ѵڣʼ +2025-03-17 11:25:40,539 - root - INFO - ݳʼɹ +2025-03-17 11:25:40,539 - core.component - INFO - Զ: components +2025-03-17 11:25:40,539 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:25:40,539 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:25:40,550 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:25:40,550 - config.component_registry - INFO - Զע: components +2025-03-17 11:25:40,560 - root - INFO - Ӧ +2025-03-17 11:28:04,805 - root - INFO - Ӧùر +2025-03-17 11:28:06,167 - root - INFO - ʼʼݿ... +2025-03-17 11:28:12,635 - root - INFO - ݿɹ +2025-03-17 11:28:12,635 - root - INFO - ʼʼ... +2025-03-17 11:28:12,669 - root - INFO - Ѵڣʼ +2025-03-17 11:28:12,669 - root - INFO - ݳʼɹ +2025-03-17 11:28:12,673 - core.component - INFO - Զ: components +2025-03-17 11:28:12,673 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:28:12,673 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:28:12,680 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:28:12,680 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:28:12,680 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:28:12,680 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:28:12,680 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:28:12,683 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:28:12,683 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:28:12,683 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:28:12,683 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:28:12,683 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:28:12,683 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:28:12,683 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:28:12,683 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:28:12,690 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:28:12,877 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:28:12,877 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:28:12,877 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:28:12,877 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:28:12,877 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:28:12,877 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:28:12,877 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:28:12,877 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:28:12,882 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:28:12,882 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:28:12,882 - config.component_registry - INFO - Զע: components +2025-03-17 11:28:12,945 - root - INFO - ʼʼݿ... +2025-03-17 11:28:13,006 - root - INFO - ݿɹ +2025-03-17 11:28:13,006 - root - INFO - ʼʼ... +2025-03-17 11:28:13,009 - root - INFO - Ѵڣʼ +2025-03-17 11:28:13,009 - root - INFO - ݳʼɹ +2025-03-17 11:28:13,009 - core.component - INFO - Զ: components +2025-03-17 11:28:13,009 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:28:13,009 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:28:13,009 - config.component_registry - INFO - Զע: components +2025-03-17 11:28:13,029 - root - INFO - Ӧ +2025-03-17 11:47:28,261 - root - INFO - Ӧùر +2025-03-17 11:47:29,587 - root - INFO - ʼʼݿ... +2025-03-17 11:47:29,617 - root - INFO - ݿɹ +2025-03-17 11:47:29,617 - root - INFO - ʼʼ... +2025-03-17 11:47:29,642 - root - INFO - Ѵڣʼ +2025-03-17 11:47:29,642 - root - INFO - ݳʼɹ +2025-03-17 11:47:29,642 - core.component - INFO - Զ: components +2025-03-17 11:47:29,642 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:47:29,642 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:47:29,642 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:47:29,642 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:47:29,642 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:47:29,647 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:47:29,647 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:47:29,830 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:47:29,830 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:47:29,830 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:47:29,830 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:47:29,830 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:47:29,830 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:47:29,830 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:47:29,840 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:47:29,840 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:47:29,840 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:47:29,840 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:47:29,840 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:47:29,840 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:47:29,840 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:47:29,840 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:47:29,840 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:47:29,851 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:47:29,851 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:47:29,851 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:47:29,857 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:47:29,857 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:47:29,857 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:47:29,857 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:47:29,857 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:47:29,861 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:47:29,861 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:47:29,863 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:47:29,863 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:47:29,863 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:47:29,863 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:47:29,863 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:47:29,863 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:47:29,863 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:47:29,863 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:47:29,863 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:47:29,863 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:47:29,863 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:47:29,863 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:47:29,863 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:47:29,863 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:47:29,863 - config.component_registry - INFO - Զע: components +2025-03-17 11:47:29,921 - root - INFO - ʼʼݿ... +2025-03-17 11:47:29,941 - root - INFO - ݿɹ +2025-03-17 11:47:29,941 - root - INFO - ʼʼ... +2025-03-17 11:47:29,941 - root - INFO - Ѵڣʼ +2025-03-17 11:47:29,941 - root - INFO - ݳʼɹ +2025-03-17 11:47:29,941 - core.component - INFO - Զ: components +2025-03-17 11:47:29,941 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:47:29,941 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:47:29,951 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:47:29,951 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:47:29,951 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:47:29,952 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:47:29,952 - config.component_registry - INFO - Զע: components +2025-03-17 11:47:29,967 - root - INFO - Ӧ +2025-03-17 11:50:26,645 - root - INFO - Ӧùر +2025-03-17 11:50:27,778 - root - INFO - ʼʼݿ... +2025-03-17 11:50:27,837 - root - INFO - ݿɹ +2025-03-17 11:50:27,837 - root - INFO - ʼʼ... +2025-03-17 11:50:27,857 - root - INFO - Ѵڣʼ +2025-03-17 11:50:27,857 - root - INFO - ݳʼɹ +2025-03-17 11:50:27,857 - core.component - INFO - Զ: components +2025-03-17 11:50:27,868 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:50:27,868 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:50:27,868 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:50:27,868 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:50:27,868 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:50:27,878 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:50:27,878 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:50:27,888 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:50:27,888 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:50:27,888 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:50:27,888 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:50:27,888 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:50:27,888 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:50:27,888 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:50:28,062 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:50:28,062 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:50:28,062 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:50:28,062 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:50:28,062 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:50:28,062 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:50:28,070 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:50:28,070 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:50:28,070 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:50:28,070 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:50:28,070 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:50:28,070 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:50:28,070 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:50:28,070 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:50:28,070 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:50:28,070 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:50:28,072 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:50:28,072 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:50:28,072 - config.component_registry - INFO - Զע: components +2025-03-17 11:50:28,113 - root - INFO - ʼʼݿ... +2025-03-17 11:50:28,154 - root - INFO - ݿɹ +2025-03-17 11:50:28,164 - root - INFO - ʼʼ... +2025-03-17 11:50:28,164 - root - INFO - Ѵڣʼ +2025-03-17 11:50:28,164 - root - INFO - ݳʼɹ +2025-03-17 11:50:28,164 - core.component - INFO - Զ: components +2025-03-17 11:50:28,164 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:50:28,164 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:50:28,175 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:50:28,185 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:50:28,185 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:50:28,185 - config.component_registry - INFO - Զע: components +2025-03-17 11:50:28,195 - root - INFO - Ӧ +2025-03-17 11:53:41,509 - root - INFO - Ӧùر +2025-03-17 11:53:42,783 - root - INFO - ʼʼݿ... +2025-03-17 11:53:42,835 - root - INFO - ݿɹ +2025-03-17 11:53:42,835 - root - INFO - ʼʼ... +2025-03-17 11:53:42,848 - root - INFO - Ѵڣʼ +2025-03-17 11:53:42,848 - root - INFO - ݳʼɹ +2025-03-17 11:53:42,856 - core.component - INFO - Զ: components +2025-03-17 11:53:42,856 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:53:42,856 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:53:42,856 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:53:42,856 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:53:42,856 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:53:42,856 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:53:42,859 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:53:42,859 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:53:42,860 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:53:42,860 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:53:42,866 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:53:42,866 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:53:42,866 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:53:42,866 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:53:42,866 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:53:42,866 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:53:43,038 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:53:43,038 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:53:43,038 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:53:43,038 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:53:43,038 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:53:43,038 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:53:43,038 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:53:43,048 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:53:43,048 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:53:43,048 - config.component_registry - INFO - Զע: components +2025-03-17 11:53:43,099 - root - INFO - ʼʼݿ... +2025-03-17 11:53:43,150 - root - INFO - ݿɹ +2025-03-17 11:53:43,150 - root - INFO - ʼʼ... +2025-03-17 11:53:43,150 - root - INFO - Ѵڣʼ +2025-03-17 11:53:43,152 - root - INFO - ݳʼɹ +2025-03-17 11:53:43,152 - core.component - INFO - Զ: components +2025-03-17 11:53:43,152 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:53:43,152 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:53:43,152 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:53:43,152 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:53:43,152 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:53:43,152 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:53:43,152 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:53:43,153 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:53:43,155 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:53:43,155 - config.component_registry - INFO - Զע: components +2025-03-17 11:53:43,170 - root - INFO - Ӧ +2025-03-17 11:58:24,242 - root - INFO - Ӧùر +2025-03-17 11:58:25,490 - root - INFO - ʼʼݿ... +2025-03-17 11:58:25,553 - root - INFO - ݿɹ +2025-03-17 11:58:25,553 - root - INFO - ʼʼ... +2025-03-17 11:58:25,567 - root - INFO - Ѵڣʼ +2025-03-17 11:58:25,567 - root - INFO - ݳʼɹ +2025-03-17 11:58:25,567 - core.component - INFO - Զ: components +2025-03-17 11:58:25,567 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:58:25,573 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:58:25,573 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:58:25,746 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:58:25,746 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:58:25,746 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:58:25,746 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:58:25,762 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:58:25,762 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:58:25,762 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:58:25,762 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:58:25,762 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:58:25,762 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:58:25,762 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:58:25,762 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:58:25,762 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:58:25,762 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:58:25,762 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:58:25,778 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:58:25,778 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:58:25,778 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:58:25,778 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:58:25,778 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:58:25,778 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:58:25,778 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:58:25,778 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:58:25,778 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:58:25,794 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:58:25,794 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:58:25,810 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:58:25,810 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:58:25,810 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:58:25,810 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:58:25,810 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:58:25,810 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:58:25,810 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:58:25,810 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:58:25,810 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:58:25,810 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:58:25,810 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:58:25,810 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:58:25,810 - config.component_registry - INFO - Զע: components +2025-03-17 11:58:25,882 - root - INFO - ʼʼݿ... +2025-03-17 11:58:25,937 - root - INFO - ݿɹ +2025-03-17 11:58:25,937 - root - INFO - ʼʼ... +2025-03-17 11:58:25,937 - root - INFO - Ѵڣʼ +2025-03-17 11:58:25,952 - root - INFO - ݳʼɹ +2025-03-17 11:58:25,952 - core.component - INFO - Զ: components +2025-03-17 11:58:25,952 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:58:25,952 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:58:25,952 - config.component_registry - INFO - Զע: components +2025-03-17 11:58:25,971 - root - INFO - Ӧ +2025-03-17 11:58:55,297 - root - INFO - Ӧùر +2025-03-17 11:58:56,387 - root - INFO - ʼʼݿ... +2025-03-17 11:58:56,422 - root - INFO - ݿɹ +2025-03-17 11:58:56,439 - root - INFO - ʼʼ... +2025-03-17 11:58:56,456 - root - INFO - Ѵڣʼ +2025-03-17 11:58:56,456 - root - INFO - ݳʼɹ +2025-03-17 11:58:56,456 - core.component - INFO - Զ: components +2025-03-17 11:58:56,462 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:58:56,462 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 11:58:56,462 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 11:58:56,462 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 11:58:56,462 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 11:58:56,468 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 11:58:56,468 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 11:58:56,468 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 11:58:56,468 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 11:58:56,468 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 11:58:56,468 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:58:56,468 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:58:56,472 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:58:56,476 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 11:58:56,476 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 11:58:56,476 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:58:56,476 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:58:56,476 - core.component - INFO - ע: if -> IfComponent +2025-03-17 11:58:56,481 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 11:58:56,481 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 11:58:56,485 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 11:58:56,485 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 11:58:56,485 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 11:58:56,485 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 11:58:56,485 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 11:58:56,488 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 11:58:56,488 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 11:58:56,488 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:58:56,488 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:58:56,685 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 11:58:56,685 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 11:58:56,685 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:58:56,685 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:58:56,685 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 11:58:56,685 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 11:58:56,685 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 11:58:56,685 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 11:58:56,693 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 11:58:56,693 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:58:56,694 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 11:58:56,694 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:58:56,694 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:58:56,694 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 11:58:56,694 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 11:58:56,696 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:58:56,696 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:58:56,698 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 11:58:56,698 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:58:56,698 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 11:58:56,698 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 11:58:56,698 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 11:58:56,698 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 11:58:56,698 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 11:58:56,698 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 11:58:56,698 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:58:56,698 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:58:56,698 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:58:56,698 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:58:56,698 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:58:56,698 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:58:56,698 - config.component_registry - INFO - Զע: components +2025-03-17 11:58:56,740 - root - INFO - ʼʼݿ... +2025-03-17 11:58:56,787 - root - INFO - ݿɹ +2025-03-17 11:58:56,787 - root - INFO - ʼʼ... +2025-03-17 11:58:56,787 - root - INFO - Ѵڣʼ +2025-03-17 11:58:56,787 - root - INFO - ݳʼɹ +2025-03-17 11:58:56,803 - core.component - INFO - Զ: components +2025-03-17 11:58:56,803 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 11:58:56,803 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 11:58:56,803 - config.component_registry - INFO - Զע: components +2025-03-17 11:58:56,831 - root - INFO - Ӧ +2025-03-17 12:00:23,240 - root - INFO - Ӧùر +2025-03-17 12:00:24,468 - root - INFO - ʼʼݿ... +2025-03-17 12:00:24,509 - root - INFO - ݿɹ +2025-03-17 12:00:24,509 - root - INFO - ʼʼ... +2025-03-17 12:00:24,539 - root - INFO - Ѵڣʼ +2025-03-17 12:00:24,541 - root - INFO - ݳʼɹ +2025-03-17 12:00:24,541 - core.component - INFO - Զ: components +2025-03-17 12:00:24,541 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: if -> IfComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 12:00:24,541 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 12:00:24,541 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 12:00:24,720 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 12:00:24,720 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 12:00:24,736 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 12:00:24,736 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 12:00:24,736 - config.component_registry - INFO - Զע: components +2025-03-17 12:00:24,787 - root - INFO - ʼʼݿ... +2025-03-17 12:00:24,810 - root - INFO - ݿɹ +2025-03-17 12:00:24,810 - root - INFO - ʼʼ... +2025-03-17 12:00:24,810 - root - INFO - Ѵڣʼ +2025-03-17 12:00:24,810 - root - INFO - ݳʼɹ +2025-03-17 12:00:24,810 - core.component - INFO - Զ: components +2025-03-17 12:00:24,810 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 12:00:24,810 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 12:00:24,825 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 12:00:24,825 - config.component_registry - INFO - Զע: components +2025-03-17 12:00:24,841 - root - INFO - Ӧ +2025-03-17 12:03:40,295 - root - INFO - Ӧùر +2025-03-17 12:03:41,691 - root - INFO - ʼʼݿ... +2025-03-17 12:03:41,867 - root - INFO - ݿɹ +2025-03-17 12:03:41,867 - root - INFO - ʼʼ... +2025-03-17 12:03:41,905 - root - INFO - Ѵڣʼ +2025-03-17 12:03:41,946 - root - INFO - ݳʼɹ +2025-03-17 12:03:41,987 - core.component - INFO - Զ: components +2025-03-17 12:03:42,006 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:03:42,039 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 12:03:42,070 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 12:03:42,080 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 12:03:42,090 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 12:03:42,131 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 12:03:42,131 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 12:03:42,141 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 12:03:42,141 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 12:03:42,141 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 12:03:42,152 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:03:42,162 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 12:03:42,162 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 12:03:42,162 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 12:03:42,172 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 12:03:42,182 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 12:03:42,182 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 12:03:42,192 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 12:03:42,192 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 12:03:42,203 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 12:03:42,214 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 12:03:42,214 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 12:03:42,214 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 12:03:42,224 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 12:03:42,234 - core.component - INFO - ע: if -> IfComponent +2025-03-17 12:03:42,234 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 12:03:42,244 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 12:03:42,246 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 12:03:42,255 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 12:03:42,255 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 12:03:42,265 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 12:03:42,265 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 12:03:42,265 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 12:03:42,275 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 12:03:42,275 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 12:03:42,285 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 12:03:42,295 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 12:03:42,295 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 12:03:42,295 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 12:03:42,295 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 12:03:42,306 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 12:03:42,306 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 12:03:42,313 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 12:03:42,316 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 12:03:42,316 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 12:03:42,316 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 12:03:42,549 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 12:03:42,549 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 12:03:42,549 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 12:03:42,549 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 12:03:42,549 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 12:03:42,549 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 12:03:42,559 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 12:03:42,559 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 12:03:42,569 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 12:03:42,569 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 12:03:42,569 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 12:03:42,569 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 12:03:42,569 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 12:03:42,569 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 12:03:42,569 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 12:03:42,569 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 12:03:42,569 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 12:03:42,569 - config.component_registry - INFO - Զע: components +2025-03-17 12:03:42,630 - root - INFO - ʼʼݿ... +2025-03-17 12:03:42,671 - root - INFO - ݿɹ +2025-03-17 12:03:42,671 - root - INFO - ʼʼ... +2025-03-17 12:03:42,671 - root - INFO - Ѵڣʼ +2025-03-17 12:03:42,671 - root - INFO - ݳʼɹ +2025-03-17 12:03:42,671 - core.component - INFO - Զ: components +2025-03-17 12:03:42,671 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 12:03:42,671 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 12:03:42,681 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 12:03:42,681 - config.component_registry - INFO - Զע: components +2025-03-17 12:03:42,695 - root - INFO - Ӧ +2025-03-17 12:05:16,950 - root - INFO - Ӧùر +2025-03-17 12:05:19,871 - root - INFO - ʼʼݿ... +2025-03-17 12:05:19,952 - root - INFO - ݿɹ +2025-03-17 12:05:19,954 - root - INFO - ʼʼ... +2025-03-17 12:05:19,968 - root - INFO - Ѵڣʼ +2025-03-17 12:05:19,968 - root - INFO - ݳʼɹ +2025-03-17 12:05:19,968 - core.component - INFO - Զ: components +2025-03-17 12:05:19,968 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:05:19,968 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 12:05:19,968 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 12:05:19,968 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 12:05:19,968 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 12:05:19,968 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 12:05:19,968 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 12:05:19,984 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 12:05:19,984 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 12:05:19,984 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 12:05:19,984 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 12:05:20,000 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 12:05:20,000 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 12:05:20,000 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 12:05:20,000 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 12:05:20,000 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 12:05:20,000 - core.component - INFO - ע: if -> IfComponent +2025-03-17 12:05:20,000 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 12:05:20,000 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 12:05:20,000 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 12:05:20,000 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 12:05:20,016 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 12:05:20,016 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 12:05:20,016 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 12:05:20,016 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 12:05:20,016 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 12:05:20,016 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 12:05:20,016 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 12:05:20,016 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 12:05:20,016 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 12:05:20,016 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 12:05:20,032 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 12:05:20,032 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 12:05:20,032 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 12:05:20,032 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 12:05:20,032 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 12:05:20,032 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 12:05:20,032 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 12:05:20,212 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 12:05:20,212 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 12:05:20,222 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 12:05:20,222 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 12:05:20,222 - config.component_registry - INFO - Զע: components +2025-03-17 12:05:20,254 - root - INFO - ģ񣬵ģʽ: True +2025-03-17 12:05:20,843 - root - INFO - ʼʼݿ... +2025-03-17 12:05:20,892 - root - INFO - ݿɹ +2025-03-17 12:05:20,892 - root - INFO - ʼʼ... +2025-03-17 12:05:20,906 - root - INFO - Ѵڣʼ +2025-03-17 12:05:20,906 - root - INFO - ݳʼɹ +2025-03-17 12:05:20,922 - core.component - INFO - Զ: components +2025-03-17 12:05:20,922 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: if -> IfComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 12:05:20,922 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 12:05:20,922 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 12:05:21,102 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 12:05:21,106 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 12:05:21,106 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 12:05:21,106 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 12:05:21,106 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 12:05:21,106 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 12:05:21,106 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 12:05:21,109 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 12:05:21,109 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 12:05:21,109 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 12:05:21,110 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 12:05:21,110 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 12:05:21,110 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 12:05:21,110 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 12:05:21,110 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 12:05:21,110 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 12:05:21,110 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 12:05:21,112 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 12:05:21,112 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 12:05:21,112 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 12:05:21,112 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 12:05:21,112 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 12:05:21,112 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 12:05:21,112 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 12:05:21,114 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 12:05:21,116 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 12:05:21,116 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 12:05:21,118 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 12:05:21,118 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 12:05:21,118 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 12:05:21,118 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 12:05:21,118 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 12:05:21,118 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 12:05:21,120 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 12:05:21,123 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 12:05:21,124 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 12:05:21,124 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 12:05:21,124 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 12:05:21,124 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 12:05:21,124 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 12:05:21,125 - config.component_registry - INFO - Զע: components +2025-03-17 12:05:21,176 - root - INFO - ʼʼݿ... +2025-03-17 12:05:21,225 - root - INFO - ݿɹ +2025-03-17 12:05:21,225 - root - INFO - ʼʼ... +2025-03-17 12:05:21,225 - root - INFO - Ѵڣʼ +2025-03-17 12:05:21,225 - root - INFO - ݳʼɹ +2025-03-17 12:05:21,225 - core.component - INFO - Զ: components +2025-03-17 12:05:21,225 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 12:05:21,225 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 12:05:21,237 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 12:05:21,240 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 12:05:21,240 - config.component_registry - INFO - Զע: components +2025-03-17 12:05:21,256 - root - INFO - Ӧ +2025-03-17 13:53:35,515 - services.task_service - INFO - : test11 (ID: 6c257ac6-0d6b-4c76-8372-aa3f894d9111) +2025-03-17 14:04:53,047 - root - INFO - Ӧùر +2025-03-17 14:04:54,308 - root - INFO - ʼʼݿ... +2025-03-17 14:04:54,359 - root - INFO - ݿɹ +2025-03-17 14:04:54,359 - root - INFO - ʼʼ... +2025-03-17 14:04:54,382 - root - INFO - Ѵڣʼ +2025-03-17 14:04:54,382 - root - INFO - ݳʼɹ +2025-03-17 14:04:54,382 - core.component - INFO - Զ: components +2025-03-17 14:04:54,382 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 14:04:54,382 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 14:04:54,382 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 14:04:54,382 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 14:04:54,382 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 14:04:54,382 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 14:04:54,389 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 14:04:54,389 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 14:04:54,389 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 14:04:54,389 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 14:04:54,389 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 14:04:54,391 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 14:04:54,393 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 14:04:54,393 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 14:04:54,393 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 14:04:54,393 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 14:04:54,395 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 14:04:54,395 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 14:04:54,395 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 14:04:54,395 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 14:04:54,395 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 14:04:54,395 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 14:04:54,397 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 14:04:54,397 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 14:04:54,397 - core.component - INFO - ע: if -> IfComponent +2025-03-17 14:04:54,397 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 14:04:54,397 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 14:04:54,397 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 14:04:54,397 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 14:04:54,399 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 14:04:54,399 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 14:04:54,399 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 14:04:54,399 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 14:04:54,399 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 14:04:54,399 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 14:04:54,400 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 14:04:54,401 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 14:04:54,401 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 14:04:54,401 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 14:04:54,401 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 14:04:54,401 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 14:04:54,401 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 14:04:54,401 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 14:04:54,403 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 14:04:54,403 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 14:04:54,403 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 14:04:54,575 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 14:04:54,575 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 14:04:54,575 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 14:04:54,586 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 14:04:54,586 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 14:04:54,586 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 14:04:54,586 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 14:04:54,586 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 14:04:54,596 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 14:04:54,596 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 14:04:54,596 - config.component_registry - INFO - Զע: components +2025-03-17 14:04:54,647 - root - INFO - ʼʼݿ... +2025-03-17 14:04:54,679 - root - INFO - ݿɹ +2025-03-17 14:04:54,679 - root - INFO - ʼʼ... +2025-03-17 14:04:54,689 - root - INFO - Ѵڣʼ +2025-03-17 14:04:54,689 - root - INFO - ݳʼɹ +2025-03-17 14:04:54,689 - core.component - INFO - Զ: components +2025-03-17 14:04:54,689 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 14:04:54,689 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 14:04:54,700 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 14:04:54,703 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 14:04:54,703 - config.component_registry - INFO - Զע: components +2025-03-17 14:04:54,710 - root - INFO - Ӧ +2025-03-17 14:05:31,534 - root - INFO - Ӧùر +2025-03-17 14:05:32,661 - root - INFO - ʼʼݿ... +2025-03-17 14:05:32,722 - root - INFO - ݿɹ +2025-03-17 14:05:32,722 - root - INFO - ʼʼ... +2025-03-17 14:05:32,754 - root - INFO - Ѵڣʼ +2025-03-17 14:05:32,754 - root - INFO - ݳʼɹ +2025-03-17 14:05:32,754 - core.component - INFO - Զ: components +2025-03-17 14:05:32,754 - core.component - INFO - ע: check_task_instance_id_exists -> CheckTaskInstanceIdExistsComponent +2025-03-17 14:05:32,754 - core.component - INFO - ע: create_unique_id -> CreateUniqueIdComponent +2025-03-17 14:05:32,754 - core.component - INFO - ע: current_timestamp -> CurrentTimestampComponent +2025-03-17 14:05:32,754 - core.component - INFO - ע: current_time -> CurrentTimeComponent +2025-03-17 14:05:32,754 - core.component - INFO - ע: execute_sql -> ExecuteSqlComponent +2025-03-17 14:05:32,754 - core.component - INFO - ע: query_sql -> QuerySqlComponent +2025-03-17 14:05:32,770 - core.component - INFO - ע: string_md5_encrypt -> StringMd5EncryptComponent +2025-03-17 14:05:32,770 - core.component - INFO - ע: string_to_json_array -> StringToJsonArrayComponent +2025-03-17 14:05:32,770 - core.component - INFO - ע: string_to_json_object -> StringToJsonObjectComponent +2025-03-17 14:05:32,770 - core.component - INFO - ע: print -> PrintComponent +2025-03-17 14:05:32,770 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 14:05:32,770 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 14:05:32,770 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 14:05:32,786 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 14:05:32,786 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 14:05:32,786 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 14:05:32,786 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 14:05:32,786 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 14:05:32,786 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 14:05:32,786 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 14:05:32,802 - core.component - INFO - ע: wait_modbus_value -> WaitModbusValueComponent +2025-03-17 14:05:32,802 - core.component - INFO - ע: write_modbus_value -> WriteModbusValueComponent +2025-03-17 14:05:32,802 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 14:05:32,802 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: if -> IfComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: if_else -> IfElseComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: if_else_if -> IfElseIfComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: for_each -> ForEachComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: while -> WhileComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: break -> BreakComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: return -> ReturnComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: delay -> DelayComponent +2025-03-17 14:05:32,818 - core.component - INFO - ע: parallel_execute -> ParallelExecuteComponent +2025-03-17 14:05:32,834 - core.component - INFO - ע: serial_execute -> SerialExecuteComponent +2025-03-17 14:05:32,834 - core.component - INFO - ע: throw_exception -> ThrowExceptionComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 14:05:32,834 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: http_get_request -> HttpGetRequestComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: http_post_request -> HttpPostRequestComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: select_robot -> SelectRobotComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_robot_position -> GetRobotPositionComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: robot_action -> RobotActionComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: change_robot_destination -> ChangeRobotDestinationComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_robot_battery -> GetRobotBatteryComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_robot_pgv_code -> GetRobotPGVCodeComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: run_script -> RunScriptComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: set_task_variables -> SetTaskVariablesComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: batch_set_site -> BatchSetSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_dense_site -> GetDenseSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: query_site -> QuerySiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: lock_site -> LockSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: unlock_site -> UnlockSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_locked_sites_by_task -> GetLockedSitesByTaskComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_site_extension_property -> GetSiteExtensionPropertyComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: set_site_extension_property -> SetSiteExtensionPropertyComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: set_site_goods -> SetSiteGoodsComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: set_site_empty -> SetSiteEmptyComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: set_site_occupied -> SetSiteOccupiedComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: set_site_tag -> SetSiteTagComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: subtask -> SubtaskComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: cache_data -> CacheDataComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: clear_cache_data -> ClearCacheDataComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_cache_data -> GetCacheDataComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: set_task_status -> SetTaskStatusComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: jump_to_block -> JumpToBlockComponent +2025-03-17 14:05:33,009 - core.component - INFO - ע: get_task_input_param -> GetTaskInputParamComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 14:05:33,009 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 14:05:33,009 - config.component_registry - INFO - Զע: components +2025-03-17 14:05:33,057 - root - INFO - ʼʼݿ... +2025-03-17 14:05:33,105 - root - INFO - ݿɹ +2025-03-17 14:05:33,105 - root - INFO - ʼʼ... +2025-03-17 14:05:33,120 - root - INFO - Ѵڣʼ +2025-03-17 14:05:33,120 - root - INFO - ݳʼɹ +2025-03-17 14:05:33,120 - core.component - INFO - Զ: components +2025-03-17 14:05:33,120 - core.component - INFO - Զע: checktaskinstanceidexists -> CheckTaskInstanceIdExistsComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: createuniqueid -> CreateUniqueIdComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: currenttime -> CurrentTimeComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: currenttimestamp -> CurrentTimestampComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: executesql -> ExecuteSqlComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: print -> PrintComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: querysql -> QuerySqlComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: stringmd5encrypt -> StringMd5EncryptComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: stringtojsonarray -> StringToJsonArrayComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: stringtojsonobject -> StringToJsonObjectComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: waitmodbusvalue -> WaitModbusValueComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: writemodbusvalue -> WriteModbusValueComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: break -> BreakComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: delay -> DelayComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: foreach -> ForEachComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: if -> IfComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: ifelse -> IfElseComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: ifelseif -> IfElseIfComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: parallelexecute -> ParallelExecuteComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: return -> ReturnComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: serialexecute -> SerialExecuteComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: throwexception -> ThrowExceptionComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: while -> WhileComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: httpgetrequest -> HttpGetRequestComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: httppostrequest -> HttpPostRequestComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: changerobotdestination -> ChangeRobotDestinationComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: getrobotbattery -> GetRobotBatteryComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: getrobotpgvcode -> GetRobotPGVCodeComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: getrobotposition -> GetRobotPositionComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: robotaction -> RobotActionComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: selectrobot -> SelectRobotComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: runscript -> RunScriptComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: settaskvariables -> SetTaskVariablesComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: batchsetsite -> BatchSetSiteComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: getdensesite -> GetDenseSiteComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: getlockedsitesbytask -> GetLockedSitesByTaskComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: getsiteextensionproperty -> GetSiteExtensionPropertyComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: locksite -> LockSiteComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: querysite -> QuerySiteComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: setsiteempty -> SetSiteEmptyComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: setsiteextensionproperty -> SetSiteExtensionPropertyComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: setsitegoods -> SetSiteGoodsComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: setsiteoccupied -> SetSiteOccupiedComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: setsitetag -> SetSiteTagComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: unlocksite -> UnlockSiteComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: subtask -> SubtaskComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: cachedata -> CacheDataComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: clearcachedata -> ClearCacheDataComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: getcachedata -> GetCacheDataComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: gettaskinputparam -> GetTaskInputParamComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: jumptoblock -> JumpToBlockComponent +2025-03-17 14:05:33,120 - core.component - INFO - Զע: settaskstatus -> SetTaskStatusComponent +2025-03-17 14:05:33,120 - config.component_registry - INFO - Զע: components +2025-03-17 14:05:33,136 - root - INFO - Ӧ +2025-03-17 14:43:06,083 - root - INFO - Ӧùر diff --git a/migrations/README.md b/migrations/README.md new file mode 100644 index 0000000..5250241 --- /dev/null +++ b/migrations/README.md @@ -0,0 +1,79 @@ +# 数据库迁移 + +本目录包含数据库迁移相关的脚本和配置。 + +## 目录结构 + +- `alembic.ini`: Alembic 配置文件 +- `env.py`: Alembic 环境配置 +- `script.py.mako`: 迁移脚本模板 +- `versions/`: 迁移脚本目录 + +## 使用方法 + +### 安装依赖 + +```bash +pip install alembic +``` + +### 生成迁移脚本 + +使用通用迁移脚本生成工具生成迁移脚本: + +```bash +python scripts/generate_migration.py --table 表名 --field 字段名 --type 字段类型 [--nullable] [--default 默认值] [--comment 注释] [--unique] [--index] +``` + +参数说明: + +- `--table`: 表名,必填 +- `--field`: 字段名,必填 +- `--type`: 字段类型,如 String(36), Integer, Boolean 等,必填 +- `--nullable`: 是否可为空,默认为 False +- `--default`: 默认值 +- `--comment`: 注释 +- `--unique`: 是否唯一,默认为 False +- `--index`: 是否创建索引,默认为 False + +示例: + +```bash +# 添加 task_id 字段到 tasks 表 +python scripts/generate_migration.py --table tasks --field task_id --type String(36) --comment "任务UUID,用于外部引用" --unique --index + +# 添加 is_active 字段到 users 表 +python scripts/generate_migration.py --table users --field is_active --type Boolean --default "true" --comment "是否激活" --index +``` + +### 执行迁移 + +使用迁移执行脚本执行迁移: + +```bash +python scripts/run_migration.py [--revision 版本号] [--downgrade] +``` + +参数说明: + +- `--revision`: 版本号,为空表示升级到最新版本 +- `--downgrade`: 是否降级,默认为 False + +示例: + +```bash +# 升级到最新版本 +python scripts/run_migration.py + +# 升级到指定版本 +python scripts/run_migration.py --revision 001 + +# 降级到指定版本 +python scripts/run_migration.py --revision 001 --downgrade +``` + +## 注意事项 + +1. 迁移脚本会自动为已有记录生成默认值,但可能需要根据实际情况修改。 +2. 执行迁移前,请确保已备份数据库。 +3. 降级操作可能会导致数据丢失,请谨慎使用。 \ No newline at end of file diff --git a/migrations/__init__.py b/migrations/__init__.py new file mode 100644 index 0000000..384d3eb --- /dev/null +++ b/migrations/__init__.py @@ -0,0 +1,3 @@ +""" +数据库迁移包 +""" \ No newline at end of file diff --git a/migrations/__pycache__/env.cpython-312.pyc b/migrations/__pycache__/env.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a27ac4fa5e7dbc33e739ac41687e74fee1f1ea6e GIT binary patch literal 4581 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 H4!HRT*6hH? literal 0 HcmV?d00001 diff --git a/migrations/versions/__pycache__/81b754397c49_增加字段.cpython-312.pyc b/migrations/versions/__pycache__/81b754397c49_增加字段.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a5814c438a8cf7e4b80652708a0600690d376838 GIT binary patch literal 5005 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 aaWEThEU`1IZ!8j-A22r;ip+BA-oF8zCH1HP literal 0 HcmV?d00001 diff --git a/migrations/versions/__pycache__/822a081a7774_增加字段.cpython-312.pyc b/migrations/versions/__pycache__/822a081a7774_增加字段.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..adbe998989b035920c1adbc0605ca827ae7a773b GIT binary patch literal 4358 zcmds4Yj6|S6~6nDRu9Vp8;p%j6>vgCgYgrCiKz{S#!SZPK!BogtIFE7kdRi+u7vH3 z+)-&V1*7J@?#m&V8P5&prFcf&w#w^4EWj`xaRc`U`Gk3zK1H{shb*5|9fClt2fm5bdHV z%rim8#X`*nnGomVh>QywLPnP{qvu^bjYK{$KRaly25E7wmF3PEMk$@A5b3!vtI5@Z zF>B+p3cRa8Fu803<0^#LE|_0Ju6cq5=zPHnv`8obS}fRrE)WWVF6?KV_NWiW)82eT zJ9t`qcQAeaH)iuzaj#$Thb2dQTa#l=ZLOzzO^v6qv9Vs)hzdw+x*8km>((}U>(`n$ z%AzMCI@*9VIclqG8&+1=t*ohc)U0W$ZfvTruBxkB-PqV*Hs8TZcTy@H?&*Mvjfi~_ zsLit29TdG0m=aoCP~0m9U!3O&ilHvQw<_fK$sVjzt@&$#R^A%CnX@8iV+2|V@616U zgUAHu7eg`1k7D#&)DdbMT81LT5R*zIuNq(?bXE}HvRtkfs2BlY)rfS{_XP@wQDERgKulUA0(X!X_b9S6XEbU-BHQgo@p zER-*{0@K#i8BluN-moBc_Q>G?fU7g&_ekBMCA_hJO7iY z>giXlilbj5()4#^8Mm#9e|OTd@Un5dtmU$Cq&uCElEpDl5P3&-WiQU61bqeinqj)oM0o-52{ zgD4JOPAWP8OUi=_#GgmR%7envT%$h-1%){J1Pd6s9v}TcYz*DG6|x!L*;OGqP#2KaYovO8yt3qLbHeyLnxnh9T#{La5~$Xq{Rs!N&bzEZ3(aiaCH4K(uyn%iJ8-UHijlxaOIYym#Az=g>(MPRb< z$<_pZb7W;g-k-)d02bFF<6J?m!lVI{Y9LOII9qN6UNsAHxJP%M+>8YlBG8i#nOp&R zPBaPOUP*Uj8yNfGRW<{8pc@m<3~w3Ql3c!ayu9f;zm7PoJjItMc3tO}-{TmZZ6<14 ziY0+P(}Plv)nG$^i@@$U*gSmi|^Qw&8> zf1?c)`-KfrC7+^_&(Pw}(377c+Z2ze;<#}F6{S#7V)^h>Lr;BzmQR|>_LoeU%2KAX z_Cu~$JHNDhEt)E_Mr5dJ}u+;ad MnfWaBBw5?P0kxA`eE=1.4.0 +alembic>=1.7.0 +pymysql +redis +cryptography + +# Web框架 +fastapi>=0.68.0 +uvicorn>=0.15.0 +pydantic>=1.8.0 + +# 工具库 +python-dotenv>=0.19.0 +croniter>=1.0.0 +jsonschema +requests +# 日志 +loguru diff --git a/scripts/__init__.py b/scripts/__init__.py new file mode 100644 index 0000000..ed91c59 --- /dev/null +++ b/scripts/__init__.py @@ -0,0 +1,3 @@ +""" +工具脚本包 +""" \ No newline at end of file diff --git a/scripts/direct_migration.py b/scripts/direct_migration.py new file mode 100644 index 0000000..73139a9 --- /dev/null +++ b/scripts/direct_migration.py @@ -0,0 +1,113 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +直接使用 alembic API 执行数据库迁移的脚本 + +用法: + python scripts/direct_migration.py [--revision 版本号] + +示例: + # 升级到最新版本 + python scripts/direct_migration.py + + # 升级到指定版本 + python scripts/direct_migration.py --revision 001 + + # 降级到指定版本 + python scripts/direct_migration.py --revision 001 --downgrade +""" + +import argparse +import os +import sys +from pathlib import Path +import logging + +# 配置日志 +logging.basicConfig( + level=logging.INFO, + format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', + handlers=[ + logging.StreamHandler(sys.stdout), + logging.FileHandler('migration_direct.log', encoding='utf-8') + ] +) +logger = logging.getLogger('alembic_direct') + +# 将项目根目录添加到 Python 路径 +root_dir = Path(__file__).parent.parent +sys.path.insert(0, str(root_dir)) + +def run_migration(revision=None, downgrade=False, verbose=False): + """ + 执行数据库迁移 + + Args: + revision (str): 版本号,为 None 表示升级到最新版本 + downgrade (bool): 是否降级 + verbose (bool): 是否显示详细日志 + """ + try: + # 导入 alembic 相关模块 + from alembic.config import Config + from alembic import command + + # 设置日志级别 + if verbose: + logging.getLogger('alembic').setLevel(logging.DEBUG) + + # 获取配置文件路径 + config_path = root_dir / "migrations" / "alembic.ini.tmp" + if not config_path.exists(): + # 如果临时配置文件不存在,使用原始配置文件 + config_path = root_dir / "migrations" / "alembic.ini" + + logger.info(f"使用配置文件: {config_path}") + + # 创建 alembic 配置对象 + alembic_cfg = Config(str(config_path)) + + # 设置脚本位置 + script_location = root_dir / "migrations" + alembic_cfg.set_main_option("script_location", str(script_location)) + + # 从 config/database.py 导入数据库 URL + from config.database import DATABASE_URL + logger.info(f"数据库 URL: {DATABASE_URL}") + + # 设置数据库 URL + alembic_cfg.set_main_option("sqlalchemy.url", DATABASE_URL) + + # 执行迁移 + if downgrade: + logger.info(f"正在降级到版本: {revision or 'base'}") + command.downgrade(alembic_cfg, revision or "base") + else: + logger.info(f"正在升级到版本: {revision or 'head'}") + command.upgrade(alembic_cfg, revision or "head") + + logger.info("迁移完成") + return True + except ImportError as e: + logger.error(f"导入错误: {e}") + return False + except Exception as e: + logger.error(f"执行迁移时发生错误: {e}", exc_info=True) + return False + + +def main(): + parser = argparse.ArgumentParser(description="执行数据库迁移") + parser.add_argument("--revision", help="版本号,为空表示升级到最新版本") + parser.add_argument("--downgrade", action="store_true", help="是否降级") + parser.add_argument("--verbose", "-v", action="store_true", help="显示详细日志") + + args = parser.parse_args() + + success = run_migration(args.revision, args.downgrade, args.verbose) + sys.exit(0 if success else 1) + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/scripts/generate_migration.py b/scripts/generate_migration.py new file mode 100644 index 0000000..6fe1ece --- /dev/null +++ b/scripts/generate_migration.py @@ -0,0 +1,192 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +通用数据库迁移脚本生成工具 + +用法: + python scripts/generate_migration.py --table 表名 --field 字段名 --type 字段类型 [--nullable] [--default 默认值] [--comment 注释] + +示例: + python scripts/generate_migration.py --table tasks --field task_id --type String(36) --comment "任务UUID,用于外部引用" +""" + +import argparse +import os +import sys +import uuid +import datetime +from pathlib import Path + +# 将项目根目录添加到 Python 路径 +sys.path.insert(0, str(Path(__file__).parent.parent)) + +def generate_migration_script(table_name, field_name, field_type, nullable=False, default=None, comment=None, unique=False, index=False): + """ + 生成迁移脚本 + + Args: + table_name (str): 表名 + field_name (str): 字段名 + field_type (str): 字段类型,如 String(36), Integer, Boolean 等 + nullable (bool): 是否可为空 + default (str): 默认值 + comment (str): 注释 + unique (bool): 是否唯一 + index (bool): 是否创建索引 + """ + # 生成迁移脚本文件名 + timestamp = datetime.datetime.now().strftime("%Y%m%d_%H%M%S") + revision_id = timestamp + script_name = f"{timestamp}_add_{field_name}_to_{table_name}.py" + script_path = Path(__file__).parent.parent / "migrations" / "versions" / script_name + + # 获取最新的 revision + versions_dir = Path(__file__).parent.parent / "migrations" / "versions" + revisions = [] + for file in versions_dir.glob("*.py"): + if file.name.startswith("__"): + continue + with open(file, "r", encoding="utf-8") as f: + for line in f: + if line.startswith("revision = "): + rev = line.split("=")[1].strip().strip("'\"") + revisions.append(rev) + break + + down_revision = "None" + if revisions: + down_revision = f"'{sorted(revisions)[-1]}'" + + # 生成字段定义 + field_def = f"sa.Column('{field_name}', sa.{field_type}" + if not nullable: + field_def += ", nullable=False" + if default is not None: + field_def += f", server_default=sa.text('{default}')" + if comment: + field_def += f", comment='{comment}'" + field_def += ")" + + # 生成迁移脚本内容 + script_content = f"""\"\"\"添加 {field_name} 字段到 {table_name} 表 + +Revision ID: {revision_id} +Revises: {down_revision.strip("'")} +Create Date: {datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")} + +\"\"\" +from alembic import op +import sqlalchemy as sa +import uuid + + +# revision identifiers, used by Alembic. +revision = '{revision_id}' +down_revision = {down_revision} +branch_labels = None +depends_on = None + + +def upgrade(): + # 添加 {field_name} 字段到 {table_name} 表 + op.add_column('{table_name}', {field_def}) + + # 为已有记录生成值 + conn = op.get_bind() + + # 获取所有记录 + records = conn.execute("SELECT id FROM {table_name} WHERE {field_name} IS NULL").fetchall() + + # 为每个记录生成值并更新 + for record in records: +""" + + # 根据字段类型生成不同的更新语句 + if "String" in field_type and "uuid" in field_name.lower(): + script_content += f""" record_uuid = str(uuid.uuid4()) + conn.execute(f"UPDATE {table_name} SET {field_name} = '{{record_uuid}}' WHERE id = {{record[0]}}") +""" + elif "String" in field_type: + script_content += f""" # 为字符串字段生成默认值,根据实际情况修改 + default_value = f"default_{{record[0]}}" + conn.execute(f"UPDATE {table_name} SET {field_name} = '{{default_value}}' WHERE id = {{record[0]}}") +""" + elif "Integer" in field_type: + script_content += f""" # 为整数字段生成默认值,根据实际情况修改 + default_value = 0 + conn.execute(f"UPDATE {table_name} SET {field_name} = {{default_value}} WHERE id = {{record[0]}}") +""" + elif "Boolean" in field_type: + script_content += f""" # 为布尔字段生成默认值,根据实际情况修改 + default_value = False + conn.execute(f"UPDATE {table_name} SET {field_name} = {{default_value}} WHERE id = {{record[0]}}") +""" + else: + script_content += f""" # 为字段生成默认值,根据实际情况修改 + # default_value = ... + # conn.execute(f"UPDATE {table_name} SET {field_name} = {{default_value}} WHERE id = {{record[0]}}") + pass +""" + + # 添加索引和约束 + if unique or index: + script_content += f""" + # 添加索引 + op.create_index('ix_{table_name}_{field_name}', '{table_name}', ['{field_name}'], unique={str(unique).lower()}) +""" + + if not nullable: + script_content += f""" + # 添加非空约束 + op.alter_column('{table_name}', '{field_name}', nullable=False) +""" + + # 添加降级函数 + script_content += f""" + +def downgrade(): + # 删除 {field_name} 字段 +""" + + if unique or index: + script_content += f""" op.drop_index('ix_{table_name}_{field_name}', table_name='{table_name}') +""" + + script_content += f""" op.drop_column('{table_name}', '{field_name}') +""" + + # 写入文件 + with open(script_path, "w", encoding="utf-8") as f: + f.write(script_content) + + print(f"迁移脚本已生成: {script_path}") + + +def main(): + parser = argparse.ArgumentParser(description="生成数据库迁移脚本") + parser.add_argument("--table", required=True, help="表名") + parser.add_argument("--field", required=True, help="字段名") + parser.add_argument("--type", required=True, help="字段类型,如 String(36), Integer, Boolean 等") + parser.add_argument("--nullable", action="store_true", help="是否可为空") + parser.add_argument("--default", help="默认值") + parser.add_argument("--comment", help="注释") + parser.add_argument("--unique", action="store_true", help="是否唯一") + parser.add_argument("--index", action="store_true", help="是否创建索引") + + args = parser.parse_args() + + generate_migration_script( + args.table, + args.field, + args.type, + args.nullable, + args.default, + args.comment, + args.unique, + args.index + ) + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/scripts/run_migration.py b/scripts/run_migration.py new file mode 100644 index 0000000..d84349b --- /dev/null +++ b/scripts/run_migration.py @@ -0,0 +1,341 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +数据库迁移执行脚本 + +用法: + python scripts/run_migration.py [--revision 版本号] + +示例: + # 升级到最新版本 + python scripts/run_migration.py + + # 升级到指定版本 + python scripts/run_migration.py --revision 001 + + # 降级到指定版本 + python scripts/run_migration.py --revision 001 --downgrade + + # 生成新的迁移脚本 + python scripts/run_migration.py --generate "添加新字段" + + # 为特定表生成迁移脚本 + python scripts/run_migration.py --generate "为用户表添加邮箱字段" --table users + + # 为多个表生成迁移脚本 + python scripts/run_migration.py --generate "添加审计字段" --table users,orders,products +""" + +import argparse +import os +import sys +from pathlib import Path +import subprocess +import shutil +import tempfile +import locale +import datetime + +# 将项目根目录添加到 Python 路径 +root_dir = Path(__file__).parent.parent +sys.path.insert(0, str(root_dir)) + +# 导入项目日志模块 +from utils.logger import get_logger, setup_logger + +# 设置日志 +setup_logger() +logger = get_logger('migration') + +def create_ascii_config(original_config_path): + """ + 创建一个 ASCII 编码的配置文件副本 + + Args: + original_config_path (Path): 原始配置文件路径 + + Returns: + Path: 临时配置文件路径 + """ + # 如果临时文件已存在,直接使用 + temp_config_path = original_config_path.with_suffix('.ini.tmp') + if temp_config_path.exists(): + logger.info(f"使用已存在的临时配置文件: {temp_config_path}") + return temp_config_path + + # 创建临时文件 + logger.info(f"创建 ASCII 编码的临时配置文件: {temp_config_path}") + + # 复制配置文件内容,去除中文注释 + with open(temp_config_path, 'w', encoding='ascii', errors='ignore') as temp_file: + temp_file.write(""" +# Alembic Configuration File +# This file contains basic configuration for Alembic + +[alembic] +# Path to migration scripts +script_location = migrations + +# Template uses jinja2 format +output_encoding = utf-8 + +# Database connection configuration +# In practice, this value will be overridden by the configuration in env.py +sqlalchemy.url = driver://user:pass@localhost/dbname + +# Logging configuration +[loggers] +keys = root,sqlalchemy,alembic + +[handlers] +keys = console + +[formatters] +keys = generic + +[logger_root] +level = WARN +handlers = console +qualname = + +[logger_sqlalchemy] +level = WARN +handlers = +qualname = sqlalchemy.engine + +[logger_alembic] +level = INFO +handlers = +qualname = alembic + +[handler_console] +class = StreamHandler +args = (sys.stderr,) +level = NOTSET +formatter = generic + +[formatter_generic] +format = %(levelname)-5.5s [%(name)s] %(message)s +datefmt = %H:%M:%S +""") + + return temp_config_path + +def run_migration_command(command, args): + """ + 执行迁移命令 + + Args: + command (str): 命令名称,如 'upgrade', 'downgrade', 'revision' + args (argparse.Namespace): 命令行参数 + + Returns: + bool: 是否成功执行命令 + """ + # 获取项目根目录 + root_dir = Path(__file__).parent.parent + + # 原始配置文件路径 + original_config_path = root_dir / "migrations" / "alembic.ini" + + # 创建 ASCII 编码的临时配置文件 + temp_config_path = create_ascii_config(original_config_path) + + # 构建命令 + cmd = ["alembic", "-c", str(temp_config_path)] + + if args.verbose: + cmd.append("--verbose") + + # 打印所有参数,帮助调试 + logger.info(f"命令参数: {vars(args)}") + + if command == 'upgrade': + cmd.extend(["upgrade", args.revision or "head"]) + elif command == 'downgrade': + cmd.extend(["downgrade", args.revision or "base"]) + elif command == 'revision': + logger.info(f"生成迁移脚本,描述: {args.message}") + cmd.extend(["revision", "--autogenerate", "-m", args.message]) + + # 如果指定了表名,创建一个临时的 env.py 文件,只包含指定的表 + if args.table: + # 将表名列表转换为 Python 列表字符串 + tables = [f"'{table.strip()}'" for table in args.table.split(',')] + tables_str = f"[{', '.join(tables)}]" + + # 创建临时环境变量,传递表名列表 + os.environ["ALEMBIC_TABLES"] = args.table + logger.info(f"指定迁移表: {args.table}") + + if args.branch: + cmd.extend(["--branch", args.branch]) + elif command == 'history': + cmd.append("history") + if args.verbose: + cmd.append("-v") + elif command == 'current': + cmd.append("current") + elif command == 'show': + cmd.extend(["show", args.revision or "head"]) + elif command == 'list_tables': + # 这不是 alembic 命令,而是我们自定义的命令 + return list_database_tables() + else: + logger.error(f"未知命令: {command}") + return False + + # 执行命令 + logger.info(f"执行命令: {' '.join(cmd)}") + logger.info(f"工作目录: {root_dir}") + logger.info(f"Python 编码: {sys.getdefaultencoding()}") + logger.info(f"文件系统编码: {sys.getfilesystemencoding()}") + logger.info(f"系统默认编码: {locale.getpreferredencoding()}") + + # 设置环境变量,确保使用 UTF-8 编码 + env = os.environ.copy() + env["PYTHONIOENCODING"] = "utf-8" + + # 创建命令输出日志文件 - 使用项目日志目录 + from config.settings import LogConfig + log_config = LogConfig.as_dict() + log_dir = Path(os.path.dirname(log_config["file"])) + log_dir.mkdir(exist_ok=True) + + # 使用日期和命令类型命名日志文件 + today = datetime.datetime.now().strftime('%Y%m%d') + log_file = log_dir / f"migration_{command}_{today}.log" + + try: + # 使用直接执行命令的方式,避免 subprocess 的编码问题 + logger.info(f"正在执行迁移,日志将写入 {log_file}...") + + # 使用 subprocess.Popen 而不是 subprocess.run + with open(log_file, "a", encoding="utf-8") as f_out: + # 添加分隔线和时间戳 + f_out.write(f"\n\n{'='*80}\n") + f_out.write(f"执行时间: {datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')}\n") + f_out.write(f"执行命令: {' '.join(cmd)}\n") + f_out.write(f"{'='*80}\n\n") + + process = subprocess.Popen( + cmd, + cwd=str(root_dir), + env=env, + stdout=f_out, + stderr=subprocess.STDOUT, + text=True, + encoding="utf-8", + errors="replace" # 使用 replace 策略处理无法解码的字符 + ) + process.wait() + + # 读取日志文件 + with open(log_file, "r", encoding="utf-8") as f: + # 只读取最后 50 行,避免日志过长 + lines = f.readlines() + output = ''.join(lines[-50:]) if len(lines) > 50 else ''.join(lines) + + logger.info(f"命令执行状态: {'成功' if process.returncode == 0 else '失败'}") + logger.info(f"输出(最后部分):\n{output}") + + # 清理环境变量 + if 'ALEMBIC_TABLES' in os.environ: + del os.environ['ALEMBIC_TABLES'] + + return process.returncode == 0 + except Exception as e: + logger.error(f"执行命令时发生错误: {e}", exc_info=True) + + # 清理环境变量 + if 'ALEMBIC_TABLES' in os.environ: + del os.environ['ALEMBIC_TABLES'] + + return False + +def list_database_tables(): + """ + 列出数据库中的所有表 + + Returns: + bool: 是否成功执行命令 + """ + try: + # 导入数据库配置 + from config.database import DBConfig + + # 获取数据库连接 + engine = DBConfig.engine + + # 获取所有表名 + from sqlalchemy import inspect + inspector = inspect(engine) + tables = inspector.get_table_names() + + logger.info("数据库中的表:") + for i, table in enumerate(tables, 1): + logger.info(f"{i}. {table}") + + return True + except Exception as e: + logger.error(f"获取数据库表时发生错误: {e}", exc_info=True) + return False + +def run_migration(args): + """ + 执行数据库迁移 + + Args: + args (argparse.Namespace): 命令行参数 + + Returns: + bool: 是否成功执行迁移 + """ + # 打印所有参数,帮助调试 + logger.info(f"运行迁移,参数: {vars(args)}") + + if args.list_tables: + # 列出数据库中的所有表 + return run_migration_command('list_tables', args) + elif args.message: + # 生成新的迁移脚本 + logger.info(f"生成新的迁移脚本,描述: {args.message}") + return run_migration_command('revision', args) + elif args.history: + # 显示迁移历史 + return run_migration_command('history', args) + elif args.current: + # 显示当前版本 + return run_migration_command('current', args) + elif args.show: + # 显示指定版本的详细信息 + return run_migration_command('show', args) + elif args.downgrade: + # 降级到指定版本 + return run_migration_command('downgrade', args) + else: + # 升级到指定版本 + return run_migration_command('upgrade', args) + +def main(): + parser = argparse.ArgumentParser(description="执行数据库迁移") + parser.add_argument("--revision", help="版本号,为空表示升级到最新版本") + parser.add_argument("--downgrade", action="store_true", help="是否降级") + parser.add_argument("--verbose", "-v", action="store_true", help="显示详细日志") + parser.add_argument("--generate", "--gen", "-m", dest="message", help="生成新的迁移脚本,需要提供描述信息") + parser.add_argument("--branch", "-b", help="分支名称,用于生成迁移脚本") + parser.add_argument("--history", action="store_true", help="显示迁移历史") + parser.add_argument("--current", action="store_true", help="显示当前版本") + parser.add_argument("--show", action="store_true", help="显示指定版本的详细信息") + parser.add_argument("--table", "-t", help="指定要迁移的表名,多个表用逗号分隔") + parser.add_argument("--list-tables", action="store_true", help="列出数据库中的所有表") + + args = parser.parse_args() + + success = run_migration(args) + sys.exit(0 if success else 1) + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/services/__init__.py b/services/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/services/__pycache__/__init__.cpython-312.pyc b/services/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4a5b4a7d8bbce4a6fd1c952d339a3a9e4c6e9ce8 GIT binary patch literal 208 zcmX@j%ge<81o?|DrGx0lAOanHW&w&!XQ*V*Wb|9fP{ah}eFmxdngb-9tztrpQ;UjY zvW!fPEn-|!i?d7e3u2ybU;1S4oM+S8pX}Zi^KwqZvyDwa&a;J!W1cQq`EqgJlijn>@1vJ(vI=`kMZcOHusVtHC)il0zeUGMCT6W*7S^|a; zqOvh{%OY;#7NaIG6Rnw17Pf5sN1}g}fWf_BVlrCbuc6Gi=s!F6y|xq>$+DaD+%6f9KrZ&&{qVH^dU#V;vBFzokB z*ry}w5(3i3{inv+rqkyBIsZ>RkNZ2bhBs? zjl?1ni@Ak!TcRdcPSz=^Bz!F3lOk&YBs+#be{LJQ^ZnSJtGaRY+m_^yorzOziLcs5 zZ(bQaf6A9ijCMkj5C%Szi$Sy_MKco7fP{=+6uGEM7mW>IR~Puwc@V1gM08OqD@(y@ znS863)%bux2q)f$iQPm^}flxpZgnE1CvQlX( zPH$P^bTXk{6B=Ir<{9>($uS8UQVm#AA~^K#+1Uaf?U0ii;yPp0ko?UUH&S{PWG<2q z%GlX^iE|f{txd^}*3`w^?n!+2Ib<~lw$(hsq^Y2kXq_Zu9(MGkVnS7Q5pnVcgEJlL zSIr7{4o@3FTm+&CJ+bBuSy%L1R}5LV^;@?MSWDxkQaqph&b;Xd@nr{S1_zBWP;`(I zGgRAuPfG)puF3{Fy=r8XbiJb*BcRV1BGo`$LL%M3)R<;$fqDsDX46O%iZX>r(fSJU zEJC=rku<(x-70Zb?sA!QYM8L(hZZDZ z)u6W;l?{Zd!-VZ2Z>=N8@zE6b`? zlzd_ARU}c+4U{C4w&f&4r<*PP!&7{#FPz1+*-ozmj9d?*2~DtOv;B!mR(-B{_wVUl0hRXK$m+g;lKM>D9ILIG* zlDFvZVQc;~M4Roy;Jl}GPkhO`*u40L~dnuEe zYc4mGn^CXX{4Qd8ZAIm!Om8U%Yn89_`i^@2l9s%`5r?DsKCh&ME5zB~hfN(K7T?>g}IS84wnG6~8r=d(SQm%K+qU2nz1X}ijAjIU% zwnzN@A-;N*!@te3VC=|mB@cY@ zeO33X`wqqJ2L}0rkN5=||7nrwuggA(U^!vR;q0-z2?SGL(IlCkE;e$uSk(lA zsjuQMGU?z1x6;Mq)iA3Dc&7p(KPESYNf*~nNZt=D6=%ZK|2OavB@mR0^%jOnRcNv6 ze9%t2hSyHplr_&2o3KaICJ1= literal 0 HcmV?d00001 diff --git a/services/__pycache__/task_service.cpython-312.pyc b/services/__pycache__/task_service.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5a5243d5f65ae1ad9a0649d262239ad47455558b GIT binary patch literal 11043 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 literal 0 HcmV?d00001 diff --git a/services/__pycache__/workflow_service.cpython-312.pyc b/services/__pycache__/workflow_service.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a6b434d0d1d283dfd015e19da54c166f3fcadc01 GIT binary patch literal 6819 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 Ls{4^(ty%vcm>Rr% literal 0 HcmV?d00001 diff --git a/services/agent/__init__.py b/services/agent/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/services/agent/agent_gate.py b/services/agent/agent_gate.py new file mode 100644 index 0000000..e69de29 diff --git a/services/component_service.py b/services/component_service.py new file mode 100644 index 0000000..bfdcfb4 --- /dev/null +++ b/services/component_service.py @@ -0,0 +1,42 @@ +""" +组件服务 +""" +# services/component_service.py +from typing import Dict, Any, List +from core.component import ComponentFactory +from utils.logger import get_logger + +# 获取日志记录器 +logger = get_logger(__name__) + +class ComponentService: + """组件服务,负责组件的注册和管理""" + + def __init__(self): + self.component_factory = ComponentFactory + + def get_all_component_types(self) -> List[str]: + """获取所有组件类型""" + return self.component_factory.get_component_types() + + def register_component(self, component_type: str, component_class) -> bool: + """注册组件""" + try: + # 使用装饰器注册组件 + decorated_class = self.component_factory.register(component_type)(component_class) + + logger.info(f"注册组件: {component_type} -> {decorated_class.__name__}") + + return True + except Exception as e: + logger.error(f"注册组件失败: {component_type}, 错误: {str(e)}") + return False + + def auto_discover_components(self, package_name: str = "components") -> None: + """自动发现并注册组件""" + try: + self.component_factory.auto_discover(package_name) + logger.info(f"自动发现组件完成: {package_name}") + except Exception as e: + logger.error(f"自动发现组件失败: {package_name}, 错误: {str(e)}") + raise \ No newline at end of file diff --git a/services/intelligence/__init__.py b/services/intelligence/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/services/intelligence/embedding.py b/services/intelligence/embedding.py new file mode 100644 index 0000000..e778a77 --- /dev/null +++ b/services/intelligence/embedding.py @@ -0,0 +1,3 @@ +""" +向量模型 +""" \ No newline at end of file diff --git a/services/task_service.py b/services/task_service.py new file mode 100644 index 0000000..5603353 --- /dev/null +++ b/services/task_service.py @@ -0,0 +1,275 @@ +""" +任务服务 +""" +# services/task_service.py +from typing import Dict, Any, List, Optional +import json +import time +import uuid +import datetime +from core.workflow import WorkflowDefinition +from services.workflow_service import WorkflowService +from config.database import db_session +from config.task_config import get_task_type_name, TaskTypeConfig, TaskStatusConfig, TaskType, TaskStatus +from utils.logger import get_logger + +# 获取日志记录器 +logger = get_logger(__name__) + +class TaskService: + """任务服务,负责任务的CRUD操作和管理""" + + def __init__(self): + self.workflow_service = WorkflowService() + # 导入Task模型 + from data.models.task import Task, TaskType as DBTaskType + self.Task = Task + self.TaskType = DBTaskType + # 实际实现中,这里应该使用数据库存储任务记录 + # 这里简化为使用内存存储 + self._tasks = {} + + def create_task(self, name: str, task_type: str, version: int = 1, + description: str = "", template_desc: str = "用户自有模板", + is_scheduled: bool = False) -> Dict[str, Any]: + """创建任务""" + try: + # 验证任务类型是否在配置中存在 + if task_type not in TaskTypeConfig.DETAILS: + logger.warning(f"未知的任务类型: {task_type},使用默认类型{TaskTypeConfig.NORMAL}") + task_type = TaskTypeConfig.NORMAL + + # 将字符串类型转换为枚举类型 + try: + task_type_enum = self.TaskType[task_type] + except (KeyError, AttributeError): + # 如果找不到对应的枚举值,默认使用NORMAL类型 + logger.warning(f"无法将任务类型 {task_type} 转换为枚举,使用默认类型NORMAL") + task_type_enum = self.TaskType.NORMAL + + # 使用Task模型的create_task方法创建任务并写入数据库 + task_obj = self.Task.create_task( + name=name, + task_type=task_type_enum, + description=description, + template_description=template_desc, + is_scheduled=is_scheduled + ) + + # 使用to_json方法转换为字典 + task = task_obj.to_json() + + # 添加版本信息 + task["version"] = version + + logger.info(f"创建任务: {task['name']} (ID: {task['task_id']})") + + return task + except Exception as e: + logger.error(f"创建任务失败: {str(e)}") + raise + + def execute_task(self, task_id: str) -> Dict[str, Any]: + """执行任务""" + try: + # 从数据库中获取任务 + task_obj = self.Task.get_by_uuid(task_id) + + if not task_obj: + raise ValueError(f"找不到任务: {task_id}") + + # 执行任务逻辑... + # 这里简化为直接返回成功 + current_time = int(time.time() * 1000) + result = { + "task_status": "completed", + "executing_robot": "robot-001", + "success": True, + "message": "任务执行成功" + } + + # 使用to_json方法转换为字典 + task = task_obj.to_json() + + # 添加执行结果相关字段 + task.update({ + "task_status": result["task_status"], + "updated_at": current_time, + "start_time": current_time, + "end_time": current_time, + "executing_robot": result["executing_robot"], + "result": result + }) + + logger.info(f"执行任务成功: {task['name']} (ID: {task_id})") + + return task + except Exception as e: + logger.error(f"执行任务失败: {str(e)}") + raise + + def get_task_by_id(self, task_id: str) -> Optional[Dict[str, Any]]: + """根据ID获取任务""" + try: + # 从数据库中获取任务 + task_obj = self.Task.get_by_uuid(task_id) + + if not task_obj: + return None + + # 使用to_json方法转换为字典 + return task_obj.to_json() + except Exception as e: + logger.error(f"获取任务失败: {str(e)}") + return None + + def get_all_tasks(self, status: Optional[str] = None, + task_type: Optional[str] = None, + name: Optional[str] = None, + is_scheduled: Optional[bool] = None, + created_start: Optional[int] = None, + created_end: Optional[int] = None, + sort_by: str = "created_at", + sort_order: str = "desc", + page: int = 1, + page_size: int = 10) -> tuple[List[Dict[str, Any]], int]: + """ + 获取任务列表 + + Args: + status (str, optional): 任务状态 + task_type (str, optional): 任务类型 + name (str, optional): 任务名称(模糊查询) + is_scheduled (bool, optional): 是否为定时任务 + created_start (int, optional): 创建时间起始(毫秒时间戳) + created_end (int, optional): 创建时间结束(毫秒时间戳) + sort_by (str): 排序字段,可选值:created_at, updated_at, name + sort_order (str): 排序方式,可选值:asc, desc + page (int): 页码 + page_size (int): 每页数量 + + Returns: + tuple: (任务列表, 总数) + """ + try: + # 构建查询 + query = self.Task.query.filter(self.Task.is_deleted == False) + + # 应用筛选条件 + if status: + # 处理枚举值 + if hasattr(status, "value"): + status = status.value + # 实际应该关联任务记录表查询状态 + # 这里简化处理,假设任务状态存储在任务表中 + pass + + if task_type: + # 处理枚举值 + if hasattr(task_type, "value"): + task_type = task_type.value + query = query.filter(self.Task.task_type == task_type) + + if name: + query = query.filter(self.Task.name.like(f"%{name}%")) + + if is_scheduled is not None: + query = query.filter(self.Task.is_scheduled == is_scheduled) + + if created_start: + # 将毫秒时间戳转换为datetime + created_start_dt = datetime.datetime.fromtimestamp(created_start / 1000) + query = query.filter(self.Task.created_at >= created_start_dt) + + if created_end: + # 将毫秒时间戳转换为datetime + created_end_dt = datetime.datetime.fromtimestamp(created_end / 1000) + query = query.filter(self.Task.created_at <= created_end_dt) + + # 获取总数 + total = query.count() + + # 应用排序 + # 处理枚举值 + if hasattr(sort_by, "value"): + sort_by = sort_by.value + + if sort_by == "created_at": + order_column = self.Task.created_at + elif sort_by == "updated_at": + order_column = self.Task.updated_at + elif sort_by == "name": + order_column = self.Task.name + else: + order_column = self.Task.created_at + + # 处理枚举值 + if hasattr(sort_order, "value"): + sort_order = sort_order.value + + if sort_order.lower() == "asc": + query = query.order_by(order_column.asc()) + else: + query = query.order_by(order_column.desc()) + + # 应用分页 + query = query.offset((page - 1) * page_size).limit(page_size) + + # 获取查询结果 + task_objs = query.all() + + # 使用to_json方法转换为字典列表 + tasks = [task_obj.to_json() for task_obj in task_objs] + + return tasks, total + except Exception as e: + logger.error(f"获取任务列表失败: {str(e)}") + return [], 0 + + def cancel_task(self, task_id: str) -> Dict[str, Any]: + """取消任务""" + try: + # 从数据库中获取任务 + task_obj = self.Task.get_by_uuid(task_id) + + if not task_obj: + logger.error(f"取消任务失败: 找不到任务 {task_id}") + raise ValueError(f"找不到任务: {task_id}") + + # 使用to_json方法转换为字典 + task = task_obj.to_json() + + # 更新任务状态为已取消 + task.update({ + "task_status": "cancelled", + "updated_at": int(time.time() * 1000) + }) + + logger.info(f"取消任务: {task['name']} (ID: {task_id})") + + return task + except Exception as e: + logger.error(f"取消任务失败: {str(e)}") + raise + + def delete_task(self, task_id: str) -> bool: + """删除任务""" + try: + # 从数据库中获取任务 + task_obj = self.Task.get_by_uuid(task_id) + + if not task_obj: + logger.error(f"删除任务失败: 找不到任务 {task_id}") + return False + + # 软删除任务 + task_obj.is_deleted = True + task_obj.updated_at = datetime.datetime.now() + db_session.commit() + + logger.info(f"删除任务: {task_id}") + + return True + except Exception as e: + logger.error(f"删除任务失败: {str(e)}") + return False \ No newline at end of file diff --git a/services/workflow_service.py b/services/workflow_service.py new file mode 100644 index 0000000..8ed2b5b --- /dev/null +++ b/services/workflow_service.py @@ -0,0 +1,148 @@ +# services/workflow_service.py +""" +工作流服务 +""" +from typing import Dict, Any, List, Optional +import json +import time +import uuid +from core.workflow import WorkflowDefinition, WorkflowExecutor +from core.exceptions import WorkflowError +from utils.logger import get_logger + +# 获取日志记录器 +logger = get_logger(__name__) + +class WorkflowService: + """工作流服务,负责工作流的CRUD操作和执行""" + + def __init__(self): + self.workflow_executor = WorkflowExecutor() + # 实际实现中,这里应该使用数据库存储工作流定义 + # 这里简化为使用内存存储 + self._workflows = {} + + def create_workflow(self, name: str, workflow_type: str = "normal", + description: str = "", blocks: List[Dict[str, Any]] = None, + variables: Dict[str, Any] = None, schedule: Dict[str, Any] = None) -> WorkflowDefinition: + """创建工作流""" + workflow_id = f"wf_{uuid.uuid4().hex}" + + workflow = WorkflowDefinition(workflow_id, name, workflow_type) + workflow.description = description + + if blocks: + workflow.blocks = blocks + + if variables: + workflow.variables = variables + + if schedule and workflow_type == "scheduled": + workflow.set_schedule(schedule) + + # 保存工作流 + self._workflows[workflow_id] = workflow + + logger.info(f"创建工作流: {name} (ID: {workflow_id})") + + return workflow + + def update_workflow(self, workflow_id: str, name: Optional[str] = None, + description: Optional[str] = None, blocks: Optional[List[Dict[str, Any]]] = None, + variables: Optional[Dict[str, Any]] = None, + schedule: Optional[Dict[str, Any]] = None) -> Optional[WorkflowDefinition]: + """更新工作流""" + if workflow_id not in self._workflows: + logger.error(f"更新工作流失败: 找不到工作流 {workflow_id}") + return None + + workflow = self._workflows[workflow_id] + + if name is not None: + workflow.name = name + + if description is not None: + workflow.description = description + + if blocks is not None: + workflow.blocks = blocks + + if variables is not None: + workflow.variables = variables + + if schedule is not None: + workflow.set_schedule(schedule) + + # 更新时间戳 + workflow.updated_at = int(time.time() * 1000) + + # 保存更新后的工作流 + self._workflows[workflow_id] = workflow + + logger.info(f"更新工作流: {workflow.name} (ID: {workflow_id})") + + return workflow + + def delete_workflow(self, workflow_id: str) -> bool: + """删除工作流""" + if workflow_id not in self._workflows: + logger.error(f"删除工作流失败: 找不到工作流 {workflow_id}") + return False + + # 删除工作流 + del self._workflows[workflow_id] + + logger.info(f"删除工作流: {workflow_id}") + + return True + + def get_workflow_by_id(self, workflow_id: str) -> Optional[WorkflowDefinition]: + """根据ID获取工作流""" + return self._workflows.get(workflow_id) + + def get_all_workflows(self, workflow_type: Optional[str] = None) -> List[WorkflowDefinition]: + """获取所有工作流""" + if workflow_type: + return [wf for wf in self._workflows.values() if wf.workflow_type == workflow_type] + else: + return list(self._workflows.values()) + + def execute_workflow(self, workflow: WorkflowDefinition, + task_inputs: Dict[str, Any] = None) -> Dict[str, Any]: + """执行工作流""" + try: + # 执行工作流 + result = self.workflow_executor.execute(workflow, task_inputs) + + # 记录执行结果 + # 实际实现中,这里应该将执行结果保存到数据库 + + return result + except Exception as e: + logger.error(f"执行工作流失败: {workflow.name} (ID: {workflow.workflow_id}), 错误: {str(e)}") + raise WorkflowError(f"执行工作流失败: {str(e)}") + + def import_workflow(self, workflow_json: str) -> WorkflowDefinition: + """导入工作流""" + try: + workflow = WorkflowDefinition.from_json(workflow_json) + + # 保存导入的工作流 + self._workflows[workflow.workflow_id] = workflow + + logger.info(f"导入工作流: {workflow.name} (ID: {workflow.workflow_id})") + + return workflow + except Exception as e: + logger.error(f"导入工作流失败: {str(e)}") + raise WorkflowError(f"导入工作流失败: {str(e)}") + + def export_workflow(self, workflow_id: str) -> str: + """导出工作流""" + workflow = self.get_workflow_by_id(workflow_id) + + if not workflow: + logger.error(f"导出工作流失败: 找不到工作流 {workflow_id}") + raise WorkflowError(f"导出工作流失败: 找不到工作流 {workflow_id}") + + return workflow.to_json() \ No newline at end of file diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/utils/__init__.py b/utils/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/utils/__pycache__/__init__.cpython-312.pyc b/utils/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ebf5b0478b454b71dcfe09f7ae70add43ffa073e GIT binary patch literal 205 zcmX@j%ge<81S=L@N(a%8K?FMZ%mNgd&QQsq$>_I|p@<2{`wUX^H4{iUTg8MHrxq2* zWEq(nTg14e7H5~_7sNc>zVyl7InSoGKiR!4=H;A*XB(SbC%bn) z?OKQ;QIeUMmzJ8B9$%7JoE=kIl9^K+6Ca2KczG$)vkyYXfGoW Q7lRldnHd=wikwi~&&-b10 z@9%s)-#PuIrpAF_bQH6KW=H4|S8pmD|{={Fi#}|{jHk+x& zq-mQO<+KN*RhWFH73C_J>}h+fg-T7Dwwlo(-xgCtxwPH1Py-cd`AkG?5&KoPQc*U| z{>Lorsx0QO@`5TyIBNN#8n620w^FPorJiuI{yj$(wfsLh()ch6I#T3}KbgP#_|ANB z>T==Ul#WNBy>*+&ALB*cJ|fBSu-YF*Xa+5j&Inp`E*?Jq_6e0&bmx)q@MtR8C8ZLo z&V9_wqo438L1$C4C`OO$3VLMH&N>@bh9c2nRkuirj+0^asLn>Bav~h(bvu7Ns;CMH zI?97k(OH3qdq$OYR+Iz*?i<~fN+x+($G!dC1A0}r0Z9cx6r%MkWoYvmfj~)Zg3R6XbM9-$2h$*Fb-F zZ;ycq_5!&9+)$}V4#JiSr8{LwQilj|0L7M}=(WRALXkv%hzhDnk?Bg|Afc~3{t{r( z)fswU;bkQh+xf<>-Jt`#GO9|+P~pbq#XA>@XHPBO`XRJ*AyfSRQ&yVuVi!LuyzV4W-nmsDw)B+LI@Y8l;kCxN<9GX5mw!aFu4zQ#-2L zkasm}uI8-kmCU=au60ca$YSLF5uccZqRVU^!glbS+=A4&3Sh~a|h;_th@Cyc7b!}IlspF zX9B-+t;<$a-}aP4>o(=RZJM_&>wPsduz=lp?9;GsrZI=N837wL+&H~2huZ)}ePDsB zn|xE_8W&vtg?i6Z7T4P|eajAHbLH_y4R4%|<#5pS+mpjv!OvEm#~uxPCSzIb&*N4N zw_feIwr>u?zV!e*%gSgL`|>!b;o#N4we54;bGY+&r}sYgu0X}naOHV~1v!7@TiFKF z%bw13<>7;NW>P=kTg*#sr&dnNz z#yvFE>8y!(aW8nnnB*ojOYIQWl&2_l8m$R`J3)*aCK^w_q8U>AG} z@qlAnkE-2yXOre^ntm_qY`%}1})tsRV)B6PF?>k>4xt1Qo%ikT-ML$}r3$wB|Qd^$_iNh_?KRTbXq$A2JT6 H#qj str: + """生成唯一ID""" + return f"{prefix}{uuid.uuid4().hex}" + +def get_current_timestamp() -> int: + """获取当前时间戳(毫秒)""" + return int(time.time() * 1000) + +def format_timestamp(timestamp: int, format_str: str = "%Y-%m-%d %H:%M:%S") -> str: + """格式化时间戳""" + return time.strftime(format_str, time.localtime(timestamp / 1000)) + +def parse_json(json_str: str, default=None) -> Any: + """解析JSON字符串""" + try: + return json.loads(json_str) + except Exception: + return default + +def to_json(obj: Any, pretty: bool = False) -> str: + """转换为JSON字符串""" + if pretty: + return json.dumps(obj, ensure_ascii=False, indent=2) + else: + return json.dumps(obj, ensure_ascii=False) + +def merge_dicts(dict1: Dict[str, Any], dict2: Dict[str, Any]) -> Dict[str, Any]: + """合并两个字典""" + result = dict1.copy() + result.update(dict2) + return result + +def filter_dict(data: Dict[str, Any], keys: List[str]) -> Dict[str, Any]: + """过滤字典,只保留指定的键""" + return {k: v for k, v in data.items() if k in keys} + +def exclude_dict(data: Dict[str, Any], keys: List[str]) -> Dict[str, Any]: + """过滤字典,排除指定的键""" + return {k: v for k, v in data.items() if k not in keys} \ No newline at end of file diff --git a/utils/logger.py b/utils/logger.py new file mode 100644 index 0000000..a48cf82 --- /dev/null +++ b/utils/logger.py @@ -0,0 +1,61 @@ +# utils/logger.py +import logging +import os +from logging.handlers import RotatingFileHandler +from config.settings import LogConfig + +def setup_logger(): + """设置日志""" + # 获取日志配置 + LOG_CONFIG = LogConfig.as_dict() + + # 创建日志目录 + log_dir = os.path.dirname(LOG_CONFIG["file"]) + if not os.path.exists(log_dir): + os.makedirs(log_dir) + + # 设置日志级别 + log_level = getattr(logging, LOG_CONFIG["level"].upper(), logging.INFO) + + # 设置日志格式 + log_format = logging.Formatter(LOG_CONFIG["format"]) + + # 创建根日志记录器 + root_logger = logging.getLogger() + root_logger.setLevel(log_level) + + # 清除现有处理器 + for handler in root_logger.handlers[:]: + root_logger.removeHandler(handler) + + # 添加控制台处理器 + console_handler = logging.StreamHandler() + console_handler.setFormatter(log_format) + root_logger.addHandler(console_handler) + + # 添加文件处理器 + file_handler = RotatingFileHandler( + LOG_CONFIG["file"], + maxBytes=10 * 1024 * 1024, # 10MB + backupCount=5 + ) + file_handler.setFormatter(log_format) + root_logger.addHandler(file_handler) + + # 设置第三方库的日志级别 + logging.getLogger("werkzeug").setLevel(logging.WARNING) + logging.getLogger("urllib3").setLevel(logging.WARNING) + + return root_logger + +def get_logger(name): + """ + 获取指定名称的日志记录器 + + Args: + name (str): 日志记录器名称,通常为模块名称 + + Returns: + logging.Logger: 日志记录器实例 + """ + return logging.getLogger(name) \ No newline at end of file diff --git a/utils/validator.py b/utils/validator.py new file mode 100644 index 0000000..919245f --- /dev/null +++ b/utils/validator.py @@ -0,0 +1,52 @@ +# utils/validator.py +from typing import Dict, Any, List, Optional, Callable +from core.exceptions import ValidationError + +def validate_required_fields(data: Dict[str, Any], required_fields: List[str]) -> None: + """验证必要字段""" + missing_fields = [field for field in required_fields if field not in data] + + if missing_fields: + raise ValidationError(f"缺少必要字段: {', '.join(missing_fields)}") + +def validate_field_type(data: Dict[str, Any], field: str, expected_type: type) -> None: + """验证字段类型""" + if field in data and not isinstance(data[field], expected_type): + raise ValidationError(f"字段 {field} 类型错误,期望类型: {expected_type.__name__}") + +def validate_field_value(data: Dict[str, Any], field: str, validator: Callable[[Any], bool], error_message: str) -> None: + """验证字段值""" + if field in data and not validator(data[field]): + raise ValidationError(f"字段 {field} 值无效: {error_message}") + +def validate_workflow_definition(workflow_data: Dict[str, Any]) -> None: + """验证工作流定义""" + # 验证必要字段 + validate_required_fields(workflow_data, ["name"]) + + # 验证字段类型 + validate_field_type(workflow_data, "name", str) + validate_field_type(workflow_data, "workflow_type", str) + validate_field_type(workflow_data, "blocks", list) + validate_field_type(workflow_data, "variables", dict) + + # 验证工作流类型 + if "workflow_type" in workflow_data: + valid_types = ["normal", "scheduled"] + if workflow_data["workflow_type"] not in valid_types: + raise ValidationError(f"无效的工作流类型: {workflow_data['workflow_type']}, 有效类型: {', '.join(valid_types)}") + + # 验证块定义 + if "blocks" in workflow_data: + for i, block in enumerate(workflow_data["blocks"]): + validate_block_definition(block, i) + +def validate_block_definition(block: Dict[str, Any], index: int) -> None: + """验证块定义""" + # 验证必要字段 + validate_required_fields(block, ["id", "type"]) + + # 验证字段类型 + validate_field_type(block, "id", str) + validate_field_type(block, "type", str) + validate_field_type(block, "params", dict) \ No newline at end of file diff --git a/天风任务-编辑页面说明.md b/天风任务-编辑页面说明.md new file mode 100644 index 0000000..1eddfd0 --- /dev/null +++ b/天风任务-编辑页面说明.md @@ -0,0 +1,367 @@ +# 天风任务-编辑页面详细说明 + +## 页面布局 + +### 顶部区域 +- **标题栏**:显示任务名称和ID +- **返回按钮**:返回到任务列表页面 +- **用户信息**:显示当前登录用户信息 +- **功能按钮区**:包含各种操作按钮 + +### 主要内容区域 +- **左侧组件面板**:提供可用的组件类型 +- **中央流程图编辑区**:用于设计和编辑任务流程图 +- **中间参数区域**:显示常用参数和变量 +- **右侧属性面板**:设置选中组件的参数和属性 + +## 顶部功能按钮 + +- **保存**: + - 保存当前任务配置 + - 快捷键:Ctrl+S + - 保存成功后显示提示信息 + +- **运行**: + - 执行当前任务 + - 任务开始执行后跳转到任务监控页面 + - 仅当任务配置有效时可用 + +- **撤销/重做**: + - 撤销上一步操作(Ctrl+Z) + - 重做已撤销的操作(Ctrl+Y) + - 显示操作历史记录 + +- **全选/全不选**: + - 选择或取消选择所有组件 + - 快捷键:Ctrl+A(全选) + +- **任务基本设置**: + - 打开任务基本信息配置面板 + - 设置任务名称、优先级等基本信息 + +- **任务输入参数**: + - 打开任务输入参数配置面板 + - 定义任务执行所需的输入参数 + +- **复制/粘贴**: + - 复制选中的组件(Ctrl+C) + - 粘贴已复制的组件(Ctrl+V) + - 支持跨任务复制粘贴 + +- **源码**: + - 查看和编辑生成的最终JS代码 + - 支持代码高亮和语法检查 + - 修改源码后可同步更新可视化流程图 + +- **备份**: + - 创建当前任务配置的备份 + - 支持添加备份说明 + - 查看历史备份记录 + +- **运行测试任务**: + - 在测试环境中执行当前任务 + - 不影响生产环境 + - 显示测试进度和状态 + +- **查看测试结果**: + - 查看任务测试执行结果 + - 显示详细的执行日志和数据 + - 支持错误分析和调试 + +## 左侧组件面板 + +- **搜索框**: + - 快速查找所需组件 + - 支持按组件名称、功能关键词搜索 + - 实时过滤显示匹配结果 + +- **组件分类列表**: + - **子任务**:可重用的任务单元 + - **脚本**:JavaScript脚本组件 + - **HTTP请求**:网络请求组件 + - **任务**:任务管理组件 + - **流程**:流程控制组件(If-Else、循环等) + - **基础**:基础功能组件 + - **库位**:库位操作组件 + - **仿真**:仿真测试组件 + - **机器人调度**:机器人控制组件 + - **设备**:设备交互组件 + +- **组件拖拽**: + - 支持将组件拖拽到中央编辑区 + - 显示拖拽预览效果 + - 自动对齐和吸附功能 + +## 中央流程图编辑区 + +- **主要工作区域**: + - 用于设计和编辑任务流程图 + - 支持组件拖拽、连接和排列 + - 可视化展示任务执行流程和组件间的关系 + +- **组件操作**: + - 单击选中组件 + - 双击打开组件配置 + - 拖动移动组件 + - 调整组件大小 + - 右键菜单提供更多操作 + +- **连接操作**: + - 拖拽连接点创建组件间连接 + - 点击连接线选中 + - 双击连接线添加条件 + - 删除连接线 + +- **多选操作**: + - 按住Shift键多选组件 + - 框选多个组件 + - 批量移动、复制、删除 + +- **视图控制**: + - 缩放流程图(鼠标滚轮或缩放按钮) + - 平移视图(按住空格键拖动) + - 自动布局(整理组件排列) + - 网格对齐(辅助精确定位) + +- **状态显示**: + - 组件状态指示(有效、错误、警告) + - 执行路径高亮 + - 数据流向指示 + +## 中间参数区域 + +- **常用参数**: + - 用于选择操作机器人的ID值 + - 指定任务执行的目标机器人 + - 快速访问常用配置参数 + +- **任务基本变量**: + - **task.id**:任务的唯一标识 + - **task.taskRecordId**:任务实例ID + - **task.defLabel**:任务名称 + - **task.createdOn**:创建时间 + - **task.variables**:任务变量集合 + - **task.priority**:任务优先级 + +- **任务输入参数**: + - 显示从顶部配置的输入参数 + - 格式:taskInputs.参数名 + - 支持参数搜索和筛选 + - 显示参数类型和默认值 + +- **快输出及上下文参数**: + - 显示任务执行过程中的输出参数 + - 显示上下文变量 + - 支持变量搜索和筛选 + - 实时更新变量值(测试执行时) + +## 右侧属性面板 + +- **组件属性配置**: + - 显示当前选中组件的所有可配置属性 + - 根据组件类型动态变化 + - 支持基本类型(文本、数字、布尔值等) + - 支持复杂类型(对象、数组、表达式等) + +- **参数设置**: + - 配置组件的输入/输出参数 + - 参数绑定(引用其他组件的输出或系统变量) + - 参数映射和转换 + +- **条件表达式**: + - 编辑条件组件的判断逻辑 + - 支持复杂表达式 + - 提供表达式构建器 + - 支持变量引用和函数调用 + +- **代码编辑**: + - 编写和修改脚本组件的代码 + - 支持代码高亮和自动完成 + - 提供常用代码片段 + - 实时语法检查 + +- **连接配置**: + - 设置组件的前置和后续节点 + - 配置连接条件和优先级 + - 管理异常处理路径 + +- **实时验证**: + - 提供配置错误的即时反馈 + - 显示警告和提示信息 + - 配置建议和最佳实践 + +## 任务编辑页面核心功能 + +### 1. 任务基本信息配置 + +- **任务ID**:系统自动生成,用户可查看但无需手动配置 +- **任务名称**:可在基本设置中修改 +- **任务描述**:详细说明任务的用途和功能 +- **任务标签**:用于分类和筛选任务 +- **任务优先级**:设置任务的执行优先级 + +### 2. 任务输入参数配置 + +- **参数定义**: + - 添加、编辑、删除参数 + - 设置参数名称、类型、默认值、描述 + - 设置参数是否必填 + +- **参数类型支持**: + - 字符串、数字、布尔值 + - 日期时间 + - 对象、数组 + - 枚举(下拉选项) + +- **参数验证规则**: + - 设置参数的有效范围 + - 自定义验证规则 + - 错误提示信息 + +### 3. 机器人选择配置 + +- **机器人选择**: + - 指定具体的机器人ID + - 选择机器人类型 + - 设置动态选择规则 + +- **机器人筛选条件**: + - 根据位置筛选 + - 根据状态筛选(电量、负载等) + - 根据能力筛选 + +- **多机器人协同**: + - 配置多机器人任务 + - 设置协同规则和优先级 + +### 4. 上下文参数管理 + +- **参数创建**: + - 定义上下文变量 + - 设置初始值和类型 + - 设置变量作用域 + +- **参数访问**: + - 在组件中引用变量 + - 变量值的读取和修改 + - 变量生命周期管理 + +- **参数监控**: + - 查看变量当前值 + - 跟踪变量值变化 + - 调试变量问题 + +### 5. 条件逻辑配置 + +- **条件组件**: + - If、If-Else、If-Else-If + - Switch-Case + - 条件循环(while、do-while) + +- **条件表达式**: + - 比较运算(等于、大于、小于等) + - 逻辑运算(与、或、非) + - 复合条件 + - 函数调用 + +- **分支处理**: + - 配置条件分支 + - 设置默认分支 + - 嵌套条件 + +### 6. 数据存储与传递 + +- **变量操作**: + - 创建和修改变量 + - 变量类型转换 + - 变量作用域管理 + +- **数据持久化**: + - 数据库操作 + - 文件存储 + - 缓存管理 + +- **数据传递**: + - 组件间数据传递 + - 任务间数据共享 + - 外部系统数据交换 + +### 7. 组件连接与流程控制 + +- **顺序执行**: + - 按预定顺序执行组件 + - 设置执行条件和优先级 + +- **并行执行**: + - 同时执行多个分支 + - 管理并行任务 + - 同步点设置 + +- **循环执行**: + - 重复执行特定流程 + - 设置循环条件和次数 + - 循环控制(break、continue) + +- **错误处理**: + - 异常捕获和处理 + - 重试机制 + - 回滚操作 + +## 使用流程 + +1. **打开任务**: + - 从任务列表中选择任务 + - 系统加载任务配置 + - 显示任务流程图和属性 + +2. **设计流程**: + - 从左侧组件面板拖拽组件到中央编辑区 + - 连接组件,定义执行流程 + - 配置组件属性和参数 + +3. **设置参数**: + - 配置任务输入参数 + - 设置组件参数 + - 定义上下文变量 + +4. **测试任务**: + - 点击"运行测试任务"按钮 + - 查看测试执行结果 + - 调试和优化流程 + +5. **保存任务**: + - 点击"保存"按钮 + - 系统验证任务配置 + - 保存成功后显示提示信息 + +6. **执行任务**: + - 点击"运行"按钮 + - 系统开始执行任务 + - 跳转到任务监控页面 + +## 最佳实践 + +1. **流程设计**: + - 保持流程简洁清晰 + - 合理分组和组织组件 + - 使用注释说明复杂逻辑 + +2. **错误处理**: + - 为关键操作添加错误处理 + - 设置合理的重试策略 + - 记录详细的错误信息 + +3. **参数管理**: + - 使用有意义的参数名称 + - 设置合适的默认值 + - 添加参数描述和验证规则 + +4. **性能优化**: + - 避免不必要的组件和操作 + - 合理使用并行执行 + - 优化数据处理逻辑 + +5. **版本控制**: + - 定期创建任务备份 + - 记录重要更改 + - 测试验证后再应用到生产环境 \ No newline at end of file diff --git a/天风任务模块需求文档.md b/天风任务模块需求文档.md new file mode 100644 index 0000000..9ee2256 --- /dev/null +++ b/天风任务模块需求文档.md @@ -0,0 +1,1437 @@ +# 产品需求文档 - 天风任务模块 + +## 前言 + +本文档描述AMR调度系统中天风任务模块的产品需求,包括功能设计、交互流程和界面要素。天风任务模块是AMR调度系统的核心组件之一,用于管理和监控机器人任务的全生命周期。 + +## 一、版本信息 + +|版本号|创建日期|审核人| +|---|---|---| +|V1.0|2024-03-12|| + +## 二、变更日志 + +|时间|版本号|变更人|主要变更内容| +|---|---|---|---| +|2024-03-12|V1.0||初始版本创建| + +## 三、文档说明 + +### 名词解释 + +|术语 / 缩略词|说明| +|---|---| +|AMR|自主移动机器人(Autonomous Mobile Robot)的简称,指能够自主规划路径、避障和导航的移动机器人| +|天风任务|AMR调度系统中的一个任务模块,用于管理和调度机器人任务的全生命周期| +|任务状态|任务的当前执行状态,包括待执行、执行中、已完成、已取消、执行失败、暂停中、等待中等| +|任务类型|任务的分类,包括普通任务(立即执行的一次性任务)和定时任务(按照预设时间执行的任务)| +|低代码配置工具|一种可视化编程工具,允许用户通过拖拽、配置等方式定义任务流程和逻辑,无需编写大量代码| +|组件|低代码配置工具中的功能模块,用于实现特定功能,如脚本组件、HTTP请求组件、流程组件等| +|子任务|可重用的任务单元,可以被其他任务引用和调用,用于实现任务的模块化和代码复用| + +### 任务类型说明 + +|任务类型|说明|适用场景| +|---|---|---| +|普通任务|立即执行的一次性任务|需要立即执行的各类操作,如物料运输、巡检、设备控制等| +|定时任务|按照预设时间执行的任务|需要在特定时间执行的操作,如定时巡检、定时数据采集、定时设备维护等| + +### 任务状态说明 + +|任务状态|说明| +|---|---| +|待执行|任务已创建但尚未开始执行| +|执行中|任务正在执行过程中| +|已完成|任务已成功完成所有操作| +|已取消|任务被用户手动取消| +|执行失败|任务执行过程中遇到错误无法继续| +|暂停中|任务暂时被暂停,可以继续执行| +|等待中|任务在等待某些条件满足后继续执行| + +### 流程图 + +天风任务模块主要流程:创建任务 -> 编写执行逻辑脚本 -> 点击执行 -> 任务开始运行 -> 监控任务执行状态 + +## 四、需求背景 + +### 产品现状 + +目前AMR调度系统需要一个高效的任务管理模块,以便更好地管理和监控机器人任务的执行情况。现有系统缺乏统一的任务管理界面,导致任务创建、分配和监控过程繁琐,效率低下。 + +### 需求范围 + +本次需求主要包括天风任务模块的主页面设计和创建/编辑页面设计,实现任务的创建、编辑、执行和管理功能,提高任务管理效率和用户体验。 + +### 所属模块 + +|需求描述|解决方案|对应需求矩阵需求序号| +|---|---|---| +|任务管理|提供任务列表、创建、编辑、删除功能|TF-001| +|任务监控|提供任务状态实时监控|TF-002| +|任务分配|提供机器人任务分配和调度功能|TF-003| + +## 五、功能详细说明 + +### 产品流程图 + +用户登录 -> 进入天风任务模块 -> 查看任务列表 -> 创建任务 -> 编写执行逻辑脚本 -> 点击执行 -> 监控任务执行状态 + +### 交互原型图 + +主页面展示了任务列表和相关操作按钮,编辑页面将展示任务的编辑选项。 + +### 功能说明 + +|序号|页面|原型|要素详细说明|规则说明| +|---|---|---|---|---| +|1|天风任务-主页面|主页面1.png
主页面2.png|包含以下字段:
- 任务ID:唯一标识任务的编号
- 任务名称:描述任务的名称
- 任务类型:任务的分类
- 任务状态:当前任务的执行状态
- 版本:任务的版本号
- 备注:任务的附加说明信息
- 模板描述:任务使用的模板信息
- 是否为定时任务:标识任务是否为定时执行
- 创建时间:任务创建的时间
- 开始时间:任务开始执行的时间
- 结束时间:任务完成的时间
- 执行机器人:执行任务的机器人ID或名称
- 操作按钮:对任务进行操作的按钮

页面顶部功能按钮:
- 定义新任务:创建新的任务
- 刷新:刷新任务列表
- 删除:删除选中的任务
- 导入:导入任务配置
- 导出:导出任务配置
- 视图切换:切换任务列表的显示方式

详细说明参见:[天风任务-主页面说明.md](天风任务-主页面说明.md)|1. 任务列表支持分页显示
2. 支持按任务状态筛选(待执行、执行中、已完成、已取消等)
3. 支持按任务名称、ID搜索
4. 支持按创建时间、开始时间排序
5. 操作按钮包括编辑、删除、取消任务等
6. 页面顶部提供创建新任务、刷新、删除、导入导出和视图切换按钮
7. 页面右侧提供任务统计信息
8. 导入导出功能支持任务配置的备份和恢复
9. 视图切换支持列表视图和其他自定义视图
10. 版本字段显示任务的当前版本号,支持版本历史查看
11. 定时任务显示下次执行时间| +|2|天风任务-创建页||创建任务时只需填写两个必填项:
- 任务名称(必填):描述任务的名称
- 任务类型(必填):选择普通任务或定时任务

详细说明参见:[天风任务-创建页面说明.md](天风任务-创建页面说明.md)|1. 创建任务时只需填写任务名称和选择任务类型(普通任务或定时任务)
2. 任务名称支持中文、英文、数字和特殊字符
3. 任务类型包括普通任务和定时任务两种
4. 对于定时任务,可以设置执行时间和重复规则| +|3|天风任务-编辑页||编辑页面主要用于配置机器人的执行逻辑,包括:
- 中央流程图编辑区:通过拖拽组件设计任务流程图
- 左侧组件面板:提供可用的组件类型
- 右侧属性面板:设置选中组件的参数和属性
- 中间参数区域:显示常用参数和变量
- 任务基本设置:配置任务ID、名称、优先级等基本信息
- 任务输入参数设置:定义任务执行所需的输入参数

页面顶部功能按钮:
- 保存:保存当前任务配置
- 运行:执行当前任务
- 撤销/重做:撤销或重做编辑操作
- 全选/全不选:选择或取消选择所有组件
- 任务基本设置:配置任务基本信息
- 任务输入参数:设置任务输入参数
- 复制/粘贴:复制或粘贴选中的组件
- 源码:查看和编辑生成的最终JS代码
- 备份:创建当前任务配置的备份
- 运行测试任务:测试执行当前任务
- 查看测试结果:查看任务测试执行结果

左侧组件面板:
- 搜索框:快速查找所需组件
- 组件分类列表:包含子任务、脚本、HTTP请求、任务、流程等多种组件类型

中央流程图编辑区:
- 主要工作区域,用于设计和编辑任务流程图
- 支持组件拖拽、连接和排列
- 可视化展示任务执行流程和组件间的关系
- 支持多选、移动、复制组件
- 提供网格对齐和自动布局功能
- 显示组件状态和连接关系

中间参数区域:
- 常用参数:用于选择操作机器人的ID值,指定任务执行的目标机器人
- 任务:显示任务的基本变量(task.id、task.taskRecordId、task.defLabel等)
- 任务输入参数:显示从顶部配置的输入参数(taskInputs.xxx)
- 快输出及上下文参数:显示任务执行过程中的输出参数和上下文变量

右侧属性面板:
- 组件属性配置:显示当前选中组件的所有可配置属性
- 参数设置:配置组件的输入/输出参数
- 条件表达式:编辑条件组件的判断逻辑
- 代码编辑:编写和修改脚本组件的代码
- 连接配置:设置组件的前置和后续节点
- 实时验证:提供配置错误的即时反馈

详细说明参见:[天风任务-编辑页面说明.md](天风任务-编辑页面说明.md)|1. 编辑页面主要用于通过低代码方式配置机器人的执行逻辑
2. 支持通过拖拽方式添加和连接各种功能组件
3. 支持设置组件的属性和参数
4. 支持保存、运行、测试任务
5. 支持撤销/重做编辑操作
6. 支持复制/粘贴组件
7. 支持查看任务执行结果
8. 支持查看和编辑生成的最终JS源代码
9. 支持创建任务配置的备份和恢复
10. 左侧组件面板支持搜索功能,方便快速查找所需组件
11. 中间参数区域提供常用参数、任务基本变量、输入参数和上下文参数的访问
12. 右侧属性面板提供组件详细配置,随选中组件变化而动态更新
13. 对于定时任务,支持修改执行时间和重复规则| +#### 1. 天风任务-主页面 +**主要功能**: +- 任务列表展示:显示所有任务及其状态 +- 任务筛选与搜索:按状态、名称等条件筛选任务 +- 任务操作:创建、编辑、删除、执行任务 +- 任务导入导出:支持任务配置的导入和导出 + +**关键字段**: +- 任务ID、任务名称、任务类型、任务状态 +- 版本、创建时间、开始/结束时间 +- 执行机器人、操作按钮 + +**详细说明参见**:[天风任务-主页面说明.md](天风任务-主页面说明.md) + +#### 2. 天风任务-创建页面 + +**主要功能**: +- 创建新任务:设置任务基本信息 +- 任务类型选择:普通任务或定时任务 + +**必填项**: +- 任务名称:描述任务的名称 +- 任务类型:选择普通任务或定时任务 + +**详细说明参见**:[天风任务-创建页面说明.md](天风任务-创建页面说明.md) + +#### 3. 天风任务-编辑页面 + +**主要功能**: +- 任务流程设计:通过拖拽组件设计任务流程 +- 组件配置:设置各组件的参数和属性 +- 任务测试与执行:测试和运行任务 + +**主要区域**: +- 中央流程图编辑区:设计任务流程 +- 左侧组件面板:提供可用组件 +- 右侧属性面板:配置组件属性 +- 顶部工具栏:保存、运行、测试等操作 + +**核心配置功能**: + +1. **任务输入参数配置** + - 支持定义任务执行所需的输入参数(名称、类型、默认值等) + - 参数以`taskInputs.参数名`的形式在系统中访问 + - 支持多种数据类型(字符串、数字、布尔值、对象、数组等) + +2. **机器人选择配置** + - 在常用参数部分选择操作的机器人 + - 支持静态选择(指定特定机器人)或动态选择(根据条件选择) + - 支持基于机器人状态的智能分配 + +3. **上下文参数管理** + - 查看和管理任务执行过程中的上下文变量 + - 支持在组件之间传递数据和状态 + - 通过`${变量名}`引用上下文变量 + +4. **条件逻辑配置** + - 支持If、If-Else、If-Else-If等条件组件 + - 配置复杂条件表达式,实现业务逻辑分支 + - 支持嵌套条件,实现复杂的条件逻辑 + +5. **数据存储与传递** + - 定义和使用各类变量存储任务数据 + - 支持数据持久化和缓存机制 + - 使用键值对形式管理数据 + +6. **组件连接与流程控制** + - 通过可视化连接定义组件间的执行顺序 + - 使用流程控制节点(分支、合并、循环、并行) + - 配置错误处理和异常捕获机制 + +**详细说明参见**:[天风任务-编辑页面说明.md](天风任务-编辑页面说明.md) + +#### 组件类型 + +1. **子任务组件**:用于创建和管理子任务,支持任务的层级结构和模块化 + +2. **脚本组件**:支持编写自定义脚本,实现复杂的业务逻辑 + +3. **HTTP请求组件**:用于与外部系统进行通信,发送HTTP请求并处理响应 + +4. **任务组件**:基本任务单元,包含任务的核心属性和行为 + +5. **流程组件**:控制任务执行流程,如条件判断、循环等 + +6. **基础组件**:提供基础功能,如变量操作、数据转换等 + +7. **库位组件**:与工位或库位相关的组件,用于定位和操作 + +8. **机器人调度组件**:控制和管理机器人的调度和执行 + +9. **设备组件**:与外部设备交互的组件 + +#### 使用流程 + +1. **创建任务**:点击创建任务按钮,输入任务名称和选择任务类型(普通任务或定时任务) + +2. **查看基本信息**:系统自动生成任务ID等基本信息,用户可以查看但无需手动配置 + +3. **设计任务流程**: + - 从左侧组件面板拖拽所需组件到中央编辑区 + - 配置各组件的属性和参数 + - 连接组件,定义执行流程和数据流向 + +4. **配置条件逻辑**: + - 添加If-Else等条件组件 + - 设置条件表达式和分支处理逻辑 + +5. **设置输入参数**:定义任务执行所需的输入参数和默认值 + +6. **测试任务**:使用测试功能验证任务配置的正确性 + +7. **保存任务**:保存任务配置,生成可执行的任务定义 + +8. **发布任务**:将任务发布到系统中,使其可被调度和执行 + +#### 高级功能 + +1. **任务模板**: + - 将常用任务配置保存为模板 + - 基于模板快速创建新任务 + - 模板管理和版本控制 + +2. **源码查看与编辑**: + - 查看低代码配置生成的最终JS代码 + - 支持直接编辑源代码进行高级定制 + - 源码与可视化配置的双向同步 + +3. **任务备份与恢复**: + - 创建任务配置的完整备份 + - 支持从备份恢复任务配置 + - 备份历史管理和版本比较 + +4. **变量和表达式**: + - 支持复杂表达式编写 + - 变量引用和计算 + - 条件表达式求值 + +5. **调试和测试**: + - 任务执行模拟 + - 断点设置和单步执行 + - 执行日志和结果查看 + +6. **版本控制**: + - 任务配置的版本管理 + - 历史版本比较和回滚 + - 变更记录和审计 + +#### 使用场景示例 + +1. **条件执行场景**: + - 使用If-Else组件判断输入参数taskInputs.input_01的值 + - 根据条件值执行不同的任务分支 + - 设置条件表达式和默认处理逻辑 + +2. **数据处理场景**: + - 使用变量存储和处理任务数据 + - 配置数据转换和计算逻辑 + - 将处理结果传递给下游组件 + +3. **机器人调度场景**: + - 配置机器人选择和分配逻辑 + - 设置任务执行参数和约束条件 + - 处理执行异常和故障恢复 + +### 子任务功能详细说明 + +子任务是天风任务模块中的核心概念之一,它允许用户将复杂的任务拆分为多个可重用的子任务,并通过组合和嵌套这些子任务来构建更复杂的任务流程。 + +#### 子任务概述 + +子任务是一个独立的、可重用的任务单元,它可以被其他任务引用和调用。通过子任务机制,用户可以: + +1. **模块化任务设计**:将复杂任务拆分为多个功能明确的子任务 +2. **提高代码复用**:一次创建,多处使用,减少重复工作 +3. **简化任务维护**:修改子任务定义,所有引用该子任务的地方都会自动更新 +4. **提高可读性**:通过合理的子任务命名和组织,使任务流程更加清晰 + +#### 子任务列表 + +系统中已创建的子任务会在左侧组件面板的"子任务"分类下列出,用户可以直接拖拽使用。子任务列表示例: + +- test1 +- 测试_cc +- 0903ta's'k +- 1212 +- ta's'k +- R +- test +- 北大科研_task +- newtask +- Prod2WH +- WH2Prod + +#### 子任务嵌套 + +天风任务模块支持多层子任务嵌套,即一个子任务可以引用其他子任务,形成任务的层级结构。这种嵌套能力使得任务组织更加灵活和强大: + +1. **层级结构**:支持多层嵌套,理论上没有嵌套深度限制(但建议控制在合理范围内) +2. **参数传递**:上层任务可以向嵌套的子任务传递参数 +3. **结果返回**:子任务可以将执行结果返回给上层任务 +4. **条件执行**:可以根据条件决定是否执行特定的子任务 +5. **并行执行**:支持多个子任务的并行执行 + +#### 子任务参数配置 + +当将子任务从左侧组件面板拖拽到流程编辑区后,需要对子任务进行参数配置。子任务参数配置界面包含以下主要部分: + +1. **基本信息区域**: + - 显示子任务的名称和类型(例如:"test1 b1 子任务") + +2. **核心参数配置**: + - **是否异步执行任务**(可选项): + - 选择是否以异步方式执行子任务 + + - **任务变量ID**(必选项): + - 指定子任务的唯一标识符 + + - **输入参数配置**: + - 根据子任务定义的输入参数进行配置 + + - **输出参数映射**(可选项): + - 定义子任务输出结果与上层任务变量的映射关系 + +详细说明参见:[天风任务-子任务功能说明.md](天风任务-子任务功能说明.md) +### 脚本组件功能详细说明 + +脚本组件是天风任务模块低代码配置工具中的核心功能之一,它允许用户通过编写和配置JavaScript脚本来实现复杂的业务逻辑和数据处理功能。脚本组件为任务流程提供了灵活的编程能力,使用户能够突破标准组件的限制,实现个性化的任务处理逻辑。 + +脚本组件有两种主要使用方式: + +1. **运行脚本(执行脚本)**: + - 编写JavaScript代码并执行 + - 可以访问任务上下文和变量(如task对象、taskInputs对象等) + - 执行完成后返回结果,供后续组件使用 + - 支持异步操作和Promise + - 可以进行数据处理、计算、转换等操作 + +2. **脚本设置task.variables**: + - 用于设置和管理任务变量 + - 可以创建、修改、删除task.variables中的值 + - 这些变量可以在整个任务流程中共享和访问 + - 适用于存储任务状态、中间结果和配置信息 + +#### 脚本组件参数配置 + +当将脚本组件从左侧组件面板拖拽到流程编辑区后,需要对脚本进行参数配置。脚本参数配置界面包含以下主要部分: + +1. **基本信息区域**: + - 显示脚本组件的名称和类型(例如:"运行脚本 b1"或"脚本设置task.variables b2") + +2. **核心参数配置**: + - **函数名**(可选项): + - 定义脚本中的主函数名称 + - 用于组织代码结构和提高可读性 + - 默认可以不填,直接编写脚本代码 + + - **参数**(可选项): + - 定义传递给脚本的参数 + - 可以是固定值、变量引用或表达式 + - 支持多个参数的配置 + + - **脚本代码**(必选项): + - 编写JavaScript代码实现所需功能 + - 可以访问任务上下文和输入参数 + - 支持完整的JavaScript语法和特性 + + - **返回值配置**(可选项): + - 定义脚本执行结果的处理方式 + - 可以将结果存储到任务变量中 + +3. **参数值格式**: + - 支持简单值和JSON格式的参数输入 + - 提供参数格式切换和验证功能 + +**脚本组件的主要特点**: +- 支持完整的JavaScript语法 +- 可以访问系统提供的API和工具函数 +- 支持错误捕获和异常处理 +- 可以与其他组件交互,接收输入和提供输出 +- 支持复杂逻辑的实现,如条件判断、循环、函数定义等 + +**适用场景**: +- 数据转换和处理:格式转换、数据清洗、计算派生值等 +- 复杂业务规则实现:实现无法用标准组件表达的业务逻辑 +- 系统集成:处理API响应、格式化请求数据等 +- 动态决策:根据运行时条件动态决定执行路径 +- 批量操作:处理数组和集合数据 +- 状态管理:维护和更新任务执行状态 + +详细信息请参考[脚本组件详细说明文档](天风任务-脚本组件说明.md)。 + +### HTTP请求组件 + +HTTP请求组件是天风任务模块中用于与外部系统进行数据交互的核心组件,支持GET和POST请求方法和多种数据格式。 + +#### HTTP请求组件功能 + +1. **基本功能**: + - 支持GET和POST常用HTTP方法 + - 提供灵活的请求配置和响应处理 + - 支持多种数据格式和认证方式 + - 提供错误处理和重试机制 + +2. **高级功能**: + - 请求链和条件请求 + - 响应缓存和批量处理 + - 文件上传和下载 + - 代理设置和安全通信 + +#### HTTP请求参数配置 + +1. **GET请求参数配置**: + - **请求的URL**(必选项): + - 指定请求的目标地址 + - 支持使用变量构建动态URL + - 例如:`https://api.example.com/users/${task.variables.userId}` + + - **Header**(可选项): + - 配置HTTP请求头信息 + - 支持添加多个请求头字段 + - 常用于配置认证信息和内容类型 + + - **超时设置**(可选项): + - 设置请求超时时间(毫秒) + - 超过设定时间后,系统会终止请求 + + - **重试设置**(可选项): + - 配置请求失败时的重试策略 + - 包括重试次数和重试间隔 + +2. **POST请求参数配置**: + - **请求的URL**(必选项): + - 与GET请求配置相同 + + - **请求的参数**(可选项): + - 配置POST请求体中的数据 + - 支持JSON、Form等多种格式 + - 可以使用变量引用和动态构建 + + - **Header**(可选项): + - 与GET请求配置相同 + - POST请求通常需要设置Content-Type + + - **类型**(可选项): + - 指定请求体的内容类型 + - 常用选项包括:JSON、Form等 + + - **超时和重试设置**(可选项): + - 与GET请求配置相同 + +3. **响应处理配置**: + - **响应数据映射**: + - 将响应数据映射到任务变量 + - 支持提取特定字段或整个响应体 + + - **响应状态处理**: + - 根据HTTP状态码定义成功和失败条件 + - 为不同状态码配置不同的处理逻辑 + + - **错误处理**: + - 定义请求失败时的处理策略 + - 选项包括:继续执行、终止任务、跳转到指定节点等 + +4. **参数值格式**: + - **简单值**:直接输入的固定值 + - **JSON**:以JSON格式输入的复杂数据结构 + - **表达式**:使用`${}`语法引用变量或编写表达式 + +#### HTTP请求响应数据 + +HTTP请求组件执行后,会生成以下响应数据: + +1. **GET请求响应**: + - 存储在`blocks.bX.response`变量中(其中bX为组件ID) + - 可以在后续组件中引用该变量 + - 支持使用路径表达式提取嵌套数据 + +2. **POST请求响应**: + - 同样存储在`blocks.bX.response`变量中 + - 对于JSON响应,支持使用点表示法访问属性 + - 例如:`${blocks.b2.response.data.id}` + +### 任务组件功能详细说明 + +任务组件是天风任务模块低代码配置工具中的核心系统模块,它提供了一系列用于任务数据管理、流程控制和状态操作的功能。作为内置的系统模块,任务组件为编辑处理流程提供了强大的支持,使用户能够轻松地实现任务数据的存储、获取、清除和管理,以及任务状态的控制和事件的触发。 + +任务组件主要包括以下功能类别: + +1. **数据存储与获取**: + - 缓存数据:将数据临时存储在任务上下文中 + - 清除缓存数据:清除已缓存的临时数据 + - 获取缓存数据:读取已缓存的临时数据 + - 获取任务的输入参数:读取传递给任务的输入参数 + +2. **任务状态控制**: + - 设置任务状态:修改任务的当前状态 + - 跳到某个块:在任务流程中跳转到指定的节点 + +3. **变量管理**: + - 设置任务变量:定义或修改任务的变量 + +### 任务组件参数配置界面 + +当将任务组件从左侧组件面板拖拽到流程编辑区后,需要对组件进行参数配置。任务组件参数配置界面会根据组件类型的不同而有所差异,主要包含以下几个部分: + +#### 1. 缓存数据组件参数配置界面 + +缓存数据组件用于将数据临时存储在任务上下文中,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"缓存数据 b1" + +- **核心参数配置**: + - **缓存key**(必选项): + - 指定缓存数据的唯一标识符 + - 用于后续获取或清除该缓存数据 + - 支持使用简单值或表达式 + + - **缓存value**(必选项): + - 指定要缓存的数据值 + - 支持简单值、JSON格式或表达式 + - 可以引用任务变量或输入参数 + +- **参数值格式**: + - 支持简单值和JSON格式的参数输入 + - 提供参数格式切换功能 + +#### 2. 清除缓存数据组件参数配置界面 + +清除缓存数据组件用于清除已缓存的临时数据,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"清除缓存数据 b2" + +- **核心参数配置**: + - **key**(必选项): + - 指定要清除的缓存数据的标识符 + - 与缓存数据组件中的缓存key对应 + +#### 3. 获取缓存数据组件参数配置界面 + +获取缓存数据组件用于读取已缓存的临时数据,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"获取缓存数据 b3" + +- **核心参数配置**: + - **缓存key**(必选项): + - 指定要获取的缓存数据的标识符 + - 与缓存数据组件中的缓存key对应 + +- **响应数据**: + - 获取的缓存数据将存储在`blocks.b3.value`变量中 + - 可以在后续组件中通过`${blocks.b3.value}`引用 + +#### 4. 获取任务的输入参数组件参数配置界面 + +获取任务的输入参数组件用于读取传递给任务的输入参数,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"获取任务的输入参数 b4" + +- **核心参数配置**: + - **任务实例 Id**(必选项): + - 指定要获取输入参数的任务实例ID + - 可以使用表达式引用变量 + + - **输入参数名**(必选项): + - 指定要获取的输入参数的名称 + - 与任务创建时定义的输入参数对应 + +- **响应数据**: + - 获取的输入参数值将存储在`blocks.b4.inputParamValue`变量中 + - 可以在后续组件中通过`${blocks.b4.inputParamValue}`引用 + +#### 5. 设置任务状态组件参数配置界面 + +设置任务状态组件用于修改任务的当前状态,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"设置任务状态 b5" + +- **核心参数配置**: + - **状态描述**(必选项): + - 指定要设置的任务状态描述 + - 可以使用简单值或表达式 + - 用于记录任务状态变更的原因或说明 + +#### 6. 跳到某个块组件参数配置界面 + +跳到某个块组件用于在任务流程中跳转到指定的节点,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"跳到某个块 b6" + +- **核心参数配置**: + - **跳到块的标识**(必选项): + - 指定要跳转到的目标块的标识符 + - 可以使用简单值或表达式 + - 必须是流程中已存在的有效块ID + +#### 7. 设置任务变量组件参数配置界面 + +设置任务变量组件用于定义或修改任务的变量,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"设置任务变量 b1" + +- **核心参数配置**: + - **变量名**(必选项): + - 指定要设置的变量名称 + - 用于在任务执行过程中引用该变量 + - 支持使用简单值 + + - **变量值**(必选项): + - 指定要设置的变量值 + - 支持简单值、JSON格式或表达式 + - 可以引用任务变量或输入参数 + +- **参数值格式**: + - 支持简单值和JSON格式的参数输入 + - 提供参数格式切换功能 + - 可以使用JSON格式设置复杂的数据结构 + +详细信息请参考[任务组件详细说明文档](天风任务-任务组件说明.md)。 + +## 流程组件功能详细说明 + +流程组件是天风任务模块低代码配置工具中的核心系统模块,它提供了一系列用于控制任务执行流程的功能。流程组件包含了所有流程的基本逻辑,如条件判断、循环执行、并行处理、异常处理等,使用户能够灵活地设计复杂的任务执行路径,实现各种业务场景下的流程控制需求。 + +流程组件主要包括以下类型: + +1. **条件控制组件**: + - **break**:中断当前循环,跳出循环体 + - **延迟**:暂停流程执行一段时间 + - **If**:单条件判断,满足条件时执行指定分支 + - **If-Else**:双分支条件判断,根据条件执行不同分支 + - **If-Else-If**:多分支条件判断,支持多个条件和对应分支 + - **return**:结束当前流程并返回结果 + - **while**:基于条件的循环,当条件满足时重复执行 + +2. **数据处理组件**: + - **遍历数组**:对数组中的每个元素执行指定操作 + +3. **并行处理组件**: + - **并行执行**:同时执行多个分支 + - **并发执行N次**:并行执行同一流程多次 + - **串行执行**:按顺序执行多个分支 + - **串行执行N次**:重复执行同一流程多次 + +4. **异常处理组件**: + - **抛出异常**:主动抛出异常,中断当前流程 + - **停止其他的并行分支**:在并行执行中停止其他分支的执行 + +详细信息请参考[流程组件详细说明文档](天风任务-流程组件说明.md)。 + +## 基础组件功能详细说明 + +基础组件是天风任务模块低代码配置工具中的核心功能组件集合,提供了一系列常用的基础功能,如数据验证、ID生成、时间处理、数据库操作、数据转换等。这些组件作为任务流程中的基础构建块,可以满足大多数常见的业务需求,无需编写复杂的代码即可实现各种基础功能。 + +基础组件主要包括以下类型: + +1. **数据验证组件**: + - **校验任务实例Id是否存在**:验证指定的任务实例ID是否在系统中存在 + +2. **ID生成组件**: + - **创建唯一-id**:生成全局唯一的标识符 + +3. **时间处理组件**: + - **当前时间戳**:获取当前的时间戳(毫秒级) + - **当前时间**:获取格式化的当前时间 + +4. **数据库操作组件**: + - **执行sql**:执行SQL语句进行数据库操作(增、删、改) + - **查询sql**:执行SQL查询语句获取数据 + +5. **数据转换组件**: + - **字符串Md5加密**:将字符串进行MD5加密 + - **将字符串转换成JSON数组**:将JSON格式的字符串转换为JSON数组对象 + - **将字符串转换成JSON对象**:将JSON格式的字符串转换为JSON对象 + +6. **打印组件**: + - **打印**:将数据发送到打印设备进行打印 + +详细信息请参考[基础组件详细说明文档](天风任务-基础组件说明.md)。 + +### 基础组件参数配置界面 + +当将基础组件从左侧组件面板拖拽到流程编辑区后,需要对组件进行参数配置。基础组件参数配置界面会根据组件类型的不同而有所差异,主要包含以下几个部分: + +#### 1. 校验任务实例Id是否存在组件参数配置界面 + +校验任务实例Id是否存在组件用于验证指定的任务实例ID是否在系统中存在,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"校验任务实例Id是否存在 b1" + +- **核心参数配置**: + - **任务实例Id**(必选项): + - 指定要验证的任务实例ID + - 支持使用简单值或表达式 + - 可以引用任务变量或输入参数 + +- **响应数据**: + - 验证结果将存储在`blocks.b1.exists`变量中 + - 返回布尔值,表示任务实例ID是否存在 + - 可以在后续组件中通过`${blocks.b1.exists}`引用 + +#### 2. 创建唯一-id组件参数配置界面 + +创建唯一-id组件用于生成全局唯一的标识符,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"创建唯一-id b2" + +- **核心参数配置**: + - **ID类型**(可选项): + - 指定生成的ID类型,如UUID、自增ID等 + - 默认为UUID格式 + + - **前缀**(可选项): + - 指定ID的前缀字符串 + - 可用于区分不同业务场景的ID + +- **响应数据**: + - 生成的唯一ID将存储在`blocks.b2.id`变量中 + - 可以在后续组件中通过`${blocks.b2.id}`引用 + +#### 3. 当前时间戳组件参数配置界面 + +当前时间戳组件用于获取当前的时间戳,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"当前时间戳 b3" + +- **核心参数配置**: + - **时间单位**(可选项): + - 指定时间戳的单位,如毫秒、秒等 + - 默认为毫秒级时间戳 + +- **响应数据**: + - 当前时间戳将存储在`blocks.b3.timestamp`变量中 + - 可以在后续组件中通过`${blocks.b3.timestamp}`引用 + +#### 4. 执行sql组件参数配置界面 + +执行sql组件用于执行SQL语句进行数据库操作,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"执行sql b4" + +- **核心参数配置**: + - **sql语句**(必选项): + - 指定要执行的SQL语句 + - 支持INSERT、UPDATE、DELETE等操作 + - 可以使用参数化SQL语句,使用?作为参数占位符 + + - **sql参数**(可选项): + - 指定SQL语句中参数占位符的值 + - 支持简单值、JSON格式或表达式 + - 可以引用任务变量或输入参数 + +- **响应数据**: + - 执行结果将存储在`blocks.b4.result`变量中 + - 返回影响的行数和执行状态 + - 可以在后续组件中通过`${blocks.b4.result}`引用 + +#### 5. 查询sql组件参数配置界面 + +查询sql组件用于执行SQL查询语句获取数据,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"查询sql b5" + +- **核心参数配置**: + - **sql语句**(必选项): + - 指定要执行的SQL查询语句 + - 支持SELECT操作 + - 可以使用参数化SQL语句,使用?作为参数占位符 + + - **sql参数**(可选项): + - 指定SQL语句中参数占位符的值 + - 支持简单值、JSON格式或表达式 + - 可以引用任务变量或输入参数 + +- **响应数据**: + - 查询结果将存储在`blocks.b5.result`变量中 + - 返回查询结果集,可能是单行数据、多行数据或空结果 + - 可以在后续组件中通过`${blocks.b5.result}`引用 + +#### 6. 字符串Md5加密组件参数配置界面 + +字符串Md5加密组件用于将字符串进行MD5加密,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"字符串Md5加密 b6" + +- **核心参数配置**: + - **字符串**(必选项): + - 指定要加密的字符串 + - 支持简单值或表达式 + - 可以引用任务变量或输入参数 + + - **大小写**(可选项): + - 指定加密结果的大小写格式 + - 可选值:大写、小写 + - 默认为小写 + + - **盐值**(可选项): + - 指定加密使用的盐值 + - 用于增强加密安全性 + +- **响应数据**: + - 加密结果将存储在`blocks.b6.md5`变量中 + - 返回MD5加密后的字符串 + - 可以在后续组件中通过`${blocks.b6.md5}`引用 + +#### 7. 将字符串转换成JSON数组组件参数配置界面 + +将字符串转换成JSON数组组件用于将JSON格式的字符串转换为JSON数组对象,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"将字符串转换成JSON数组 b7" + +- **核心参数配置**: + - **需要转换的字符串**(必选项): + - 指定要转换的JSON格式字符串 + - 支持简单值或表达式 + - 可以引用任务变量或输入参数 + + - **默认值**(可选项): + - 指定转换失败时的默认值 + - 默认为空数组 [] + +- **响应数据**: + - 转换结果将存储在`blocks.b7.jsonArray`变量中 + - 返回JSON数组对象 + - 可以在后续组件中通过`${blocks.b7.jsonArray}`引用 + +#### 8. 将字符串转换成JSON对象组件参数配置界面 + +将字符串转换成JSON对象组件用于将JSON格式的字符串转换为JSON对象,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"将字符串转换成JSON对象 b8" + +- **核心参数配置**: + - **需要转换的字符串**(必选项): + - 指定要转换的JSON格式字符串 + - 支持简单值或表达式 + - 可以引用任务变量或输入参数 + + - **默认值**(可选项): + - 指定转换失败时的默认值 + - 默认为空对象 {} + +- **响应数据**: + - 转换结果将存储在`blocks.b8.jsonObject`变量中 + - 返回JSON对象 + - 可以在后续组件中通过`${blocks.b8.jsonObject}`引用 + - 支持使用点表示法访问对象属性,如`${blocks.b8.jsonObject.name}` + +#### 9. 打印组件参数配置界面 + +打印组件用于将数据发送到打印设备进行打印,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"打印 b9" + +- **核心参数配置**: + - **打印内容**(必选项): + - 指定要打印的内容 + - 支持简单值、JSON格式或表达式 + - 可以引用任务变量或输入参数 + - 可以包含格式化文本或HTML内容 + + - **打印机**(可选项): + - 指定目标打印设备 + - 默认使用系统默认打印机 + - 可以通过名称或ID指定特定打印机 + + - **打印份数**(可选项): + - 指定打印的份数 + - 默认为1份 + - 支持使用表达式动态设置 + + - **打印选项**(可选项): + - 指定其他打印选项,如纸张大小、方向等 + - 支持JSON格式配置 + - 可以设置页边距、缩放比例等高级选项 + +- **响应数据**: + - 打印结果将存储在`blocks.b9.result`变量中 + - 返回打印状态和结果信息 + - 可以在后续组件中通过`${blocks.b9.result}`引用 + - 包含打印是否成功、错误信息等状态数据 + +## 库位组件功能详细说明 + +库位组件是天风任务模块低代码配置工具中的专用功能组件集合,提供了一系列用于管理和操作仓库库位的功能。这些组件使AMR调度系统能够高效地执行库位相关的操作,如库位设置、查询、锁定/解锁、状态修改等,为仓库管理和物流操作提供了强大的支持。 + +库位组件主要包括以下类型: + +1. **库位设置组件**: + - **批量设置库位**:批量修改多个库位的状态或属性 + - **设置库位扩展属性**:为库位添加或修改扩展属性 + - **设置库位货物**:为库位分配或更新货物信息 + - **设置库位为空**:将库位状态设置为空闲 + - **设置库位为占用**:将库位状态设置为已占用 + - **设置库位标签**:为库位设置标识标签 + +2. **库位获取组件**: + - **获取密集库位**:获取指定区域内的密集库位信息 + - **获取库位扩展属性值**:读取库位的扩展属性值 + +3. **库位查询组件**: + - **查询库位**:根据条件查询库位信息 + +4. **库位锁定组件**: + - **锁定库位**:将库位状态设置为锁定 + - **解锁库位**:解除库位的锁定状态 + +6. **特殊库位操作组件**: + - **根据任务实例ID获取所有加锁库位**:查询特定任务锁定的所有库位 + +详细信息请参考[库位组件详细说明文档](天风任务-库位组件说明.md)。 + +### 库位组件参数配置界面 + +当将库位组件从左侧组件面板拖拽到流程编辑区后,需要对组件进行参数配置。库位组件参数配置界面会根据组件类型的不同而有所差异,主要包含以下几个部分: + +#### 1. 批量设置库位组件参数配置界面 + +批量设置库位组件用于批量修改多个库位的状态或属性,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"批量设置库位 b1" + +- **核心参数配置**: + - **库位Ids**(必选项): + - 指定要设置的库位ID列表 + - 支持使用简单值、JSON数组或表达式 + - 可以引用任务变量或输入参数 + + - **库区集**(可选项): + - 指定要设置的库区范围 + - 可以与库位Ids结合使用,扩大设置范围 + + - **占用**(可选项): + - 指定是否将库位设置为占用状态 + - 可选值:是/否 + + - **是否物料**(可选项): + - 指定库位是否包含物料 + - 可选值:是/否 + + - **是否物料锁定**(可选项): + - 指定库位中的物料是否被锁定 + - 可选值:是/否 + +- **响应数据**: + - 设置结果将存储在`blocks.b1.siteId`变量中 + - 返回操作影响的库位ID列表 + - 可以在后续组件中通过`${blocks.b1.siteId}`引用 + +#### 2. 获取密集库位组件参数配置界面 + +获取密集库位组件用于获取指定区域内的密集库位信息,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"获取密集库位 b2" + +- **核心参数配置**: + - **库区集**(必选项): + - 指定要查询的库区范围 + - 支持使用简单值或表达式 + - 可以引用任务变量或输入参数 + + - **取/放**(可选项): + - 指定库位的操作类型 + - 可选值:取/放 + - 用于筛选适合特定操作的库位 + + - **货物(取)**(可选项,当选择"取"操作时显示): + - 指定要取出的货物类型 + - 用于筛选包含特定货物的库位 + + - **获取库位后是否自动锁定**(可选项): + - 指定是否自动锁定查询到的库位 + - 防止其他任务使用同一库位 + + - **是否重试**(可选项): + - 指定查询失败时是否重试 + - 可以设置重试次数和间隔 + +- **响应数据**: + - 查询结果将存储在`blocks.b2.siteId`变量中 + - 返回符合条件的库位ID列表 + - 可以在后续组件中通过`${blocks.b2.siteId}`引用 + +#### 3. 查询库位组件参数配置界面 + +查询库位组件用于根据条件查询库位信息,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"查询库位 b3" + +- **核心参数配置**: + - **库位ID**(可选项): + - 指定要查询的特定库位ID + - 支持使用简单值或表达式 + + - **货物**(可选项): + - 指定要查询的货物类型 + - 用于筛选包含特定货物的库位 + + - **是否有货物**(可选项): + - 指定是否查询包含货物的库位 + - 可选值:是/否/不限 + + - **是否为公平锁**(可选项): + - 指定是否查询带有公平锁的库位 + - 可选值:是/否/不限 + + - **是否为库存**(可选项): + - 指定是否查询库存类型的库位 + - 可选值:是/否/不限 + + - **重试时间间隔(ms)**(可选项): + - 指定查询失败时的重试间隔 + - 单位为毫秒 + +- **响应数据**: + - 查询结果将存储在`blocks.b3.siteId`变量中 + - 返回符合条件的库位详细信息 + - 可以在后续组件中通过`${blocks.b3.siteId}`引用 + +#### 4. 根据任务实例ID获取所有加锁库位组件参数配置界面 + +根据任务实例ID获取所有加锁库位组件用于查询特定任务锁定的所有库位,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"根据任务实例ID获取所有加锁库位 b4" + +- **核心参数配置**: + - **任务实例Id**(必选项): + - 指定要查询的任务实例ID + - 支持使用简单值或表达式 + - 可以引用任务变量或输入参数 + +- **响应数据**: + - 查询结果将存储在`blocks.b4.siteId`变量中 + - 返回该任务锁定的所有库位ID列表 + - 可以在后续组件中通过`${blocks.b4.siteId}`引用 + +#### 5. 获取库位扩展属性值组件参数配置界面 + +获取库位扩展属性值组件用于读取库位的扩展属性值,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"获取库位扩展属性值 b5" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要查询的库位ID + - 支持使用简单值或表达式 + + - **属性名称**(必选项): + - 指定要获取的扩展属性名称 + - 必须是库位已定义的有效属性名 + +- **响应数据**: + - 查询结果将存储在`blocks.b5.value`变量中 + - 返回指定属性的值 + - 可以在后续组件中通过`${blocks.b5.value}`引用 + +#### 6. 锁定库位组件参数配置界面 + +锁定库位组件用于将库位状态设置为锁定,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"锁定库位 b6" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要锁定的库位ID + - 支持使用简单值或表达式 + + - **锁定原因**(可选项): + - 指定锁定库位的原因 + - 用于记录锁定操作的目的 + + - **锁定时间**(可选项): + - 指定锁定的持续时间 + - 超过该时间后自动解锁 + +- **响应数据**: + - 锁定结果将存储在`blocks.b6.result`变量中 + - 返回锁定操作的状态和结果 + - 可以在后续组件中通过`${blocks.b6.result}`引用 + +#### 7. 解锁库位组件参数配置界面 + +解锁库位组件用于解除库位的锁定状态,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"解锁库位 b7" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要解锁的库位ID + - 支持使用简单值或表达式 + - 可以引用任务变量或输入参数 + + - **解锁原因**(可选项): + - 指定解锁库位的原因 + - 用于记录解锁操作的目的 + +- **响应数据**: + - 解锁结果将存储在`blocks.b7.result`变量中 + - 返回解锁操作的状态和结果 + - 可以在后续组件中通过`${blocks.b7.result}`引用 + +#### 8. 查询库位组件参数配置界面 + +查询库位组件用于根据条件查询库位信息,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"查询库位 b1" + +- **核心参数配置**: + - **库位ID**(可选项): + - 指定要查询的特定库位ID + - 支持使用简单值或表达式 + + - **货物**(可选项): + - 指定要查询的货物类型 + - 用于筛选包含特定货物的库位 + + - **是否有货物**(可选项): + - 指定是否查询包含货物的库位 + - 可选值:是/否/不限 + + - **是否已锁定**(可选项): + - 指定是否查询已锁定的库位 + - 可选值:是/否/不限 + + - **是否物理库位**(可选项): + - 指定是否查询物理库位 + - 可选值:是/否/不限 + + - **库区名**(可选项): + - 指定要查询的库区名称 + - 用于筛选特定区域的库位 + + - **是否为顺序**(可选项): + - 指定查询结果的排序方式 + - 可选值:是/否 + +- **响应数据**: + - 查询结果将存储在`blocks.b1.site`变量中 + - 返回符合条件的库位详细信息 + - 可以在后续组件中通过`${blocks.b1.site}`引用 + +#### 9. 设置库位扩展属性组件参数配置界面 + +设置库位扩展属性组件用于为库位添加或修改扩展属性,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"设置库位扩展属性 b2" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要设置扩展属性的库位ID + - 支持使用简单值或表达式 + + - **属性名称**(必选项): + - 指定要设置的扩展属性名称 + - 用于标识该属性的唯一名称 + + - **属性值**(必选项): + - 指定要设置的扩展属性值 + - 支持简单值、JSON格式或表达式 + - 可以引用任务变量或输入参数 + +- **响应数据**: + - 设置结果将存储在相关变量中 + - 返回操作的状态和结果 + - 可以在后续组件中引用 + +#### 10. 设置库位货物组件参数配置界面 + +设置库位货物组件用于为库位分配或更新货物信息,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"设置库位货物 b3" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要设置货物的库位ID + - 支持使用简单值或表达式 + + - **货物**(必选项): + - 指定要设置的货物类型 + - 用于标识库位中存放的货物 + +- **响应数据**: + - 设置结果将存储在相关变量中 + - 返回操作的状态和结果 + - 可以在后续组件中引用 + +#### 11. 设置库位为空组件参数配置界面 + +设置库位为空组件用于将库位状态设置为空闲,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"设置库位为空 b4" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要设置为空的库位ID + - 支持使用简单值或表达式 + +- **响应数据**: + - 设置结果将存储在相关变量中 + - 返回操作的状态和结果 + - 可以在后续组件中引用 + +#### 12. 设置库位为占用组件参数配置界面 + +设置库位为占用组件用于将库位状态设置为已占用,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"设置库位为占用 b5" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要设置为占用的库位ID + - 支持使用简单值或表达式 + +- **响应数据**: + - 设置结果将存储在相关变量中 + - 返回操作的状态和结果 + - 可以在后续组件中引用 + +#### 13. 设置库位标签组件参数配置界面 + +设置库位标签组件用于为库位设置标识标签,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"设置库位标签 b1" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要设置标签的库位ID + - 支持使用简单值或表达式 + + - **标签**(必选项): + - 指定要设置的标签内容 + - 用于标识和分类库位 + - 支持使用简单值或表达式 + +- **响应数据**: + - 设置结果将存储在相关变量中 + - 返回操作的状态和结果 + - 可以在后续组件中引用 + +#### 14. 解锁库位组件参数配置界面 + +解锁库位组件用于解除库位的锁定状态,其配置界面包含以下部分: + +- **基本信息区域**: + - 显示组件的名称和类型,例如:"解锁库位 b2" + +- **核心参数配置**: + - **库位Id**(必选项): + - 指定要解锁的库位ID + - 支持使用简单值或表达式 + + - **解锁原因**(可选项): + - 指定解锁库位的原因 + - 用于记录解锁操作的目的 + - 支持使用简单值或表达式 + +- **响应数据**: + - 解锁结果将存储在相关变量中 + - 返回解锁操作的状态和结果 + - 可以在后续组件中引用 + +## 机器人调度组件功能详细说明 + +机器人调度组件是天风任务模块低代码配置工具中的核心功能组件集合,提供了一系列用于控制和管理AMR机器人的功能。这些组件使用户能够在任务流程中实现机器人的调度、控制、状态监控和异常处理,为自动化物流和生产场景提供了强大的支持。 + +机器人调度组件主要包括以下类型: + +1. **机器人选择与分配组件**: + - **选择执行机器人**:根据条件选择合适的机器人执行任务 + - **获取机器人位置**:获取指定机器人的当前位置信息 + +2. **机器人移动控制组件**: + - **机器人通用动作**:控制机器人执行通用动作,如前进、后退、转向等 + - **机器人更换目的地**:在任务执行过程中更改机器人的目标位置 + +3. **机器人状态管理组件**: + - **获取机器人电量**:获取指定机器人的当前电量信息 + - **获取机器人PGV码**:获取机器人的PGV(Position Guided Vehicle)定位码 + +机器人调度组件适用于多种场景,包括: +- 物料搬运:工厂、仓库中的物料和货物运输 +- 智能分拣:电商、物流中心的包裹分拣 +- 巡检任务:工厂、园区的安全和设备巡检 +- 清洁作业:大型场所的自动化清洁 +- 应急响应:异常情况下的机器人调度和控制 + +详细信息请参考[机器人调度组件详细说明文档](天风任务-机器人调度组件说明.md)。 + +### 机器人调度组件参数配置界面 + +当将机器人调度组件从左侧组件面板拖拽到流程编辑区后,需要对组件进行参数配置。各组件的参数配置界面主要包含以下几个部分: + +#### 1. 选择执行机器人组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 优先级:指定机器人选择的优先级策略(距离优先、电量优先等) + - 指定机器人:直接指定要使用的机器人ID + - 标签:根据机器人标签进行筛选 + - 指定机器人组:从指定的机器人组中选择机器人 + - 其他辅助选择参数:如关键路径、辅助选车动作、避让级别等 +- **响应数据**:选择结果将存储在`blocks.bX.selectedAgvId`变量中 + +#### 2. 获取机器人位置组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 指定机器人:指定要获取位置的机器人ID(必选项) +- **响应数据**:位置信息将存储在`blocks.bX.station`变量中 + +#### 3. 机器人通用动作组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 目标站点名:指定机器人要前往的目标站点(必选项) + - 动作完成回调:指定动作完成后的回调函数 + - 货物编号:指定与动作相关的货物编号 + - 速度和加速度参数:控制机器人移动性能的各项参数 +- **响应数据**:动作执行结果将存储在相关变量中 + +#### 4. 机器人更换目的地组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 目标站点名:指定机器人的新目标站点(必选项) + - 动作完成回调:指定目的地更改完成后的回调函数 + - 货物编号:指定与目的地相关的货物编号 + - 速度和加速度参数:控制机器人移动性能的各项参数 +- **响应数据**:目的地更改结果将存储在相关变量中 + +#### 5. 获取机器人电量组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 机器人AID:指定要获取电量的机器人ID(必选项) + - 界面中以红色星号标记,表示为必填项 +- **参数值格式**:支持简单值和JSON格式,可通过下拉菜单选择 +- **响应数据**:电量信息将存储在`blocks.bX.batteryLevel`变量中,返回电量百分比值(0-100) + +#### 6. 获取机器人PGV码组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 机器人AID:指定要获取PGV码的机器人ID(必选项) + - 界面中以红色星号标记,表示为必填项 +- **参数值格式**:支持简单值和JSON格式,可通过下拉菜单选择 +- **响应数据**:PGV码信息将存储在`blocks.bX.codeInfo`变量中,包含PGV码值、读取时间、坐标信息和状态信息 + +机器人调度组件适用于多种场景,包括: +- 物料搬运:工厂、仓库中的物料和货物运输 +- 智能分拣:电商、物流中心的包裹分拣 +- 巡检任务:工厂、园区的安全和设备巡检 +- 清洁作业:大型场所的自动化清洁 +- 应急响应:异常情况下的机器人调度和控制 + +详细信息请参考[机器人调度组件详细说明文档](天风任务-机器人调度组件说明.md)。 + +## 设备组件功能详细说明 + +设备组件是天风任务模块低代码配置工具中的专用功能组件集合,提供了用于与外部设备和控制系统进行通信和交互的功能。这些组件使AMR调度系统能够与工业自动化设备进行数据交换和控制,为自动化场景提供了支持。 + +设备组件主要包括以下类型: + +1. **Modbus通信组件**: + - **通用等待Modbus值(Name)**:通过名称等待Modbus设备的特定值 + - **通用写入Modbus值(Name)**:通过名称向Modbus设备写入数据 + +### 设备组件参数配置界面 + +当将设备组件从左侧组件面板拖拽到流程编辑区后,需要对组件进行参数配置。各组件的参数配置界面主要包含以下几个部分: + +#### 1. 通用等待Modbus值(Name)组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 目标值:指定等待的目标值(必选项) + - Name:指定预配置的Modbus变量名称(必选项) + - 地址编号:指定Modbus地址编号(可选项) + - 地址说明:提供地址的说明信息(可选项) +- **参数值格式**:支持简单值和JSON格式,可通过下拉菜单选择 +- **响应数据**:等待结果将存储在相关变量中,可在后续组件中引用 + +#### 2. 通用写入Modbus值(Name)组件参数配置 + +- **基本信息区域**:显示组件名称和类型 +- **核心参数配置**: + - 写入值:指定要写入的数据值(必选项) + - Name:指定预配置的Modbus变量名称(必选项) + - 地址编号:指定Modbus地址编号(可选项) + - 地址说明:提供地址的说明信息(可选项) +- **参数值格式**:支持简单值和JSON格式,可通过下拉菜单选择 +- **响应数据**:写入结果将存储在相关变量中,可在后续组件中引用 + +设备组件适用于多种场景,包括: +- 工业自动化:与PLC、传感器、执行器等工业设备的通信和控制 +- 设备监控:实时监控设备状态、参数和性能数据 +- 数据采集:从各类设备采集数据用于分析和决策 +- 设备控制:向设备发送控制指令,实现远程操作 +- 系统集成:将AMR系统与现有工厂自动化系统集成 + +详细信息请参考[设备组件详细说明文档](天风任务-设备组件说明.md)。 + +## 附录 + +### 用户调研报告 + +根据用户调研,主要需求点包括: +- 简洁清晰的任务管理界面 +- 实时的任务状态监控 +- 灵活的任务创建和编辑功能 + +### 设计分析报告 + +界面设计原则: +- 简洁明了,突出重点信息 +- 操作便捷,减少用户操作步骤 +- 信息层次清晰,便于用户快速获取所需信息 +- 响应式设计,适应不同设备和屏幕尺寸