feat: 重构报销单服务并完善前端提交与审核交互

重构 expense_claims 服务模块结构并优化差旅票据审核逻辑,
增强用户代理服务的票据类型识别,前端报销创建页面拆分为
附件模型和会话模型模块,重构提交编排器和草稿关联确认流
程,更新知识库索引,补充单元测试。
This commit is contained in:
caoxiaozhu
2026-05-22 08:58:59 +08:00
parent f6f787ff38
commit 5fe3b201d9
42 changed files with 13697 additions and 9496 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -3354,23 +3354,23 @@ class UserAgentService:
location = slots.get("location")
customer = slots.get("customer_name")
summary = "我先根据您当前提供的信息整理出一笔报销"
summary = "我先根据您当前提供的信息整理出一笔报销"
if expense_type and expense_type.value:
summary = f"识别到您希望报销一笔“{expense_type.value}”费用"
summary = f"识别到您希望报销一笔“{expense_type.value}”费用"
details: list[str] = []
if customer and customer.value:
details.append(f"客户{customer.value}")
details.append(f"客户{customer.value}")
if time_range and time_range.value:
details.append(f"时间{time_range.value}")
details.append(f"时间{time_range.value}")
if location and location.value:
details.append(f"地点{location.value}")
details.append(f"地点{location.value}")
if amount and amount.value:
details.append(f"金额{amount.value}")
details.append(f"金额{amount.value}")
reason = slots.get("reason")
if reason and reason.value:
details.append(f"事由{reason.value}")
details.append(f"事由{reason.value}")
if details:
return f"{summary} {''.join(details)}"
return "\n\n".join([summary, "基础信息识别结果:", "\n".join(details)])
return summary
def _build_review_body_answer(
@@ -3399,6 +3399,11 @@ class UserAgentService:
slot_cards=review_payload.slot_cards,
claim_groups=review_payload.claim_groups,
)
if payload.tool_payload.get("duplicate_attachment_blocked") or payload.tool_payload.get("duplicate_invoice_blocked"):
return (
str(payload.tool_payload.get("message") or "").strip()
or "检测到本次上传票据与当前单据已有票据重复,请重新上传不同的票据后再归集。"
)
if review_action == "save_draft":
if draft_payload is not None and draft_payload.claim_no:
return (
@@ -3441,7 +3446,7 @@ class UserAgentService:
)
return str(payload.tool_payload.get("message") or "").strip() or "当前报销单暂时还不能提交审批。"
return (
f"{self._build_review_intent_summary(payload, slot_cards=review_payload.slot_cards, claim_groups=review_payload.claim_groups)} "
f"{self._build_review_intent_summary(payload, slot_cards=review_payload.slot_cards, claim_groups=review_payload.claim_groups)}\n\n"
"当前关键信息已基本齐全,您确认无误后可以继续下一步。"
)
return review_payload.body_message or None
@@ -3497,7 +3502,7 @@ class UserAgentService:
expense_type_slot = next((item for item in slot_cards if item.key == "expense_type"), None)
if expense_type_slot is not None and not str(expense_type_slot.value or "").strip():
return (
f"{self._build_review_intent_summary(payload, slot_cards=slot_cards, claim_groups=[])} "
f"{self._build_review_intent_summary(payload, slot_cards=slot_cards, claim_groups=[])}\n\n"
"我已经先保留了当前识别出的时间、地点和事由,但还不能确定这张单据应该走哪类报销流程。"
"请先点击“选择报销类型”,在差旅费、交通费、住宿费等选项中选定;"
"选定后,后续上传的票据都会作为这张单据的补充继续核对,不会重新改判报销类型。"
@@ -3616,17 +3621,17 @@ class UserAgentService:
[
"报销测算参考:",
"",
(
f"职级 {calculation.grade},目的地 {destination},匹配城市 {calculation.matched_city}"
"补齐交通、酒店等票据后,我会按真实票据金额和规则中心标准重新复核。"
),
"",
"| 项目 | 测算口径 | 金额 |",
"| --- | --- | ---: |",
f"| 交通票据 | {ticket_basis} | {self._format_decimal_money(ticket_amount)} 元 |",
f"| 住宿标准 | {self._format_decimal_money(calculation.hotel_rate)} 元/天 × {calculation.days} 天 | {self._format_decimal_money(calculation.hotel_amount)} 元 |",
f"| 出差补贴 | {self._format_decimal_money(calculation.total_allowance_rate)} 元/天 × {calculation.days} 天 | {self._format_decimal_money(calculation.allowance_amount)} 元 |",
f"| 参考合计 | 交通票据 + 住宿标准 + 出差补贴 | {self._format_decimal_money(total_amount)} 元 |",
"",
(
f"测算依据:职级 {calculation.grade},目的地 {destination},匹配城市 {calculation.matched_city}"
"补齐交通、酒店等票据后,我会按真实票据金额和规则中心标准重新复核。"
),
]
)
@@ -3850,7 +3855,6 @@ class UserAgentService:
*,
mention_save_draft: bool,
) -> str:
missing_count = len(review_payload.missing_slots)
reminder_count = len(review_payload.risk_briefs)
if review_payload.can_proceed:
@@ -3861,18 +3865,7 @@ class UserAgentService:
)
return "当前关键信息已基本齐全,您确认无误后可以继续下一步。"
issue_parts: list[str] = []
if missing_count:
issue_parts.append(f"{missing_count} 项信息待补充")
if reminder_count:
issue_parts.append(f"{reminder_count} 条提醒")
issue_summary = "".join(issue_parts) if issue_parts else "一些细节还需要进一步确认"
suffix = ";如果想先暂存,也可以点击对话文字中的“草稿”。" if mention_save_draft else ""
return (
f"当前还有 {issue_summary}"
f"请核查对话中的文字说明{suffix}"
)
return ""
@staticmethod
def _can_proceed_review(

View File

@@ -0,0 +1,82 @@
{
"file_name": "酒店2.jpg",
"storage_key": "5544b2a0-a6f5-4ef8-b5b6-c1ac1b03772f/07085673-a7df-4622-abb7-12f6552c780d/酒店2.jpg",
"media_type": "image/jpeg",
"size_bytes": 156877,
"uploaded_at": "2026-05-21T14:19:49.450265+00:00",
"previewable": true,
"preview_kind": "image",
"preview_storage_key": "5544b2a0-a6f5-4ef8-b5b6-c1ac1b03772f/07085673-a7df-4622-abb7-12f6552c780d/酒店2.preview.jpg",
"preview_media_type": "image/jpeg",
"preview_file_name": "酒店2.preview.jpg",
"analysis": {
"severity": "pass",
"label": "AI提示符合条件",
"headline": "AI提示附件符合基础校验条件",
"summary": "已识别到票据类型和关键字段,且符合当前费用场景的附件要求。",
"points": [
"票据类型:已识别为酒店住宿票据。",
"附件类型要求:当前费用项目为住宿票,已识别为酒店住宿票据。",
"金额字段:已识别到与当前明细接近的金额 2400.00 元。"
],
"suggestion": "建议继续核对报销分类、费用说明和业务场景是否一致。"
},
"document_info": {
"document_type": "hotel_invoice",
"document_type_label": "酒店住宿票据",
"scene_code": "hotel",
"scene_label": "住宿票据",
"fields": [
{
"key": "amount",
"label": "金额",
"value": "2400元"
},
{
"key": "date",
"label": "日期",
"value": "2026-02-23"
},
{
"key": "merchant_name",
"label": "商户",
"value": "上海喜来登酒店"
},
{
"key": "invoice_number",
"label": "票据号码",
"value": "SH-SAMPLE-20260223-003"
}
]
},
"requirement_check": {
"matches": true,
"current_expense_type": "hotel_ticket",
"current_expense_type_label": "住宿票",
"allowed_scene_labels": [],
"allowed_document_type_labels": [],
"recognized_scene_code": "hotel",
"recognized_scene_label": "住宿票据",
"recognized_document_type": "hotel_invoice",
"recognized_document_type_label": "酒店住宿票据",
"mismatch_severity": "high",
"rule_code": "rule.expense.scene_submission_standard",
"rule_name": "报销场景提交与附件标准",
"message": "当前费用项目为住宿票,已识别为酒店住宿票据。"
},
"ocr_status": "recognized",
"ocr_error": "",
"ocr_text": "上海喜来登酒店(样例)\n住宿消费明细单\n单号SH-SAMPLE-20260223-003\n出单期2026年2月23\n宾客姓名\n曹笑竹\n房间类型豪华床房\n入住日期\n2026年2月20日\n住晚数 3晚\n离店期 2026年223日\n付款式 现/信卡/其他\n日期\n项目\n计费说明\n单价\n数量\n金额\n2026年2月20日\n至\n住宿费\n豪华大床房\n¥800/晚\n3\n¥2400\n2026年2月22日\n额写贰仟肆佰元整\n合计¥2400\n温馨提示如您对以上账单有任何疑问请在离店后7天内与酒店联系感谢您的理解与支持。\n酒店联系式上海喜来登酒店\n地址上海市浦东新区银城中路88号 电话021-12345678\n样例票据|仅供系统测试|无效凭证",
"ocr_summary": "上海喜来登酒店样例住宿消费明细单单号SH-SAMPLE-20260223-003",
"ocr_avg_score": 0.9784442763775587,
"ocr_line_count": 32,
"ocr_classification_source": "rule",
"ocr_classification_confidence": 0.84,
"ocr_classification_evidence": [
"住宿",
"入住",
"离店",
"酒店"
],
"ocr_warnings": []
}

View File

@@ -0,0 +1,87 @@
{
"file_name": "2月23_上海-武汉.pdf",
"storage_key": "5544b2a0-a6f5-4ef8-b5b6-c1ac1b03772f/ac0a7cc8-7152-41e3-bcce-bd358459a5a8/2月23_上海-武汉.pdf",
"media_type": "application/pdf",
"size_bytes": 24940,
"uploaded_at": "2026-05-21T14:03:40.109269+00:00",
"previewable": true,
"preview_kind": "image",
"preview_storage_key": "5544b2a0-a6f5-4ef8-b5b6-c1ac1b03772f/ac0a7cc8-7152-41e3-bcce-bd358459a5a8/2月23_上海-武汉.preview.png",
"preview_media_type": "image/png",
"preview_file_name": "2月23_上海-武汉.preview.png",
"analysis": {
"severity": "pass",
"label": "AI提示符合条件",
"headline": "AI提示附件符合基础校验条件",
"summary": "已识别到票据类型和关键字段,且符合当前费用场景的附件要求。",
"points": [
"票据类型:已识别为火车/高铁票。",
"附件类型要求:当前费用项目为火车票,已识别为火车/高铁票。",
"金额字段:已识别到与当前明细接近的金额 354.00 元。"
],
"suggestion": "建议继续核对报销分类、费用说明和业务场景是否一致。"
},
"document_info": {
"document_type": "train_ticket",
"document_type_label": "火车/高铁票",
"scene_code": "travel",
"scene_label": "差旅票据",
"fields": [
{
"key": "amount",
"label": "金额",
"value": "354元"
},
{
"key": "date",
"label": "列车出发时间",
"value": "2026-02-23 13:54"
},
{
"key": "merchant_name",
"label": "商户",
"value": "中国铁路"
},
{
"key": "invoice_number",
"label": "票据号码",
"value": "26319166100006175398"
},
{
"key": "route",
"label": "行程",
"value": "上海-武汉"
}
]
},
"requirement_check": {
"matches": true,
"current_expense_type": "train_ticket",
"current_expense_type_label": "火车票",
"allowed_scene_labels": [],
"allowed_document_type_labels": [],
"recognized_scene_code": "travel",
"recognized_scene_label": "差旅票据",
"recognized_document_type": "train_ticket",
"recognized_document_type_label": "火车/高铁票",
"mismatch_severity": "high",
"rule_code": "rule.expense.scene_submission_standard",
"rule_name": "报销场景提交与附件标准",
"message": "当前费用项目为火车票,已识别为火车/高铁票。"
},
"ocr_status": "recognized",
"ocr_error": "",
"ocr_text": "电子发票\n铁路电子客票\n州\n国家税务总局\n发票号码26319166100006175398\n开票日期:2026年05月18日\n上海市税务局\n上海虹桥站\n武汉站\nG456\nShanghaihongqiao\nWuhan\n2026年02月23日\n13:54开\n12车08B号\n二等座\n票价¥354.00\n4201061987****1615\n曹笑竹\n电子客票号6610061086021394837402026\n购买方名称:曹笑竹\n统一社会信用代码\n买票请到12306发货请到95306\n中国铁路祝您旅途愉快",
"ocr_summary": "电子发票;(铁路电子客票);州",
"ocr_avg_score": 0.9620026834309101,
"ocr_line_count": 24,
"ocr_classification_source": "rule",
"ocr_classification_confidence": 0.88,
"ocr_classification_evidence": [
"铁路电子客票",
"电子客票",
"铁路",
"二等座"
],
"ocr_warnings": []
}

View File

@@ -0,0 +1,87 @@
{
"file_name": "2月20_武汉-上海.pdf",
"storage_key": "5544b2a0-a6f5-4ef8-b5b6-c1ac1b03772f/b4143190-f375-4f6b-8836-23eee534c99e/2月20_武汉-上海.pdf",
"media_type": "application/pdf",
"size_bytes": 24995,
"uploaded_at": "2026-05-21T14:03:02.982421+00:00",
"previewable": true,
"preview_kind": "image",
"preview_storage_key": "5544b2a0-a6f5-4ef8-b5b6-c1ac1b03772f/b4143190-f375-4f6b-8836-23eee534c99e/2月20_武汉-上海.preview.png",
"preview_media_type": "image/png",
"preview_file_name": "2月20_武汉-上海.preview.png",
"analysis": {
"severity": "pass",
"label": "AI提示符合条件",
"headline": "AI提示附件符合基础校验条件",
"summary": "已识别到票据类型和关键字段,且符合当前费用场景的附件要求。",
"points": [
"票据类型:已识别为火车/高铁票。",
"附件类型要求:当前费用项目为火车票,已识别为火车/高铁票。",
"金额字段:已识别到与当前明细接近的金额 354.00 元。"
],
"suggestion": "建议继续核对报销分类、费用说明和业务场景是否一致。"
},
"document_info": {
"document_type": "train_ticket",
"document_type_label": "火车/高铁票",
"scene_code": "travel",
"scene_label": "差旅票据",
"fields": [
{
"key": "amount",
"label": "金额",
"value": "354元"
},
{
"key": "date",
"label": "列车出发时间",
"value": "2026-02-20 07:55"
},
{
"key": "merchant_name",
"label": "商户",
"value": "中国铁路"
},
{
"key": "invoice_number",
"label": "票据号码",
"value": "26429165800002785705"
},
{
"key": "route",
"label": "行程",
"value": "武汉-上海"
}
]
},
"requirement_check": {
"matches": true,
"current_expense_type": "train_ticket",
"current_expense_type_label": "火车票",
"allowed_scene_labels": [],
"allowed_document_type_labels": [],
"recognized_scene_code": "travel",
"recognized_scene_label": "差旅票据",
"recognized_document_type": "train_ticket",
"recognized_document_type_label": "火车/高铁票",
"mismatch_severity": "high",
"rule_code": "rule.expense.scene_submission_standard",
"rule_name": "报销场景提交与附件标准",
"message": "当前费用项目为火车票,已识别为火车/高铁票。"
},
"ocr_status": "recognized",
"ocr_error": "",
"ocr_text": "电子发票\n铁路电子客票)\n州\n国家税务总局\n发票号码26429165800002785705\n湖北省税务局\n开票日期:2026年05月18日\n武汉站\n上海虹桥站\nG458\nWuhan\nShanghaihongqiao\n2026年02月20日\n07:55开\n06车01B号\n二等座\n票价¥354.00\n4201061987****1615\n曹笑竹\n电子客票号6580061086021391007342026\n购买方名称:曹笑竹\n统一社会信用代码\n买票请到12306发货请到95306\n中国铁路祝您旅途愉快",
"ocr_summary": "电子发票;(铁路电子客票);州",
"ocr_avg_score": 0.9580968717734019,
"ocr_line_count": 24,
"ocr_classification_source": "rule",
"ocr_classification_confidence": 0.88,
"ocr_classification_evidence": [
"铁路电子客票",
"电子客票",
"铁路",
"二等座"
],
"ocr_warnings": []
}

View File

@@ -0,0 +1,88 @@
{
"file_name": "2月20_武汉-上海.pdf",
"storage_key": "b00cb2a5-0af3-4a49-9f7a-1f79d0ab873a/ab4d8fae-f59d-460d-94a8-eaf644c83591/2月20_武汉-上海.pdf",
"media_type": "application/pdf",
"size_bytes": 24995,
"uploaded_at": "2026-05-22T00:38:09.743522+00:00",
"previewable": true,
"preview_kind": "image",
"preview_storage_key": "b00cb2a5-0af3-4a49-9f7a-1f79d0ab873a/ab4d8fae-f59d-460d-94a8-eaf644c83591/2月20_武汉-上海.preview.png",
"preview_media_type": "image/png",
"preview_file_name": "2月20_武汉-上海.preview.png",
"analysis": {
"severity": "pass",
"label": "AI提示符合条件",
"headline": "AI提示附件符合基础校验条件",
"summary": "已识别到票据类型和关键字段,且符合当前费用场景的附件要求。",
"points": [
"票据类型:已识别为火车/高铁票。",
"附件类型要求:当前费用项目为火车票,已识别为火车/高铁票。",
"金额字段:已识别到与当前明细接近的金额 354.00 元。"
],
"rule_basis": [],
"suggestion": "建议继续核对报销分类、费用说明和业务场景是否一致。"
},
"document_info": {
"document_type": "train_ticket",
"document_type_label": "火车/高铁票",
"scene_code": "travel",
"scene_label": "差旅票据",
"fields": [
{
"key": "amount",
"label": "金额",
"value": "354元"
},
{
"key": "date",
"label": "列车出发时间",
"value": "2026-02-20 07:55"
},
{
"key": "merchant_name",
"label": "商户",
"value": "中国铁路"
},
{
"key": "invoice_number",
"label": "票据号码",
"value": "26429165800002785705"
},
{
"key": "route",
"label": "行程",
"value": "武汉-上海"
}
]
},
"requirement_check": {
"matches": true,
"current_expense_type": "train_ticket",
"current_expense_type_label": "火车票",
"allowed_scene_labels": [],
"allowed_document_type_labels": [],
"recognized_scene_code": "travel",
"recognized_scene_label": "差旅票据",
"recognized_document_type": "train_ticket",
"recognized_document_type_label": "火车/高铁票",
"mismatch_severity": "high",
"rule_code": "rule.expense.scene_submission_standard",
"rule_name": "报销场景提交与附件标准",
"message": "当前费用项目为火车票,已识别为火车/高铁票。"
},
"ocr_status": "recognized",
"ocr_error": "",
"ocr_text": "电子发票\n铁路电子客票)\n州\n国家税务总局\n发票号码26429165800002785705\n湖北省税务局\n开票日期:2026年05月18日\n武汉站\n上海虹桥站\nG458\nWuhan\nShanghaihongqiao\n2026年02月20日\n07:55开\n06车01B号\n二等座\n票价¥354.00\n4201061987****1615\n曹笑竹\n电子客票号6580061086021391007342026\n购买方名称:曹笑竹\n统一社会信用代码\n买票请到12306发货请到95306\n中国铁路祝您旅途愉快",
"ocr_summary": "电子发票;(铁路电子客票);州",
"ocr_avg_score": 0.9580968717734019,
"ocr_line_count": 24,
"ocr_classification_source": "rule",
"ocr_classification_confidence": 0.88,
"ocr_classification_evidence": [
"铁路电子客票",
"电子客票",
"铁路",
"二等座"
],
"ocr_warnings": []
}

View File

@@ -0,0 +1,88 @@
{
"file_name": "2月23_上海-武汉.pdf",
"storage_key": "b00cb2a5-0af3-4a49-9f7a-1f79d0ab873a/b2edd3f3-9efc-44ab-bd3b-60a42f204a60/2月23_上海-武汉.pdf",
"media_type": "application/pdf",
"size_bytes": 24940,
"uploaded_at": "2026-05-22T00:38:30.927361+00:00",
"previewable": true,
"preview_kind": "image",
"preview_storage_key": "b00cb2a5-0af3-4a49-9f7a-1f79d0ab873a/b2edd3f3-9efc-44ab-bd3b-60a42f204a60/2月23_上海-武汉.preview.png",
"preview_media_type": "image/png",
"preview_file_name": "2月23_上海-武汉.preview.png",
"analysis": {
"severity": "pass",
"label": "AI提示符合条件",
"headline": "AI提示附件符合基础校验条件",
"summary": "已识别到票据类型和关键字段,且符合当前费用场景的附件要求。",
"points": [
"票据类型:已识别为火车/高铁票。",
"附件类型要求:当前费用项目为火车票,已识别为火车/高铁票。",
"金额字段:已识别到与当前明细接近的金额 354.00 元。"
],
"rule_basis": [],
"suggestion": "建议继续核对报销分类、费用说明和业务场景是否一致。"
},
"document_info": {
"document_type": "train_ticket",
"document_type_label": "火车/高铁票",
"scene_code": "travel",
"scene_label": "差旅票据",
"fields": [
{
"key": "amount",
"label": "金额",
"value": "354元"
},
{
"key": "date",
"label": "列车出发时间",
"value": "2026-02-23 13:54"
},
{
"key": "merchant_name",
"label": "商户",
"value": "中国铁路"
},
{
"key": "invoice_number",
"label": "票据号码",
"value": "26319166100006175398"
},
{
"key": "route",
"label": "行程",
"value": "上海-武汉"
}
]
},
"requirement_check": {
"matches": true,
"current_expense_type": "train_ticket",
"current_expense_type_label": "火车票",
"allowed_scene_labels": [],
"allowed_document_type_labels": [],
"recognized_scene_code": "travel",
"recognized_scene_label": "差旅票据",
"recognized_document_type": "train_ticket",
"recognized_document_type_label": "火车/高铁票",
"mismatch_severity": "high",
"rule_code": "rule.expense.scene_submission_standard",
"rule_name": "报销场景提交与附件标准",
"message": "当前费用项目为火车票,已识别为火车/高铁票。"
},
"ocr_status": "recognized",
"ocr_error": "",
"ocr_text": "电子发票\n铁路电子客票\n州\n国家税务总局\n发票号码26319166100006175398\n开票日期:2026年05月18日\n上海市税务局\n上海虹桥站\n武汉站\nG456\nShanghaihongqiao\nWuhan\n2026年02月23日\n13:54开\n12车08B号\n二等座\n票价¥354.00\n4201061987****1615\n曹笑竹\n电子客票号6610061086021394837402026\n购买方名称:曹笑竹\n统一社会信用代码\n买票请到12306发货请到95306\n中国铁路祝您旅途愉快",
"ocr_summary": "电子发票;(铁路电子客票);州",
"ocr_avg_score": 0.9620026834309101,
"ocr_line_count": 24,
"ocr_classification_source": "rule",
"ocr_classification_confidence": 0.88,
"ocr_classification_evidence": [
"铁路电子客票",
"电子客票",
"铁路",
"二等座"
],
"ocr_warnings": []
}

View File

@@ -35,13 +35,13 @@
"updated_at": "2026-05-17T13:00:09.485818+00:00",
"uploaded_by": "admin",
"version_number": 1,
"ingest_status": 4,
"ingest_status_updated_at": "2026-05-20T16:00:02.515903+00:00",
"ingest_completed_at": "",
"ingest_document_name": "",
"ingest_document_updated_at": "",
"ingest_document_sha256": "",
"ingest_agent_run_id": "run_3a0b0ecb941b4c8e"
"ingest_status": 3,
"ingest_status_updated_at": "2026-05-21T15:56:58.286585+00:00",
"ingest_completed_at": "2026-05-21T15:56:58.286585+00:00",
"ingest_document_name": "无单需求文档0506.docx",
"ingest_document_updated_at": "2026-05-17T13:00:09.485818+00:00",
"ingest_document_sha256": "00985ec85a8163be9c9ffc5eb522df18ed52d4b131ceed12102c2d75e4df85a9",
"ingest_agent_run_id": "run_9f4f60cf545c470f"
}
]
}

