Files
track/backend/app/services/__init__.py
duxingchen 1fed716829 feat(services): 核心业务逻辑 — 接收/返工/裂变/记录/标签打印
task_service:
- receive_task() — PENDING→WIP, 记录 received_at
- reject_task() — →REJECTED + 自动返工闭环
- transfer_task() — →COMPLETED + 多路裂变 + virtual_warehouse入库
- add_task_record() — 图文记录追加
- 全链路 selectinload(Task.records)
- 全部 now 改用 get_beijing_time()

product_service:
- create_product() — PG Sequence 自动生成16位HEX
- update_overall_status() — 宏观状态校验+更新
- 扫码返回完整 task_tree (含 records)
- order_no 自由文本→自动创建 ProductionOrder
- update_product() 支持 order_no 编辑

label_service:
- 480×360 工业级排版 (QR+名/规/单+底部通栏码)
- simhei.ttf 34px/28px + stroke_width 描边
- TSPL Socket 发送到打标机
2026-08-05 14:00:55 +08:00

45 lines
861 B
Python

"""业务逻辑层"""
from app.services.product_service import (
get_product_by_serial,
get_product,
create_product,
update_product,
update_overall_status,
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,
add_task_record,
get_all_tasks,
)
__all__ = [
# Product
"get_product_by_serial",
"get_product",
"create_product",
"update_product",
"update_overall_status",
"get_all_products",
# Task
"get_task",
"get_top_level_tasks",
"create_task",
"update_task",
"complete_task",
"receive_task",
"reject_task",
"transfer_task",
"create_subtask",
"add_task_record",
"get_all_tasks",
]