☰
基于RAG的物流仓储管理问答系统设计毕业设计源码(源码+lw+部署文档+讲解等)
2026/9/29 12:25:46 网站建设 项目流程

博主介绍:✌ 专注于VUE,小程序,安卓,Java,python,物联网专业,有18年开发经验,长年从事毕业指导,项目实战✌选取一个适合的毕业设计题目很重要。✌关注✌私信我✌具体的问题,我会尽力帮助你。

一、研究目的

本研究旨在构建一种基于检索增强生成(RAG)技术的物流仓储管理问答系统,以提升企业在信息检索与决策支持方面的效率与准确性。通过将大规模文本语料与实时库存数据相结合,系统能够在用户提出问题时即时检索相关文档,并利用生成模型对检索结果进行语义整合,从而提供既具可解释性又具可操作性的答案。

研究的核心目标是实现问答系统在多维度物流场景中的自适应能力,包括订单处理、库存盘点、运输调度与异常事件响应等方面的知识覆盖。为此,本文将首先构建统一的知识图谱,将仓储管理领域内的业务流程、关键指标与标准规范进行结构化表示;随后采用多模态检索技术对文本与表格数据进行联合索引,以提高检索精度。接下来,利用自监督预训练模型对生成模块进行微调,使其能够在保持事实准确性的前提下,生成符合业务语境的自然语言回答。

实验部分将通过与传统基于规则的问答系统及纯检索式系统进行对比,评估所提方法在准确率、响应时间与用户满意度等指标上的优势。最终,本研究期望为物流企业提供一种高效、可扩展且易于维护的智能问答平台,促进知识管理与业务流程的数字化转型。通过实现知识与数据的无缝衔接,系统将为仓储管理人员在日常运营中快速获取决策依据提供有力支持。

二、研究意义

本研究所提出的基于检索增强生成技术的物流仓储管理问答系统,具有多方面的重要学术与应用意义。首先,它为物流行业提供了一种全新的知识管理范式,能够将分散在企业内部的业务手册、操作规范与实时库存信息进行统一建模与检索,从而实现知识资产的高效整合与共享;其次,该系统通过融合检索模块与生成模块,能够在保持事实准确性的前提下生成符合业务语境的自然语言回答,显著提升了信息获取的可解释性与可操作性,为决策支持提供了更为精准的依据;再次,系统所采用的多模态检索与知识图谱技术,为后续研究提供了可复制、可扩展的技术框架,可推广至供应链金融、仓储自动化等相关领域;此外,该研究在方法论层面对检索增强生成模型在工业场景中的适配性与鲁棒性进行了系统验证,为人工智能在高复杂度业务环境中的落地应用提供了实证基础;最后,随着全球物流网络的日益复杂化与数字化转型的加速推进,构建一种能够快速响应多变业务需求、降低人力成本、提升运营效率的智能问答系统,对提升行业整体竞争力具有重要战略意义。

三、国内外研究现状

国内外在检索增强生成(RAG)技术与物流仓储管理问答系统领域的研究已形成若干主要方向,并取得显著成果。国外学术界首先聚焦于大规模预训练语言模型的检索与生成融合,研究者通过引入稀疏检索机制与密集向量检索相结合的方法,显著提升了问答系统在开放域任务中的准确率,例如在MS MARCO、Natural Questions等公开数据集上实现了超过90%的召回率;其次,跨模态检索技术被广泛应用于物流场景中,将文本、表格与图像信息统一编码,以解决传统文本检索难以覆盖的库存报表与货物图片信息;再次,知识图谱在供应链管理中的应用逐渐成熟,研究者通过构建基于实体关系的业务流程图谱,实现了对复杂业务规则的语义化表达,并将其嵌入检索模型中提升答案的可解释性。国内方面,国内高校与企业在物流问答系统研究上呈现出多样化发展趋势。华为、阿里巴巴、京东等企业利用自身大数据平台,构建了面向仓储管理的知识库,并结合BERT、ERNIE等中文预训练模型,对物流领域的专业术语与业务流程进行微调,取得了在内部测试集上超过85%的准确率;与此同时,清华大学、北京理工大学等高校围绕多模态检索与生成模型展开基础研究,提出了基于图卷积网络的实体关系编码方法,并在国内公开数据集如“物流问答数据集”上实现了显著提升;此外,国内研究者也积极探索将RAG技术与企业资源计划(ERP)系统深度集成,实现实时库存查询与异常预警的闭环解决方案。总体来看,国际研究更侧重于模型架构创新与跨域迁移,而国内研究则更注重行业应用场景的定制化与系统集成。两者在检索策略、生成质量、知识图谱构建以及多模态融合等方面形成互补,为后续基于RAG的物流仓储管理问答系统奠定了坚实基础。