View File

@@ -26,8 +26,7 @@
}
},
"a8f8465df08e455ebe133351721d49f8": {
"status": "failed",
"error_msg": "Embedding func: Worker execution timeout after 60s",
"status": "processed",
"chunks_count": 6,
"chunks_list": [
"chunk-07de6ea74f60535b689f977295770273",
@@ -40,12 +39,29 @@
"content_summary": "# 产品需求文档\n## 文档信息\n| 项目 | 内容 |\n|------|------|\n| 项目名称 |\n无单报销\n|\n| 版本 | V1.0 |\n| 日期 | 2026-05-06 |\n| 状态 | 正式版 |\n---\n## 1. 项目概述\n### 1.1 项目背景\n面向\n大型企业\n从业务人员视角出发解决现有ERP使用体验不佳的问题。\n在ERP的发展历程中“单据化”曾是财务合规的一大进步它确保了每笔支出都有据可查。但不可否认传统的人工填单确实\n也制造了很多\n“枷锁”。在AI时代解...",
"content_length": 9088,
"created_at": "2026-05-19T15:59:57.283110+00:00",
"updated_at": "2026-05-19T16:00:57.323299+00:00",
"updated_at": "2026-05-21T15:56:58.097242+00:00",
"file_path": "/app/server/storage/knowledge/报销制度/a8f8465df08e455ebe133351721d49f8__无单需求文档0506.docx",
"track_id": "insert_20260519_155957_88c49850",
"metadata": {
"processing_start_time": 1779206397,
"processing_end_time": 1779206457
"processing_start_time": 1779378923,
"processing_end_time": 1779379018
}
},
"dup-de90fa8775923ae9a1669c8e24d60529": {
"status": "failed",
"content_summary": "[DUPLICATE] Original document: a8f8465df08e455ebe133351721d49f8",
"content_length": 9088,
"chunks_count": 0,
"chunks_list": [],
"created_at": "2026-05-21T15:55:23.540372+00:00",
"updated_at": "2026-05-21T15:55:23.540380+00:00",
"file_path": "/app/server/storage/knowledge/报销制度/a8f8465df08e455ebe133351721d49f8__无单需求文档0506.docx",
"track_id": "insert_20260521_155523_1e232e61",
"error_msg": "Content already exists. Original doc_id: a8f8465df08e455ebe133351721d49f8, Status: failed",
"metadata": {
"is_duplicate": true,
"original_doc_id": "a8f8465df08e455ebe133351721d49f8",
"original_track_id": "insert_20260519_155957_88c49850"
}
}
}

