feat(server): 更新用户代理服务,新增编排器服务测试用例,完善服务编排能力
This commit is contained in:
@@ -643,7 +643,7 @@ class UserAgentService:
|
||||
if is_submitted:
|
||||
body = (
|
||||
f"主题:{subject}\n"
|
||||
f"结论:报销单已提交审批,当前节点为 {approval_stage or '审批中'}。\n"
|
||||
f"结论:报销单已完成 AI验审,当前节点为 {approval_stage or '审批中'}。\n"
|
||||
"建议:后续可在个人报销列表中跟踪审批进度,必要时再补充说明或附件。\n"
|
||||
f"原始问题:{payload.message}"
|
||||
)
|
||||
@@ -1279,7 +1279,7 @@ class UserAgentService:
|
||||
if review_action == "next_step":
|
||||
if draft_payload is not None and draft_payload.status == "submitted":
|
||||
stage_text = draft_payload.approval_stage or "审批中"
|
||||
return f"报销单 {draft_payload.claim_no or ''} 已提交审批,当前节点为 {stage_text}。".strip()
|
||||
return f"报销单 {draft_payload.claim_no or ''} 已完成 AI验审,当前节点为 {stage_text}。".strip()
|
||||
if payload.tool_payload.get("submission_blocked"):
|
||||
return str(payload.tool_payload.get("message") or "").strip() or "当前报销单暂时还不能提交审批。"
|
||||
return (
|
||||
|
||||
@@ -634,13 +634,18 @@ def test_orchestrator_expense_next_step_submits_claim_to_approval() -> None:
|
||||
user_id = "zhangsan@example.com"
|
||||
|
||||
with session_factory() as db:
|
||||
db.add(
|
||||
Employee(
|
||||
employee_no="E3001",
|
||||
name="张三",
|
||||
email=user_id,
|
||||
)
|
||||
manager = Employee(
|
||||
employee_no="E3000",
|
||||
name="李经理",
|
||||
email="manager@example.com",
|
||||
)
|
||||
employee = Employee(
|
||||
employee_no="E3001",
|
||||
name="张三",
|
||||
email=user_id,
|
||||
manager=manager,
|
||||
)
|
||||
db.add_all([manager, employee])
|
||||
db.commit()
|
||||
|
||||
response = client.post(
|
||||
@@ -673,8 +678,8 @@ def test_orchestrator_expense_next_step_submits_claim_to_approval() -> None:
|
||||
assert payload["status"] == "succeeded"
|
||||
assert payload["result"]["draft_payload"]["claim_no"].startswith("EXP-")
|
||||
assert payload["result"]["draft_payload"]["status"] == "submitted"
|
||||
assert payload["result"]["draft_payload"]["approval_stage"] == "AI验审"
|
||||
assert "已提交审批" in payload["result"]["answer"]
|
||||
assert payload["result"]["draft_payload"]["approval_stage"] == "直属领导审批"
|
||||
assert "已完成 AI验审" in payload["result"]["answer"]
|
||||
|
||||
with session_factory() as db:
|
||||
claim = db.scalar(
|
||||
@@ -684,7 +689,7 @@ def test_orchestrator_expense_next_step_submits_claim_to_approval() -> None:
|
||||
)
|
||||
assert claim is not None
|
||||
assert claim.status == "submitted"
|
||||
assert claim.approval_stage == "AI验审"
|
||||
assert claim.approval_stage == "直属领导审批"
|
||||
assert claim.submitted_at is not None
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user