四、预期达到目标及解决的关键问题

预期目标主要包括构建一套可在企业级物流仓储管理环境中部署的检索增强生成问答系统,系统能够在用户提出业务相关问题时,自动检索并融合多源知识库与实时库存数据,随后生成准确、可解释且符合业务语境的答案;实现对常见仓储流程、异常事件与决策支持等场景的覆盖,使得物流管理人员能够在日常运营中快速获取所需信息,从而提升工作效率与决策质量;进一步验证RAG技术在中文物流领域中的适配性与鲁棒性,为后续推广至供应链金融、仓储自动化等相关业务提供技术可行性证明。为实现上述目标,研究将聚焦于三大关键技术方向:一是构建高质量的物流知识图谱与多模态检索索引,确保检索模块能够覆盖文本、表格与图像等多种数据形式;二是设计并微调基于中文预训练模型的生成器,使其在保持事实准确性的前提下,能够根据检索结果生成自然语言答案;三是建立系统评估与优化机制,通过对比实验与用户体验调查,持续提升答案质量与响应速度。关键问题主要包括:如何在大规模知识库中实现高效、低延迟的检索;如何解决检索结果多样性导致的生成不确定性,确保答案的一致性与可解释性;如何在实时库存数据与静态知识库之间建立动态同步机制,保证答案的时效性;以及如何在多模态数据融合过程中处理信息噪声与格式不一致的问题。针对这些问题,本研究将采用稀疏检索与密集向量检索相结合的方法,以提升检索召回率;引入自监督预训练与知识蒸馏技术,增强生成模型的事实一致性;构建增量更新机制,实现实时库存数据与知识库的同步;并通过多模态融合框架,对不同数据源进行统一编码与去噪处理。通过上述技术路线,期望在实验阶段实现问答准确率超过90%,响应时间低于1秒,并在实际企业环境中得到验证,最终为物流仓储管理提供一种高效、可扩展且易维护的智能问答解决方案。

五、研究内容

本研究围绕基于检索增强生成技术的物流仓储管理问答系统展开,旨在通过构建统一知识库、设计高效检索与生成模块以及实现系统集成,为企业级物流管理提供智能化的知识服务。首先,在数据准备阶段,将收集企业内部的业务手册、操作规范、库存报表以及实时传感器数据,并对其进行清洗与结构化处理;随后,利用实体识别与关系抽取技术构建物流知识图谱,涵盖订单处理、库存盘点、运输调度与异常事件等关键业务领域;在多模态检索层面,将文本、表格与图像信息统一编码为向量表示,采用稀疏检索(BM25)与密集向量检索(FAISS)相结合的混合策略,以提升召回率与检索速度;接下来,针对生成模块,选用中文预训练语言模型(如ERNIE-3.0或GPT-4中文版),通过自监督预训练与任务特定微调,使其能够在接收检索结果后生成符合业务语境且事实准确的自然语言答案;为解决检索结果多样性导致的生成不确定性,研究将引入知识蒸馏与注意力机制,强化模型对关键实体的关注;在系统集成层面,设计前端问答界面与后端服务架构,采用RESTful API与消息队列实现模块间通信,并通过数据库缓存实时库存信息,以保证答案时效性;此外,将构建监控与评估模块,对系统的准确率、召回率、响应时间与用户满意度进行持续跟踪。实验设计方面,将基于公开物流问答数据集与企业内部数据构建测试集,采用多种评价指标(BLEU、ROUGE、METEOR以及人工评估)与基线模型(纯检索式、传统规则式问答系统)进行对比;通过A/B测试验证系统在真实业务场景中的可行性。研究预期贡献包括:①提出一种面向中文物流领域的检索增强生成框架,兼顾多模态数据融合与知识图谱支持;②构建高质量的物流知识图谱与实时库存同步机制,为后续供应链管理提供数据基础;③通过实验验证RAG技术在工业场景中的适配性,为行业智能化升级提供技术路径。综上所述,本研究将系统性地解决物流仓储管理问答系统的知识构建、检索生成与系统集成等关键技术难题,为企业级物流管理提供可扩展、可维护且高效的智能问答解决方案。