View File

@@ -1,268 +1,387 @@
{
"2c1cb358f08d44ceb0e4d287133206ec": {
"entity_names": [
"工会委员会",
"Business Original Documents",
"First Approver",
"P8",
"一级部门总经理",
"组织人事部",
"业务原始凭据",
"营销中心",
"保证金",
"投标保证金",
"餐补",
"第十四条业务招待费",
"Chief Engineer",
"业务招待",
"Employee Welfare",
"经济舱",
"2024年4月17日",
"三等舱",
"财务信息化系统",
"分管领导",
"重点支出管理规定",
"备用金借款",
"Financial Review",
"第五章附则",
"Company Leadership",
"第十九条",
"经办人",
"预算内支出",
"Current Account Payment",
"Business Entertainment",
"Tax Control System Details",
"第二十一条",
"成本中心归属",
"岗位支出报销审批权限表",
"工会经费管理办法",
"商旅系统",
"Special Subsidy",
"中国银行外汇折算价",
"因公借款",
"资产采购",
"广告费",
"First-Level Department General Manager",
"正式员工",
"一万元",
"公司员工教育培训管理办法",
"责任原则",
"第二章职责分工",
"预算先行",
"Planning and Finance Department",
"Accommodation Cost Reimbursement",
"Official Vehicle Subsidy",
"第四条归口管理部门主要职责",
"Personal Service Compensation",
"邮递费",
"附表3支出归口管理部门与归口业务范围",
"员工",
"第二条目的",
"Director",
"支出归口管理部门与归口业务范围",
"其他支出(员工)",
"报销标准",
"5000000 Yuan Approval Limit",
"第十一条备用金借款",
"会议费",
"第十七条",
"第七条各级管理人员主要职责",
"50000 Yuan Approval Limit",
"全资子公司",
"涉外业务汇率标准",
"总监",
"第十三条差旅费",
"审批权限表",
"商旅订票规范",
"Final Approval Position",
"报销资格",
"新增报销规定",
"公司支出管理办法",
"Institution General Manager",
"房屋租金",
"Staff Activities",
"分包外包(内部单位)",
"报销申请时限",
"Financial Information System",
"Expenditure Authorization Approval Scope",
"直辖市",
"培训费",
"第十二条市内交通费",
"第十五条",
"终审岗",
"Remote Work Housing",
"Centralized Management department",
"第二十条",
"办公室(党委办公室)",
"Three Flows Consistency Principle",
"审批权限",
"VAT Special Invoice",
"后勤服务部",
"员工支出报销审批权限表",
"公司总裁",
"出差补贴",
"Basic Level Managers",
"预付款项",
"附表1员工支出报销审批权限表",
"经办部门",
"信息管理部",
"通信费",
"第十六条",
"增值税发票",
"财务入账条件",
"Hotel Accommodation Standards",
"审批流转程序",
"Self-Driving Travel Provisions",
"交通费",
"第九条支出报销审批",
"薪酬福利支出分配计划",
"产品规划设计部",
"因公用车补贴",
"Committee Chairpersons",
"Business Division General Manager",
"组织安排",
"1 Yuan Per Person Per Kilometer Reimbursement",
"Separation of Approval and Processing Principle",
"第五条计划财务部主要职责",
"200000 Yuan Approval Limit",
"公司各部门",
"第十四条",
"Other Areas",
"分支机构",
"Departments And Units",
"计划财务部",
"Other Employees",
"第二十三条",
"公司团建管理办法",
"火车硬席",
"税控系统明细清单",
"Trade Union Fund",
"报销标准变化情况",
"薪酬福利支出",
"Hong Kong, Macau, And Taiwan Region",
"对外捐赠支出",
"Multi-Level Approval Rule",
"Three Working Days Deadline",
"Employee Remuneration",
"销售退款",
"股权投资、兼并收购",
"控股子公司",
"取消报销规定",
"Procurement Management Regulations",
"Middle Managers",
"差旅费",
"批办分离",
"住宿费",
"Travel Allowance Standards",
"第二十三条本办法的归口与实施",
"Senior Vice President",
"供应商",
"人事归口管理部门",
"Management Personnel At All Levels",
"效益优先",
"Operating Department Individual",
"Remote Work Housing Rental Expenses",
"取消报销规定内容",
"Company",
"修订说明",
"国网数科公司",
"Vice President",
"分级授权",
"Expenditure Reimbursement Application",
"第二十四条附件",
"第二十二条",
"出租车",
"Night High-Speed Rail Provision",
"各级管理人员",
"受益原则",
"公司员工因公通讯费用实施细则",
"公司支出管理办法(2024)",
"出差补贴标准",
"Bid Security Deposit Approval Limits Table",
"第二条范围",
"Company Property Rental Management",
"调动工作",
"远光软件股份有限公司",
"市内交通费",
"交通工具等级标准",
"Operator",
"第八条支出报销申请",
"Directly-Controlled Municipalities And Special Administrative Regions",
"出差规定",
"业务招待费",
"Senior Managers",
"逐级审批规则",
"Company Business Travel System",
"广告宣传费",
"Transportation Cost Reimbursement",
"财务",
"第一章总则",
"材料采购",
"人力资源服务部",
"证券与法律事务部",
"Transportation Level Standards",
"归口管理部门",
"商旅客服",
"第四章重点支出管理规定",
"出差审批程序",
"Business Trip Approval",
"西藏",
"附表2岗位支出报销审批权限表",
"第十八条",
"第二十四条",
"Company Hotel Accommodation Limit Standards",
"办法",
"DAP研发中心",
"新增规定内容",
"基本补助",
"Travel Allowance",
"异地挂职锻炼补贴标准",
"部门负责人",
"Provincial Capitals",
"特区",
"Transportation Tickets",
"第三章支出报销申请与审批",
"品牌及市场运营中心",
"分包外包(外部单位)",
"探亲路费",
"President",
"凭据报销",
"基本出差补贴",
"Taxi Usage Regulations",
"Government Fees",
"Commercial Travel System",
"远光制度202414号",
"审批权限变化情况",
"基建工程",
"支出报销申请与审批",
"中国外汇交易中心参考汇率",
"Department Manager",
"支出报销审批",
"预算调整决策程序",
"公司1号文",
"External Conference Accommodation",
"厉行节约",
"Commercial Insurance",
"公司",
"第三条管理原则",
"捐赠申请",
"分类控制",
"业务宣传费",
"产业投资部",
"公司员工探亲管理办法",
"Subsequent Approver",
"100000 Yuan Approval Limit",
"Tax Authority Recognized Invoice",
"国家电网公司",
"业务佐证材料",
"第六条经办部门(个人)主要职责",
"结算起点",
"第十条支出成本中心归属",
"母公司"
],
"count": 258,
"create_time": 1779012093,
"update_time": 1779012093,
"_id": "2c1cb358f08d44ceb0e4d287133206ec"
}
{
"2c1cb358f08d44ceb0e4d287133206ec": {
"entity_names": [
"工会委员会",
"Business Original Documents",
"First Approver",
"P8",
"一级部门总经理",
"组织人事部",
"业务原始凭据",
"营销中心",
"保证金",
"投标保证金",
"餐补",
"第十四条业务招待费",
"Chief Engineer",
"业务招待",
"Employee Welfare",
"经济舱",
"2024年4月17日",
"三等舱",
"财务信息化系统",
"分管领导",
"重点支出管理规定",
"备用金借款",
"Financial Review",
"第五章附则",
"Company Leadership",
"第十九条",
"经办人",
"预算内支出",
"Current Account Payment",
"Business Entertainment",
"Tax Control System Details",
"第二十一条",
"成本中心归属",
"岗位支出报销审批权限表",
"工会经费管理办法",
"商旅系统",
"Special Subsidy",
"中国银行外汇折算价",
"因公借款",
"资产采购",
"广告费",
"First-Level Department General Manager",
"正式员工",
"一万元",
"公司员工教育培训管理办法",
"责任原则",
"第二章职责分工",
"预算先行",
"Planning and Finance Department",
"Accommodation Cost Reimbursement",
"Official Vehicle Subsidy",
"第四条归口管理部门主要职责",
"Personal Service Compensation",
"邮递费",
"附表3支出归口管理部门与归口业务范围",
"员工",
"第二条目的",
"Director",
"支出归口管理部门与归口业务范围",
"其他支出(员工)",
"报销标准",
"5000000 Yuan Approval Limit",
"第十一条备用金借款",
"会议费",
"第十七条",
"第七条各级管理人员主要职责",
"50000 Yuan Approval Limit",
"全资子公司",
"涉外业务汇率标准",
"总监",
"第十三条差旅费",
"审批权限表",
"商旅订票规范",
"Final Approval Position",
"报销资格",
"新增报销规定",
"公司支出管理办法",
"Institution General Manager",
"房屋租金",
"Staff Activities",
"分包外包(内部单位)",
"报销申请时限",
"Financial Information System",
"Expenditure Authorization Approval Scope",
"直辖市",
"培训费",
"第十二条市内交通费",
"第十五条",
"终审岗",
"Remote Work Housing",
"Centralized Management department",
"第二十条",
"办公室(党委办公室)",
"Three Flows Consistency Principle",
"审批权限",
"VAT Special Invoice",
"后勤服务部",
"员工支出报销审批权限表",
"公司总裁",
"出差补贴",
"Basic Level Managers",
"预付款项",
"附表1员工支出报销审批权限表",
"经办部门",
"信息管理部",
"通信费",
"第十六条",
"增值税发票",
"财务入账条件",
"Hotel Accommodation Standards",
"审批流转程序",
"Self-Driving Travel Provisions",
"交通费",
"第九条支出报销审批",
"薪酬福利支出分配计划",
"产品规划设计部",
"因公用车补贴",
"Committee Chairpersons",
"Business Division General Manager",
"组织安排",
"1 Yuan Per Person Per Kilometer Reimbursement",
"Separation of Approval and Processing Principle",
"第五条计划财务部主要职责",
"200000 Yuan Approval Limit",
"公司各部门",
"第十四条",
"Other Areas",
"分支机构",
"Departments And Units",
"计划财务部",
"Other Employees",
"第二十三条",
"公司团建管理办法",
"火车硬席",
"税控系统明细清单",
"Trade Union Fund",
"报销标准变化情况",
"薪酬福利支出",
"Hong Kong, Macau, And Taiwan Region",
"对外捐赠支出",
"Multi-Level Approval Rule",
"Three Working Days Deadline",
"Employee Remuneration",
"销售退款",
"股权投资、兼并收购",
"控股子公司",
"取消报销规定",
"Procurement Management Regulations",
"Middle Managers",
"差旅费",
"批办分离",
"住宿费",
"Travel Allowance Standards",
"第二十三条本办法的归口与实施",
"Senior Vice President",
"供应商",
"人事归口管理部门",
"Management Personnel At All Levels",
"效益优先",
"Operating Department Individual",
"Remote Work Housing Rental Expenses",
"取消报销规定内容",
"Company",
"修订说明",
"国网数科公司",
"Vice President",
"分级授权",
"Expenditure Reimbursement Application",
"第二十四条附件",
"第二十二条",
"出租车",
"Night High-Speed Rail Provision",
"各级管理人员",
"受益原则",
"公司员工因公通讯费用实施细则",
"公司支出管理办法(2024)",
"出差补贴标准",
"Bid Security Deposit Approval Limits Table",
"第二条范围",
"Company Property Rental Management",
"调动工作",
"远光软件股份有限公司",
"市内交通费",
"交通工具等级标准",
"Operator",
"第八条支出报销申请",
"Directly-Controlled Municipalities And Special Administrative Regions",
"出差规定",
"业务招待费",
"Senior Managers",
"逐级审批规则",
"Company Business Travel System",
"广告宣传费",
"Transportation Cost Reimbursement",
"财务",
"第一章总则",
"材料采购",
"人力资源服务部",
"证券与法律事务部",
"Transportation Level Standards",
"归口管理部门",
"商旅客服",
"第四章重点支出管理规定",
"出差审批程序",
"Business Trip Approval",
"西藏",
"附表2岗位支出报销审批权限表",
"第十八条",
"第二十四条",
"Company Hotel Accommodation Limit Standards",
"办法",
"DAP研发中心",
"新增规定内容",
"基本补助",
"Travel Allowance",
"异地挂职锻炼补贴标准",
"部门负责人",
"Provincial Capitals",
"特区",
"Transportation Tickets",
"第三章支出报销申请与审批",
"品牌及市场运营中心",
"分包外包(外部单位)",
"探亲路费",
"President",
"凭据报销",
"基本出差补贴",
"Taxi Usage Regulations",
"Government Fees",
"Commercial Travel System",
"远光制度202414号",
"审批权限变化情况",
"基建工程",
"支出报销申请与审批",
"中国外汇交易中心参考汇率",
"Department Manager",
"支出报销审批",
"预算调整决策程序",
"公司1号文",
"External Conference Accommodation",
"厉行节约",
"Commercial Insurance",
"公司",
"第三条管理原则",
"捐赠申请",
"分类控制",
"业务宣传费",
"产业投资部",
"公司员工探亲管理办法",
"Subsequent Approver",
"100000 Yuan Approval Limit",
"Tax Authority Recognized Invoice",
"国家电网公司",
"业务佐证材料",
"第六条经办部门(个人)主要职责",
"结算起点",
"第十条支出成本中心归属",
"母公司"
],
"count": 258,
"create_time": 1779012093,
"update_time": 1779012093,
"_id": "2c1cb358f08d44ceb0e4d287133206ec"
},
"a8f8465df08e455ebe133351721d49f8": {
"entity_names": [
"User Menu",
"Logout",
"行政秘书",
"配色方案",
"Q1 Quarterly Business Progress Report",
"补充上传按钮",
"AI",
"侧边栏",
"凭证识别",
"预审按钮",
"标题栏",
"Sidebar",
"Mini Program Code",
"Smart Platform Jiangsu Province Company Operations Support",
"Pre-Review Result Display",
"扫码上传",
"出差",
"影子ERP",
"Preset Assistant Cards",
"Trip Time Check",
"合规性检查",
"Airport Bus Ticket Check",
"Train Ticket Compliance Check",
"总裁办",
"ERP系统",
"Initiate Matter",
"Procurement Specialist",
"Submit Reimbursement",
"商旅附件",
"Title Bar",
"Web端",
"用户菜单",
"Time Track",
"2026 National AI Technology Summit in Hefei",
"Taxi Invoice Check",
"Activity Bar",
"Pre-Review Problem Summary",
"Matter List",
"Global Chat Bar",
"Problem Items",
"状态栏",
"Personal Center",
"Flight Ticket Compliance Check",
"UI Layout",
"飞机票行程单",
"Ashy有限公司",
"User Center Module",
"正文",
"Go Reimburse Button",
"Menu 2",
"Normal Items",
"住宿发票及流水",
"Business Travel",
"报销流程",
"火车票",
"活动栏",
"Invoice Title Check",
"采购专员",
"线下自付",
"火车票超标",
"Document Upload",
"Submission Confirmation Prompt",
"功能需求",
"零报销",
"User Message",
"AI Assistant",
"ERP",
"无单报销",
"底部对话栏",
"审核点",
"Submission Result Prompt",
"Document Recognition",
"即效合规",
"Main Content Area",
"费控专责",
"完整性检查",
"User Center",
"Cost Control Specialist",
"AI Reply",
"公共交通发票及行程单",
"Summon Panel",
"Receipt-Free Reimbursement",
"Status Bar",
"Hotel Booking Compliance Check",
"Warning Icon",
"Finance BP",
"菜单1",
"Taxi Trip Time Compliance Check",
"大型企业",
"AI预审",
"凭证处理流程",
"Expense Reimbursement Submission Process",
"Role Prompt Templates",
"Pre-Review Pass Notification",
"AI Assistant Module",
"用户中心",
"Supplementary Upload Button",
"问题项目标识",
"Subway Invoice Check",
"业务人员",
"Role Configuration Pop-up Window",
"AI Pre-Review",
"出租车发票及行程单",
"无单报销工具",
"财务BP",
"飞机票超标",
"Bottom Dialog Bar",
"商旅预订",
"凭证缩略图",
"Administrative Secretary",
"问题标注"
],
"count": 111,
"create_time": 1779379018,
"update_time": 1779379018,
"_id": "a8f8465df08e455ebe133351721d49f8"
}
}

View File

@@ -1,166 +1,278 @@
{
"2c1cb358f08d44ceb0e4d287133206ec": {
"relation_pairs": [
[
"Departments And Units",
"Taxi Usage Regulations"
],
[
"取消报销规定内容",
"报销标准变化情况"
],
[
"业务招待费",
"第十四条"
],
[
"控股子公司",
"计划财务部"
],
[
"公司支出管理办法",
"工会委员会"
],
[
"第一章总则",
"第三条管理原则"
],
[
"广告宣传费",
"第十六条"
],
[
"Tax Control System Details",
"VAT Special Invoice"
],
[
"Expenditure Reimbursement Application",
"Tax Authority Recognized Invoice"
],
[
"远光制度202414号",
"远光软件股份有限公司"
],
[
"Financial Review",
"Operator"
],
[
"Operating Department Individual",
"Procurement Management Regulations"
],
[
"会议费",
"第十五条"
],
[
"Company",
"Management Personnel At All Levels"
],
[
"公司",
"第十七条"
],
[
"公司",
"第十八条"
],
[
"Operator",
"Three Working Days Deadline"
],
[
"第十一条备用金借款",
"第四章重点支出管理规定"
],
[
"Expenditure Reimbursement Application",
"Operator"
],
[
"业务招待费",
"差旅费"
],
[
"公司",
"第二十一条"
],
[
"公司支出管理办法(2024)",
"远光软件股份有限公司"
],
[
"第四条归口管理部门主要职责",
"计划财务部"
],
[
"会议费",
"差旅费"
],
[
"Company",
"Operating Department Individual"
],
[
"商旅系统",
"差旅费"
],
[
"会议费",
"公司总裁"
],
[
"计划财务部",
"远光软件股份有限公司"
],
[
"公司",
"第十九条"
],
[
"公司",
"第二十条"
],
[
"Company",
"Planning and Finance Department"
],
[
"公司支出管理办法",
"营销中心"
],
[
"Business Original Documents",
"Operator"
],
[
"公司支出管理办法",
"办公室(党委办公室)"
],
[
"Departments And Units",
"Night High-Speed Rail Provision"
],
[
"Centralized Management department",
"Company"
],
[
"组织人事部",
"调动工作"
],
[
"报销标准变化情况",
"远光软件股份有限公司"
],
[
"第一章总则",
"远光软件股份有限公司"
]
],
"count": 39,
"create_time": 1779012093,
"update_time": 1779012093,
"_id": "2c1cb358f08d44ceb0e4d287133206ec"
}
{
"2c1cb358f08d44ceb0e4d287133206ec": {
"relation_pairs": [
[
"Departments And Units",
"Taxi Usage Regulations"
],
[
"取消报销规定内容",
"报销标准变化情况"
],
[
"业务招待费",
"第十四条"
],
[
"控股子公司",
"计划财务部"
],
[
"公司支出管理办法",
"工会委员会"
],
[
"第一章总则",
"第三条管理原则"
],
[
"广告宣传费",
"第十六条"
],
[
"Tax Control System Details",
"VAT Special Invoice"
],
[
"Expenditure Reimbursement Application",
"Tax Authority Recognized Invoice"
],
[
"远光制度202414号",
"远光软件股份有限公司"
],
[
"Financial Review",
"Operator"
],
[
"Operating Department Individual",
"Procurement Management Regulations"
],
[
"会议费",
"第十五条"
],
[
"Company",
"Management Personnel At All Levels"
],
[
"公司",
"第十七条"
],
[
"公司",
"第十八条"
],
[
"Operator",
"Three Working Days Deadline"
],
[
"第十一条备用金借款",
"第四章重点支出管理规定"
],
[
"Expenditure Reimbursement Application",
"Operator"
],
[
"业务招待费",
"差旅费"
],
[
"公司",
"第二十一条"
],
[
"公司支出管理办法(2024)",
"远光软件股份有限公司"
],
[
"第四条归口管理部门主要职责",
"计划财务部"
],
[
"会议费",
"差旅费"
],
[
"Company",
"Operating Department Individual"
],
[
"商旅系统",
"差旅费"
],
[
"会议费",
"公司总裁"
],
[
"计划财务部",
"远光软件股份有限公司"
],
[
"公司",
"第十九条"
],
[
"公司",
"第二十条"
],
[
"Company",
"Planning and Finance Department"
],
[
"公司支出管理办法",
"营销中心"
],
[
"Business Original Documents",
"Operator"
],
[
"公司支出管理办法",
"办公室(党委办公室)"
],
[
"Departments And Units",
"Night High-Speed Rail Provision"
],
[
"Centralized Management department",
"Company"
],
[
"组织人事部",
"调动工作"
],
[
"报销标准变化情况",
"远光软件股份有限公司"
],
[
"第一章总则",
"远光软件股份有限公司"
]
],
"count": 39,
"create_time": 1779012093,
"update_time": 1779012093,
"_id": "2c1cb358f08d44ceb0e4d287133206ec"
},
"a8f8465df08e455ebe133351721d49f8": {
"relation_pairs": [
[
"AI预审",
"预审按钮"
],
[
"Menu 2",
"User Center"
],
[
"Pre-Review Result Display",
"Train Ticket Compliance Check"
],
[
"AI Assistant",
"Menu 2"
],
[
"AI预审",
"问题标注"
],
[
"业务人员",
"无单报销"
],
[
"状态栏",
"配色方案"
],
[
"Matter List",
"Smart Platform Jiangsu Province Company Operations Support"
],
[
"总裁办",
"无单报销"
],
[
"Document Upload",
"Receipt-Free Reimbursement"
],
[
"Flight Ticket Compliance Check",
"Pre-Review Result Display"
],
[
"Web端",
"无单报销"
],
[
"Receipt-Free Reimbursement",
"Submit Reimbursement"
],
[
"功能需求",
"配色方案"
],
[
"完整性检查",
"审核点"
],
[
"Receipt-Free Reimbursement",
"Time Track"
],
[
"合规性检查",
"审核点"
],
[
"ERP",
"无单报销"
],
[
"AI预审",
"完整性检查"
],
[
"Matter List",
"Q1 Quarterly Business Progress Report"
],
[
"Menu 2",
"Receipt-Free Reimbursement"
],
[
"AI预审",
"合规性检查"
],
[
"Matter List",
"Menu 2"
],
[
"2026 National AI Technology Summit in Hefei",
"Matter List"
],
[
"大型企业",
"无单报销"
],
[
"Initiate Matter",
"Receipt-Free Reimbursement"
]
],
"count": 26,
"create_time": 1779379018,
"update_time": 1779379018,
"_id": "a8f8465df08e455ebe133351721d49f8"
}
}

View File

@@ -1,353 +1,587 @@
{
"第一章总则<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012088,
"update_time": 1779012088,
"_id": "第一章总则<SEP>远光软件股份有限公司"
},
"第十一条备用金借款<SEP>第四章重点支出管理规定": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012088,
"update_time": 1779012088,
"_id": "第十一条备用金借款<SEP>第四章重点支出管理规定"
},
"公司支出管理办法<SEP>办公室(党委办公室)": {
"chunk_ids": [
"chunk-afc57a0e9548d1f484da6df6c182676b"
],
"count": 1,
"create_time": 1779012088,
"update_time": 1779012088,
"_id": "公司支出管理办法<SEP>办公室(党委办公室)"
},
"计划财务部<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012076,
"update_time": 1779012076,
"_id": "计划财务部<SEP>远光软件股份有限公司"
},
"第一章总则<SEP>第三条管理原则": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012076,
"update_time": 1779012076,
"_id": "第一章总则<SEP>第三条管理原则"
},
"Company<SEP>Management Personnel At All Levels": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012076,
"update_time": 1779012076,
"_id": "Company<SEP>Management Personnel At All Levels"
},
"Centralized Management department<SEP>Company": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012077,
"update_time": 1779012077,
"_id": "Centralized Management department<SEP>Company"
},
"Company<SEP>Planning and Finance Department": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012077,
"update_time": 1779012077,
"_id": "Company<SEP>Planning and Finance Department"
},
"Company<SEP>Operating Department Individual": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012078,
"update_time": 1779012078,
"_id": "Company<SEP>Operating Department Individual"
},
"公司支出管理办法<SEP>工会委员会": {
"chunk_ids": [
"chunk-afc57a0e9548d1f484da6df6c182676b"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "公司支出管理办法<SEP>工会委员会"
},
"Expenditure Reimbursement Application<SEP>Operator": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "Expenditure Reimbursement Application<SEP>Operator"
},
"公司支出管理办法<SEP>营销中心": {
"chunk_ids": [
"chunk-afc57a0e9548d1f484da6df6c182676b"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "公司支出管理办法<SEP>营销中心"
},
"第四条归口管理部门主要职责<SEP>计划财务部": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "第四条归口管理部门主要职责<SEP>计划财务部"
},
"Tax Control System Details<SEP>VAT Special Invoice": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "Tax Control System Details<SEP>VAT Special Invoice"
},
"Operating Department Individual<SEP>Procurement Management Regulations": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012081,
"update_time": 1779012081,
"_id": "Operating Department Individual<SEP>Procurement Management Regulations"
},
"Business Original Documents<SEP>Operator": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012094,
"update_time": 1779012094,
"_id": "Business Original Documents<SEP>Operator"
},
"Expenditure Reimbursement Application<SEP>Tax Authority Recognized Invoice": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012094,
"update_time": 1779012094,
"_id": "Expenditure Reimbursement Application<SEP>Tax Authority Recognized Invoice"
},
"公司<SEP>第十七条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012094,
"update_time": 1779012094,
"_id": "公司<SEP>第十七条"
},
"Operator<SEP>Three Working Days Deadline": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012083,
"update_time": 1779012083,
"_id": "Operator<SEP>Three Working Days Deadline"
},
"Departments And Units<SEP>Night High-Speed Rail Provision": {
"chunk_ids": [
"chunk-613d6dfd4c5e9c807229a3147f96b584"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "Departments And Units<SEP>Night High-Speed Rail Provision"
},
"公司<SEP>第十八条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "公司<SEP>第十八条"
},
"公司<SEP>第十九条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "公司<SEP>第十九条"
},
"报销标准变化情况<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-18d968b78afe916b419c1b5973421ebe"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "报销标准变化情况<SEP>远光软件股份有限公司"
},
"取消报销规定内容<SEP>报销标准变化情况": {
"chunk_ids": [
"chunk-18d968b78afe916b419c1b5973421ebe"
],
"count": 1,
"create_time": 1779012085,
"update_time": 1779012085,
"_id": "取消报销规定内容<SEP>报销标准变化情况"
},
"Financial Review<SEP>Operator": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012085,
"update_time": 1779012085,
"_id": "Financial Review<SEP>Operator"
},
"公司支出管理办法(2024)<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-dd87aa5bc62cc9587ecb4c26d35a5263"
],
"count": 1,
"create_time": 1779012085,
"update_time": 1779012085,
"_id": "公司支出管理办法(2024)<SEP>远光软件股份有限公司"
},
"远光制度202414号<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-dd87aa5bc62cc9587ecb4c26d35a5263"
],
"count": 1,
"create_time": 1779012086,
"update_time": 1779012086,
"_id": "远光制度202414号<SEP>远光软件股份有限公司"
},
"Departments And Units<SEP>Taxi Usage Regulations": {
"chunk_ids": [
"chunk-613d6dfd4c5e9c807229a3147f96b584"
],
"count": 1,
"create_time": 1779012099,
"update_time": 1779012099,
"_id": "Departments And Units<SEP>Taxi Usage Regulations"
},
"控股子公司<SEP>计划财务部": {
"chunk_ids": [
"chunk-dd87aa5bc62cc9587ecb4c26d35a5263"
],
"count": 1,
"create_time": 1779012099,
"update_time": 1779012099,
"_id": "控股子公司<SEP>计划财务部"
},
"公司<SEP>第二十条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012086,
"update_time": 1779012086,
"_id": "公司<SEP>第二十条"
},
"商旅系统<SEP>差旅费": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012086,
"update_time": 1779012086,
"_id": "商旅系统<SEP>差旅费"
},
"业务招待费<SEP>差旅费": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012089,
"update_time": 1779012089,
"_id": "业务招待费<SEP>差旅费"
},
"公司<SEP>第二十一条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012089,
"update_time": 1779012089,
"_id": "公司<SEP>第二十一条"
},
"广告宣传费<SEP>第十六条": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012089,
"update_time": 1779012089,
"_id": "广告宣传费<SEP>第十六条"
},
"组织人事部<SEP>调动工作": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012090,
"update_time": 1779012090,
"_id": "组织人事部<SEP>调动工作"
},
"会议费<SEP>差旅费": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012092,
"update_time": 1779012092,
"_id": "会议费<SEP>差旅费"
},
"业务招待费<SEP>第十四条": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012092,
"update_time": 1779012092,
"_id": "业务招待费<SEP>第十四条"
},
"会议费<SEP>第十五条": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012092,
"update_time": 1779012092,
"_id": "会议费<SEP>第十五条"
},
"会议费<SEP>公司总裁": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012093,
"update_time": 1779012093,
"_id": "会议费<SEP>公司总裁"
}
{
"第一章总则<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012088,
"update_time": 1779012088,
"_id": "第一章总则<SEP>远光软件股份有限公司"
},
"第十一条备用金借款<SEP>第四章重点支出管理规定": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012088,
"update_time": 1779012088,
"_id": "第十一条备用金借款<SEP>第四章重点支出管理规定"
},
"公司支出管理办法<SEP>办公室(党委办公室)": {
"chunk_ids": [
"chunk-afc57a0e9548d1f484da6df6c182676b"
],
"count": 1,
"create_time": 1779012088,
"update_time": 1779012088,
"_id": "公司支出管理办法<SEP>办公室(党委办公室)"
},
"计划财务部<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012076,
"update_time": 1779012076,
"_id": "计划财务部<SEP>远光软件股份有限公司"
},
"第一章总则<SEP>第三条管理原则": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012076,
"update_time": 1779012076,
"_id": "第一章总则<SEP>第三条管理原则"
},
"Company<SEP>Management Personnel At All Levels": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012076,
"update_time": 1779012076,
"_id": "Company<SEP>Management Personnel At All Levels"
},
"Centralized Management department<SEP>Company": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012077,
"update_time": 1779012077,
"_id": "Centralized Management department<SEP>Company"
},
"Company<SEP>Planning and Finance Department": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012077,
"update_time": 1779012077,
"_id": "Company<SEP>Planning and Finance Department"
},
"Company<SEP>Operating Department Individual": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012078,
"update_time": 1779012078,
"_id": "Company<SEP>Operating Department Individual"
},
"公司支出管理办法<SEP>工会委员会": {
"chunk_ids": [
"chunk-afc57a0e9548d1f484da6df6c182676b"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "公司支出管理办法<SEP>工会委员会"
},
"Expenditure Reimbursement Application<SEP>Operator": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "Expenditure Reimbursement Application<SEP>Operator"
},
"公司支出管理办法<SEP>营销中心": {
"chunk_ids": [
"chunk-afc57a0e9548d1f484da6df6c182676b"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "公司支出管理办法<SEP>营销中心"
},
"第四条归口管理部门主要职责<SEP>计划财务部": {
"chunk_ids": [
"chunk-aa5435156b829944c173fa1d2d7a93d4"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "第四条归口管理部门主要职责<SEP>计划财务部"
},
"Tax Control System Details<SEP>VAT Special Invoice": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012079,
"update_time": 1779012079,
"_id": "Tax Control System Details<SEP>VAT Special Invoice"
},
"Operating Department Individual<SEP>Procurement Management Regulations": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012081,
"update_time": 1779012081,
"_id": "Operating Department Individual<SEP>Procurement Management Regulations"
},
"Business Original Documents<SEP>Operator": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012094,
"update_time": 1779012094,
"_id": "Business Original Documents<SEP>Operator"
},
"Expenditure Reimbursement Application<SEP>Tax Authority Recognized Invoice": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012094,
"update_time": 1779012094,
"_id": "Expenditure Reimbursement Application<SEP>Tax Authority Recognized Invoice"
},
"公司<SEP>第十七条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012094,
"update_time": 1779012094,
"_id": "公司<SEP>第十七条"
},
"Operator<SEP>Three Working Days Deadline": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012083,
"update_time": 1779012083,
"_id": "Operator<SEP>Three Working Days Deadline"
},
"Departments And Units<SEP>Night High-Speed Rail Provision": {
"chunk_ids": [
"chunk-613d6dfd4c5e9c807229a3147f96b584"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "Departments And Units<SEP>Night High-Speed Rail Provision"
},
"公司<SEP>第十八条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "公司<SEP>第十八条"
},
"公司<SEP>第十九条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "公司<SEP>第十九条"
},
"报销标准变化情况<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-18d968b78afe916b419c1b5973421ebe"
],
"count": 1,
"create_time": 1779012084,
"update_time": 1779012084,
"_id": "报销标准变化情况<SEP>远光软件股份有限公司"
},
"取消报销规定内容<SEP>报销标准变化情况": {
"chunk_ids": [
"chunk-18d968b78afe916b419c1b5973421ebe"
],
"count": 1,
"create_time": 1779012085,
"update_time": 1779012085,
"_id": "取消报销规定内容<SEP>报销标准变化情况"
},
"Financial Review<SEP>Operator": {
"chunk_ids": [
"chunk-74c01decac4a10cd40a491786743b0ee"
],
"count": 1,
"create_time": 1779012085,
"update_time": 1779012085,
"_id": "Financial Review<SEP>Operator"
},
"公司支出管理办法(2024)<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-dd87aa5bc62cc9587ecb4c26d35a5263"
],
"count": 1,
"create_time": 1779012085,
"update_time": 1779012085,
"_id": "公司支出管理办法(2024)<SEP>远光软件股份有限公司"
},
"远光制度202414号<SEP>远光软件股份有限公司": {
"chunk_ids": [
"chunk-dd87aa5bc62cc9587ecb4c26d35a5263"
],
"count": 1,
"create_time": 1779012086,
"update_time": 1779012086,
"_id": "远光制度202414号<SEP>远光软件股份有限公司"
},
"Departments And Units<SEP>Taxi Usage Regulations": {
"chunk_ids": [
"chunk-613d6dfd4c5e9c807229a3147f96b584"
],
"count": 1,
"create_time": 1779012099,
"update_time": 1779012099,
"_id": "Departments And Units<SEP>Taxi Usage Regulations"
},
"控股子公司<SEP>计划财务部": {
"chunk_ids": [
"chunk-dd87aa5bc62cc9587ecb4c26d35a5263"
],
"count": 1,
"create_time": 1779012099,
"update_time": 1779012099,
"_id": "控股子公司<SEP>计划财务部"
},
"公司<SEP>第二十条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012086,
"update_time": 1779012086,
"_id": "公司<SEP>第二十条"
},
"商旅系统<SEP>差旅费": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012086,
"update_time": 1779012086,
"_id": "商旅系统<SEP>差旅费"
},
"业务招待费<SEP>差旅费": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012089,
"update_time": 1779012089,
"_id": "业务招待费<SEP>差旅费"
},
"公司<SEP>第二十一条": {
"chunk_ids": [
"chunk-e9438f69c9e221d9f0f00a05ad84eac6"
],
"count": 1,
"create_time": 1779012089,
"update_time": 1779012089,
"_id": "公司<SEP>第二十一条"
},
"广告宣传费<SEP>第十六条": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012089,
"update_time": 1779012089,
"_id": "广告宣传费<SEP>第十六条"
},
"组织人事部<SEP>调动工作": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012090,
"update_time": 1779012090,
"_id": "组织人事部<SEP>调动工作"
},
"会议费<SEP>差旅费": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012092,
"update_time": 1779012092,
"_id": "会议费<SEP>差旅费"
},
"业务招待费<SEP>第十四条": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012092,
"update_time": 1779012092,
"_id": "业务招待费<SEP>第十四条"
},
"会议费<SEP>第十五条": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012092,
"update_time": 1779012092,
"_id": "会议费<SEP>第十五条"
},
"会议费<SEP>公司总裁": {
"chunk_ids": [
"chunk-d26b288ed4001dc5c504dce0eb841362"
],
"count": 1,
"create_time": 1779012093,
"update_time": 1779012093,
"_id": "会议费<SEP>公司总裁"
},
"总裁办<SEP>无单报销": {
"chunk_ids": [
"chunk-07de6ea74f60535b689f977295770273"
],
"count": 1,
"create_time": 1779379014,
"update_time": 1779379014,
"_id": "总裁办<SEP>无单报销"
},
"AI预审<SEP>完整性检查": {
"chunk_ids": [
"chunk-1746bd83138e85e66a78e0cb9ad79272"
],
"count": 1,
"create_time": 1779379014,
"update_time": 1779379014,
"_id": "AI预审<SEP>完整性检查"
},
"AI预审<SEP>合规性检查": {
"chunk_ids": [
"chunk-1746bd83138e85e66a78e0cb9ad79272"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "AI预审<SEP>合规性检查"
},
"Web端<SEP>无单报销": {
"chunk_ids": [
"chunk-07de6ea74f60535b689f977295770273"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "Web端<SEP>无单报销"
},
"完整性检查<SEP>审核点": {
"chunk_ids": [
"chunk-1746bd83138e85e66a78e0cb9ad79272"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "完整性检查<SEP>审核点"
},
"AI预审<SEP>问题标注": {
"chunk_ids": [
"chunk-1746bd83138e85e66a78e0cb9ad79272"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "AI预审<SEP>问题标注"
},
"合规性检查<SEP>审核点": {
"chunk_ids": [
"chunk-1746bd83138e85e66a78e0cb9ad79272"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "合规性检查<SEP>审核点"
},
"Pre-Review Result Display<SEP>Train Ticket Compliance Check": {
"chunk_ids": [
"chunk-ce44e4483e4119265b43eacb72e0326a"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "Pre-Review Result Display<SEP>Train Ticket Compliance Check"
},
"大型企业<SEP>无单报销": {
"chunk_ids": [
"chunk-07de6ea74f60535b689f977295770273"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "大型企业<SEP>无单报销"
},
"AI预审<SEP>预审按钮": {
"chunk_ids": [
"chunk-1746bd83138e85e66a78e0cb9ad79272"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "AI预审<SEP>预审按钮"
},
"状态栏<SEP>配色方案": {
"chunk_ids": [
"chunk-2224d777c0b72d0b2dab622c79096c2c"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "状态栏<SEP>配色方案"
},
"Flight Ticket Compliance Check<SEP>Pre-Review Result Display": {
"chunk_ids": [
"chunk-ce44e4483e4119265b43eacb72e0326a"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "Flight Ticket Compliance Check<SEP>Pre-Review Result Display"
},
"Matter List<SEP>Menu 2": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "Matter List<SEP>Menu 2"
},
"业务人员<SEP>无单报销": {
"chunk_ids": [
"chunk-07de6ea74f60535b689f977295770273"
],
"count": 1,
"create_time": 1779379015,
"update_time": 1779379015,
"_id": "业务人员<SEP>无单报销"
},
"Menu 2<SEP>Receipt-Free Reimbursement": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "Menu 2<SEP>Receipt-Free Reimbursement"
},
"ERP<SEP>无单报销": {
"chunk_ids": [
"chunk-07de6ea74f60535b689f977295770273"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "ERP<SEP>无单报销"
},
"功能需求<SEP>配色方案": {
"chunk_ids": [
"chunk-2224d777c0b72d0b2dab622c79096c2c"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "功能需求<SEP>配色方案"
},
"Initiate Matter<SEP>Receipt-Free Reimbursement": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "Initiate Matter<SEP>Receipt-Free Reimbursement"
},
"AI Assistant<SEP>Menu 2": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "AI Assistant<SEP>Menu 2"
},
"Matter List<SEP>Q1 Quarterly Business Progress Report": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "Matter List<SEP>Q1 Quarterly Business Progress Report"
},
"Menu 2<SEP>User Center": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "Menu 2<SEP>User Center"
},
"2026 National AI Technology Summit in Hefei<SEP>Matter List": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379016,
"update_time": 1779379016,
"_id": "2026 National AI Technology Summit in Hefei<SEP>Matter List"
},
"Matter List<SEP>Smart Platform Jiangsu Province Company Operations Support": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379017,
"update_time": 1779379017,
"_id": "Matter List<SEP>Smart Platform Jiangsu Province Company Operations Support"
},
"Document Upload<SEP>Receipt-Free Reimbursement": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379017,
"update_time": 1779379017,
"_id": "Document Upload<SEP>Receipt-Free Reimbursement"
},
"Receipt-Free Reimbursement<SEP>Time Track": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379017,
"update_time": 1779379017,
"_id": "Receipt-Free Reimbursement<SEP>Time Track"
},
"Receipt-Free Reimbursement<SEP>Submit Reimbursement": {
"chunk_ids": [
"chunk-99c6f377dff2b9a37a7214b7b05ea9a8"
],
"count": 1,
"create_time": 1779379017,
"update_time": 1779379017,
"_id": "Receipt-Free Reimbursement<SEP>Submit Reimbursement"
}
}

File diff suppressed because one or more lines are too long

View File

@@ -136,7 +136,9 @@ def test_save_or_submit_preview_does_not_create_claim_without_explicit_action()
assert result["preview_only"] is True
assert result["status"] == "preview"
assert "差旅费按“交通票据金额 + 住宿标准 × 出差天数 + 出差补贴 × 出差天数”估算" in result["message"]
assert "报销测算参考:" in result["message"]
assert "| 项目 | 当前信息 | 复核口径 |" in result["message"]
assert "交通票据金额 + 住宿标准" not in result["message"]
assert _count_claims(db) == before_count
@@ -598,6 +600,91 @@ def test_upsert_draft_from_ontology_supports_link_or_create_for_multi_documents(
assert float(new_claim.amount) == 50.5
def test_link_existing_draft_blocks_duplicate_uploaded_invoice() -> None:
user_id = "duplicate@example.com"
with build_session() as db:
employee = Employee(
employee_no="E5010",
name="重复票据员工",
email=user_id,
)
db.add(employee)
db.flush()
existing_claim = ExpenseClaim(
claim_no="EXP-202605-021",
employee_id=employee.id,
employee_name="重复票据员工",
department_name="销售部",
project_code=None,
expense_type="transport",
reason="原有交通报销",
location="上海",
amount=Decimal("32.50"),
currency="CNY",
invoice_count=1,
occurred_at=datetime(2026, 5, 13, tzinfo=UTC),
status="draft",
approval_stage="待提交",
risk_flags_json=[],
)
existing_claim.items = [
ExpenseClaimItem(
claim_id=existing_claim.id,
item_date=date(2026, 5, 13),
item_type="transport",
item_reason="原有交通报销",
item_location="上海",
item_amount=Decimal("32.50"),
invoice_id="didi-trip.png",
)
]
db.add(existing_claim)
db.commit()
context_json = {
"name": "重复票据员工",
"review_action": "link_to_existing_draft",
"draft_claim_id": existing_claim.id,
"attachment_names": ["didi-trip.png"],
"attachment_count": 1,
"ocr_documents": [
{
"filename": "didi-trip.png",
"summary": "滴滴出行 支付金额 32.50 元",
"text": "滴滴出行 支付金额 32.50 元",
"document_type": "taxi_receipt",
"scene_code": "transport",
"document_fields": [{"key": "amount", "label": "支付金额", "value": "32.50"}],
}
],
}
ontology = SemanticOntologyService(db).parse(
OntologyParseRequest(
query="把这张票据关联到已有草稿",
user_id=user_id,
context_json=context_json,
)
)
result = ExpenseClaimService(db).upsert_draft_from_ontology(
run_id=ontology.run_id,
user_id=user_id,
message="把这张票据关联到已有草稿",
ontology=ontology,
context_json=context_json,
)
db.refresh(existing_claim)
assert result["duplicate_attachment_blocked"] is True
assert result["submission_blocked"] is True
assert "重复" in result["message"]
assert "重新上传不同的票据" in result["message"]
assert len(existing_claim.items) == 1
assert existing_claim.invoice_count == 1
assert float(existing_claim.amount) == 32.5
def test_upsert_travel_draft_uses_ticket_item_types_and_auto_allowance() -> None:
user_id = "travel-allowance@example.com"

File diff suppressed because it is too large Load Diff