feat(services): 重写核心业务逻辑 — 接收/驳回返工/裂变转交
task_service 新增 3 个核心业务函数: - receive_task(): PENDING→WIP, 记录 received_at, 仅 PENDING 状态可接收 - reject_task(): →REJECTED, 记录 reject_reason+completed_at, 防呆闭环: 自动查找父任务负责人, 创建 is_rework=True 的返工任务 - transfer_task(): →COMPLETED, 记录 completed_at, 裂变转交: 遍历 next_assignees 批量创建 PENDING 任务, 多路裂变(>1)时子任务挂载形成树状分支, virtual_warehouse 入库逻辑更新 Product.current_location_id - complete_task(): 保留兼容, 同步使用新状态常量 TASK_STATUS_* product_service 重构: - get_product_by_serial(): 新增 task_tree 返回完整递归任务树 - _load_task_tree(): 递归加载产品关联的所有任务嵌套关系
This commit is contained in:
@ -0,0 +1,40 @@
|
||||
"""业务逻辑层"""
|
||||
from app.services.product_service import (
|
||||
get_product_by_serial,
|
||||
get_product,
|
||||
create_product,
|
||||
update_product,
|
||||
get_all_products,
|
||||
)
|
||||
from app.services.task_service import (
|
||||
get_task,
|
||||
get_top_level_tasks,
|
||||
create_task,
|
||||
update_task,
|
||||
complete_task,
|
||||
receive_task,
|
||||
reject_task,
|
||||
transfer_task,
|
||||
create_subtask,
|
||||
get_all_tasks,
|
||||
)
|
||||
|
||||
__all__ = [
|
||||
# Product
|
||||
"get_product_by_serial",
|
||||
"get_product",
|
||||
"create_product",
|
||||
"update_product",
|
||||
"get_all_products",
|
||||
# Task
|
||||
"get_task",
|
||||
"get_top_level_tasks",
|
||||
"create_task",
|
||||
"update_task",
|
||||
"complete_task",
|
||||
"receive_task",
|
||||
"reject_task",
|
||||
"transfer_task",
|
||||
"create_subtask",
|
||||
"get_all_tasks",
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user