六、需求分析

用户需求方面,系统的主要使用者包括仓储管理人员、物流调度员以及业务分析师,他们对信息获取的时效性与准确性有极高要求;因此,系统必须能够在用户提出自然语言问题后,在毫秒级别内返回答案,并且答案需与最新库存数据、订单状态及运输计划同步;此外,用户期望系统能够解释答案来源,提供检索文档或数据表格的引用,以便进一步核实与决策;在多设备使用场景下,系统应支持桌面端与移动端的无缝切换,并保持界面简洁、交互直观;用户还需具备对系统输出进行反馈的功能,以便持续提升答案质量;最后,鉴于企业内部信息安全要求,系统必须支持细粒度权限控制,确保不同角色只能访问其授权的数据与功能。

功能需求方面,系统需包含知识图谱构建模块,用于抽取与编码业务实体及其关系,并实现对文本、表格与图像的多模态融合;检索引擎应采用混合检索策略,将稀疏检索与密集向量检索相结合,以提升召回率和检索速度;生成模块基于中文预训练语言模型,需支持自监督预训练与业务微调,并通过注意力机制聚焦关键实体,保证答案的事实一致性与可解释性;实时库存同步子系统负责从ERP或WMS获取最新库存与订单信息,并及时更新知识库和检索索引;前端交互界面需支持自然语言输入、答案展示、文档引用查看以及用户反馈提交;后台管理模块应提供权限配置、日志审计与模型监控功能,以满足企业级安全与运维需求。

七、可行性分析

经济可行性方面,系统的开发与部署成本主要集中在数据预处理、知识图谱构建以及模型训练与微调阶段;通过采用开源大模型与云计算资源,可将硬件投入降至最低,预计初期投入约为人民币五百万元,其中数据治理占比约二十%,模型训练占比约三十%,系统集成与运维占比约四十%;在运营阶段,系统通过提升仓储管理效率、降低人工查询成本以及减少因信息误差导致的物流延误,可为企业每年节省约三千万元的人工与运营费用;此外,系统具备可扩展性,可向供应链金融、仓储自动化等业务延伸,形成多元化收入来源;综上,经济收益与成本投入呈正比关系,项目具有良好的投资回报前景。

社会可行性方面,该系统通过提升物流行业的信息化水平,有助于降低物流成本、缩短供应链周期,从而促进产业链的高效运作;在就业层面,系统将部分重复性查询工作自动化,释放管理人员的时间,使其能够专注于更高价值的决策与创新;与此同时,系统对信息安全与隐私保护提出严格要求,通过权限细粒度控制与数据加密技术,保障企业与客户数据不被泄露;此外,系统在灾备与异常处理方面具备容错机制,可在突发事件中快速提供决策支持,提升行业整体韧性;因此,该项目符合国家对物流信息化、数字经济发展的战略需求,具有较高的社会认可度与可接受性。

技术可行性方面,检索增强生成技术已在自然语言处理领域得到广泛验证,其核心组件——稀疏检索与密集向量检索、中文预训练模型以及知识图谱构建均具备成熟的实现方案;在多模态数据融合方面,现有图卷积网络与表格编码技术能够有效处理文本、表格与图像信息,保证检索结果的全面性;生成模块通过自监督预训练与业务微调,可在保持事实一致性的同时生成符合业务语境的答案;系统集成层面,采用微服务架构与容器化部署,可实现高可用、可扩展的运行环境;在安全与合规方面,可通过身份认证、访问控制与审计日志实现对敏感数据的严格管理。鉴于上述技术要素均已具备工业级成熟度,并且系统设计充分考虑了性能优化与容错性,技术实现的可行性被评估为高度可行。

八、功能分析

系统功能模块可分为六大子系统,分别为知识管理子系统、检索引擎子系统、生成服务子系统、实时数据同步子系统、前端交互与用户体验子系统以及后台运维与安全管理子系统。

知识管理子系统负责构建与维护物流仓储领域的知识图谱与多模态知识库。该模块首先通过自然语言处理技术对企业内部业务手册、操作规范及历史案例进行实体识别、关系抽取与属性归纳,随后利用图卷积网络将文本、表格与图像信息统一编码为向量表示,并将其存储于分布式图数据库中;此外,知识管理子系统还提供知识增删改查接口,以支持业务人员对知识库进行持续更新。

检索引擎子系统实现高效的混合检索功能。该模块采用BM25稀疏检索与FAISS密集向量检索相结合的策略,首先在文本层面快速定位相关文档,再通过向量相似度计算细化结果;同时,检索引擎支持多模态查询,可根据用户输入的自然语言或表格数据动态匹配对应的图像与表格信息,并返回最具相关性的知识片段。

生成服务子系统基于中文预训练语言模型实现答案生成。该模块接收检索引擎返回的检索结果与实时库存信息,利用自监督预训练与业务微调模型进行文本生成;在生成过程中,通过注意力机制聚焦关键实体与关系,并结合知识图谱中的事实约束,确保答案的事实一致性与可解释性;生成结果将附带检索文档或数据表格的引用链接,以便用户进一步核实。

实时数据同步子系统负责将企业内部ERP、WMS等系统中的库存、订单与运输状态实时拉取并更新至知识图谱与检索索引。该模块采用增量同步机制,利用消息队列实现异步推送,保证数据时效性;同时,对接收到的实时数据进行格式校验与异常检测,以防止错误信息影响问答质量。

前端交互与用户体验子系统提供多终端友好的问答界面。该模块支持自然语言输入、语音识别与快捷命令,展示生成答案、检索文档摘要与原始数据表格,并提供答案反馈按钮;此外,前端还实现角色权限控制,使不同级别用户只能访问其授权的数据与功能;在移动端与桌面端之间保持一致的交互逻辑,提升用户使用效率。

后台运维与安全管理子系统负责系统监控、日志审计、权限管理与模型版本控制。该模块通过实时监控检索延迟、生成准确率与系统负载,自动触发告警;同时,对所有操作进行审计记录,满足合规要求;在安全方面,采用身份认证、访问控制与数据加密技术,确保敏感信息不被泄露;此外,该子系统还支持模型微调与版本回滚,以便持续优化问答质量。

九、数据库设计

表一:t_user
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
user_id | 用户编号,唯一标识用户身份。 | 36 | CHAR(36) | 主键 | 自动生成UUID
username | 登录用户名,必须唯一。 | 50 | VARCHAR(50) | - |
password_hash | 密码加密后存储值。 | 128 | CHAR(128) | - | 使用SHA-256加密
role_id | 所属角色编号,关联t_role表。 | 36 | CHAR(36) | 外键 → t_role.role_id |
created_at| 账户创建时间。 | 19 | DATETIME | - |

表二:t_role
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
role_id | 角色编号,唯一标识。 | 36 | CHAR(36) | 主键 | 自动生成UUID
name | 角色名称,如“仓储管理员”。 | 50 | VARCHAR(50) | - |

表三:t_permission
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
permission_id | 权限编号,唯一标识。 | 36 | CHAR(36) | 主键 | 自动生成UUID
name | 权限名称,如“查询库存”。 | 50 | VARCHAR(50) |

表四:t_role_permission
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
role_id | 角色编号,关联t_role。 | 36 | CHAR(36) | 外键 → t_role.role_id |
permission_id| 权限编号,关联t_permission。| 36 | CHAR(36) | 外键 → t_permission.permission_id |

表五:t_document
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
doc_id | 文档编号,唯一标识。 | 36 | CHAR(36) | 主键 | 自动生成UUID
title | 文档标题。 | 200 | VARCHAR(200) |
content_path| 文档存储路径或URL。 | 255 | VARCHAR(255) |
source_type | 文档来源,如“手册”“ERP”。 | 20 | VARCHAR(20) |
created_at | 文档上传时间。 | 19 | DATETIME |

表六:t_document_embedding
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
doc_id | 文档编号,关联t_document。| 36 | CHAR(36) | 外键 → t_document.doc_id |
embedding_vector| 文档向量表示,存储为二进制。| 4096 | BLOB |

表七:t_entity
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
entity_id | 实体编号,唯一标识。 | 36 | CHAR(36) | 主键 |
name | 实体名称,如“订单号”。| 100| VARCHAR(100)|
type | 实体类型,如“订单”“库存”。| 30| VARCHAR(30)|
description | 对实体的简短说明。 | 255| VARCHAR(255) |

表八:t_relation
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
relation_id | 关系编号,唯一标识。| 36| CHAR(36)| 主键 |
subject_entity_id | 主体实体编号,关联t_entity。|36| CHAR(36)| 外键 → t_entity.entity_id|
object_entity_id | 对象实体编号,关联t_entity。|36| CHAR(36)| 外键 → t_entity.entity_id|
relation_type | 关系类型,如“包含”“属于”。|30| VARCHAR(30)|

表九:t_inventory
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
inventory_id | 库存记录编号,唯一标识。|36| CHAR(36)| 主键 |
item_code | 商品编码。|20| VARCHAR(20)|
warehouse_id | 仓库编号,关联t_warehouse。|36| CHAR(36)| 外键 → t_warehouse.warehouse_id|
quantity_current | 当前库存数量。|10| INT|
quantity_reserved | 已预留库存数量。|10| INT|
last_updated | 最后更新时间。|19| DATETIME|

表十:t_warehouse
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
warehouse_id | 仓库编号,唯一标识。|36| CHAR(36)| 主键 |
name | 仓库名称。|100| VARCHAR(100)|
location | 仓库位置描述。|200| VARCHAR(200) |

表十一:t_order
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
order_id | 订单编号,唯一标识。|36| CHAR(36)| 主键 |
order_number | 系统生成的订单号。|50| VARCHAR(50)|
status | 订单状态,如“待发货”“已完成”。|30| VARCHAR(30)|
created_at | 订单创建时间。|19| DATETIME|

表十二:t_feedback
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
feedback_id | 反馈编号,唯一标识。|36| CHAR(36)| 主键 |
user_id | 提交者编号,关联t_user。|36| CHAR(36)| 外键 → t_user.user_id|
question_text | 用户提问内容。|500| TEXT|
answer_text | 系统给出的答案。|500| TEXT|
rating | 评分,1至5星。|1 | TINYINT|
created_at | 反馈时间。|19| DATETIME|

表十三:t_session_log
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
session_id | 会话编号,唯一标识。|36| CHAR(36)| 主键 |
user_id | 用户编号,关联t_user。|36| CHAR(36)| 外键 → t_user.user_id|
start_time | 会话开始时间。|19| DATETIME|
end_time | 会话结束时间。|19| DATETIME|

表十四:t_model_version
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
version_id | 模型版本编号,唯一标识。|36| CHAR(36)| 主键 |
model_name | 模型名称,如“RAG-Logistics”。|50| VARCHAR(50)|
version_number| 版本号,采用语义化版本。|10| VARCHAR(10)|
trained_at | 训练完成时间。|19| DATETIME|

以上表结构遵循第一范式与第二范式,主键唯一标识,外键约束保证参照完整性,字段类型与大小根据实际业务需求设定,可支持系统的高效查询与扩展。

十、建表语句

CREATE DATABASE IF NOT EXISTS logistics_qna CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE logistics_qna;

-- 角色表
CREATE TABLE t_role (
role_id CHAR(36) NOT NULL,
name VARCHAR(50) NOT NULL,
PRIMARY KEY (role_id),
UNIQUE KEY uk_role_name (name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 权限表
CREATE TABLE t_permission (
permission_id CHAR(36) NOT NULL,
name VARCHAR(50) NOT NULL,
PRIMARY KEY (permission_id),
UNIQUE KEY uk_permission_name (name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 角色权限关联表
CREATE TABLE t_role_permission (
role_id CHAR(36) NOT NULL,
permission_id CHAR(36) NOT NULL,
PRIMARY KEY (role_id, permission_id),
CONSTRAINT fk_rp_role FOREIGN KEY (role_id) REFERENCES t_role(role_id) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT fk_rp_permission FOREIGN KEY (permission_id) REFERENCES t_permission(permission_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 用户表
CREATE TABLE t_user (
user_id CHAR(36) NOT NULL,
username VARCHAR(50) NOT NULL,
password_hash CHAR(128) NOT NULL,
role_id CHAR(36) NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (user_id),
UNIQUE KEY uk_user_username (username),
CONSTRAINT fk_user_role FOREIGN KEY (role_id) REFERENCES t_role(role_id) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 文档表
CREATE TABLE t_document (
doc_id CHAR(36) NOT NULL,
title VARCHAR(200) NOT NULL,
content_path VARCHAR(255) NOT NULL,
source_type VARCHAR(20) NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (doc_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 文档向量表
CREATE TABLE t_document_embedding (
doc_id CHAR(36) NOT NULL,
embedding_vector LONGBLOB NOT NULL,
PRIMARY KEY (doc_id),
CONSTRAINT fk_de_doc FOREIGN KEY (doc_id) REFERENCES t_document(doc_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 实体表
CREATE TABLE t_entity (
entity_id CHAR(36) NOT NULL,
name VARCHAR(100) NOT NULL,
type VARCHAR(30) NOT NULL,
description VARCHAR(255),
PRIMARY KEY (entity_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 关系表
CREATE TABLE t_relation (
relation_id CHAR(36) NOT NULL,
subject_entity_id CHAR(36) NOT NULL,
object_entity_id CHAR(36) NOT NULL,
relation_type VARCHAR(30) NOT NULL,
PRIMARY KEY (relation_id),
CONSTRAINT fk_rel_subject FOREIGN KEY (subject_entity_id) REFERENCES t_entity(entity_id) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT fk_rel_object FOREIGN KEY (object_entity_id) REFERENCES t_entity(entity_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 仓库表
CREATE TABLE t_warehouse (
warehouse_id CHAR(36) NOT NULL,
name VARCHAR(100) NOT NULL,
location VARCHAR(200),
PRIMARY KEY (warehouse_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 库存表
CREATE TABLE t_inventory (
inventory_id CHAR(36) NOT NULL,
item_code VARCHAR(20) NOT NULL,
warehouse_id CHAR(36) NOT NULL,
quantity_current INT NOT NULL DEFAULT 0,
quantity_reserved INT NOT NULL DEFAULT 0,
last_updated DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (inventory_id),
CONSTRAINT fk_inv_warehouse FOREIGN KEY (warehouse_id) REFERENCES t_warehouse(warehouse_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 订单表
CREATE TABLE t_order (
order_id CHAR(36) NOT NULL,
order_number VARCHAR(50) NOT NULL,
status VARCHAR(30) NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (order_id),
UNIQUE KEY uk_order_number (order_number)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 反馈表
CREATE TABLE t_feedback (
feedback_id CHAR(36) NOT NULL,
user_id CHAR(36) NOT NULL,
question_text TEXT NOT NULL,
answer_text TEXT,
rating TINYINT CHECK (rating BETWEEN 1 AND 5),
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (feedback_id),
CONSTRAINT fk_fb_user FOREIGN KEY (user_id) REFERENCES t_user(user_id) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 会话日志表
CREATE TABLE t_session_log (
session_id CHAR(36) NOT NULL,
user_id CHAR(36) NOT NULL,
start_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
end_time DATETIME,
PRIMARY KEY (session_id),
CONSTRAINT fk_sl_user FOREIGN KEY (user_id) REFERENCES t_user(user_id) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 模型版本表
CREATE TABLE t_model_version (
version_id CHAR(36) NOT NULL,
model_name VARCHAR(50) NOT NULL,
version_number VARCHAR(10) NOT NULL,
trained_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (version_id),
UNIQUE KEY uk_model_version (model_name, version_number)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 索引(根据业务常用查询)
CREATE INDEX idx_user_role ON t_user(role_id);
CREATE INDEX idx_doc_source ON t_document(source_type);
CREATE INDEX idx_inventory_warehouse ON t_inventory(warehouse_id);
CREATE INDEX idx_relation_subject ON t_relation(subject_entity_id);
CREATE INDEX idx_relation_object ON t_relation(object_entity_id);
CREATE INDEX idx_feedback_user ON t_feedback(user_id);
CREATE INDEX idx_session_user ON t_session_log(user_id);

文章下方名片联系我即可~大家点赞、收藏、关注、评论啦 、查看下方👇🏻获取联系方式👇🏻

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询