水产海鲜鱼业全链路经营平台面向业务领域各版块模块的功能设计方案及数据库规划方案(一)---升鲜宝生鲜配送供应链管理系统源代码服务
水产海鲜鱼业全链路经营平台
面向业务领域各版块模块的功能设计方案及数据库规划方案
供应链 + 零售 + 批发 + 门店进销存 + 客户进销存 + CRM + 财务结算 + 一鱼一码追溯
版本:V1.0 适用数据库:SQL Server 2020 适用架构:多租户业务库
一、方案定位与设计目标
本方案面向水产海鲜鱼业企业,将原有供应链系统升级为“水产海鲜鱼业全链路经营平台”。平台不再只是采购、库存、订单系统,而是覆盖供应链经营、线上零售、B2B批发、门店进销存、客户进销存、CRM客户经营、财务结算、一鱼一码追溯、冷链配送与经营分析的一体化业务系统。
1.1 核心建设目标
• 一套业务库支撑多渠道经营:公司大仓、线上零售、批发商城、门店收银、礼品卡提货、客户进销存统一打通。
• 一鱼一码贯穿采购、赋码、入库、库存、零售/批发/POS出库、配送、签收和客户追溯。
• 商品域与价格域分离:PMS只管理商品主数据,零售价格、批发价格、客户价、阶梯价、报价单统一进入price_价格域。
• 公司库存、门店库存、客户库存边界清晰:wms_、store_inv_、cust_inv_各自独立,避免库存主体混淆。
• CRM与批发商城、价格、合同、财务、配送打通,实现从线索到回款的客户经营闭环。
• 统一多租户、组织、主从表、审计字段和SQL Server 2020命名规范,便于后续生成代码和长期维护。
1.2 总体业务域架构图

图1:水产海鲜鱼业全链路经营平台总体业务域架构。基础主数据、核心业务交易与结算分析支撑三层协同,订单、库存、鱼码、财务和追溯是贯穿全系统的主线。
二、数据库总体分域与表前缀规划
数据库采用业务域前缀方式组织。每个前缀代表一个边界清晰的业务领域,减少跨模块表名混乱,便于权限、代码包、接口、报表和数据治理按领域拆分。
|
前缀 |
业务领域 |
职责边界 |
|
org_ |
租户组织域 |
租户、公司、组织、门店、仓库归属;不承载用户权限菜单角色。 |
|
base_ |
基础资料域 |
通用字典、行政区域、参数、公共基础数据。 |
|
file_ |
文件附件域 |
图片、视频、检测报告、合同附件、凭证文件。 |
|
pms_ |
商品中心域 |
商品分类、商品、SKU、单位、条码、图片、属性;不放价格。 |
|
price_ |
价格中心域 |
零售价、批发价、客户价、价格组、阶梯价、报价单、调价记录。 |
|
sup_ |
供应商域 |
供应商档案、资质、供货商品、供应商风险。 |
|
cus_ |
B2B客户域 |
正式客户档案、账期、价格组、客户门店、客户配置。 |
|
crm_ |
CRM客户经营域 |
线索、跟进、拜访、商机、报价、合同、客户画像、服务工单。 |
|
ums_ |
会员域 |
C端会员、会员等级、积分、储值、会员权益。 |
|
pur_ |
采购域 |
采购申请、采购订单、收货、采购退货、采购对账。 |
|
wms_ |
公司仓储库存域 |
公司大仓、库区库位、入库、出库、盘点、移库、报损报溢、库存汇总。 |
|
store_goods_ |
门店商品域 |
自有门店商品、门店条码、门店上下架、门店销售单位。 |
|
store_inv_ |
门店进销存域 |
自有门店/前置仓库存、入库、出库、盘点、调拨、损耗。 |
|
cust_inv_ |
客户进销存域 |
B2B客户自己的轻量进销存、客户商品、客户库存、客户入库出库。 |
|
fish_ |
水产一鱼一码域 |
单鱼档案、单鱼重量、鱼码库存、鱼码流转、箱/筐关系、分割记录。 |
|
trace_ |
赋码追溯域 |
赋码规则、追溯码、批次码、箱码、追溯流转、客户扫码。 |
|
oms_ |
订单中心域 |
统一订单、订单明细、鱼码绑定、支付配送信息、售后。 |
|
retail_ |
零售商城域 |
C端商城商品、规格、购物车、零售拣货、零售履约。 |
|
wholesale_ |
批发商城域 |
B2B批发商品、称重下单、客户价下单、重量差异结算。 |
|
gift_ |
礼品卡提货域 |
礼品卡方案、卡批次、卡实例、预约提货、核销。 |
|
pos_ |
线下收银域 |
门店称重收银、班次、支付、小票、退款。 |
|
promo_ |
营销域 |
优惠券、满减、促销、会员营销、批发促销。 |
|
tms_ |
配送运输域 |
线路、配送单、车辆、司机、装车、签收、回单。 |
|
cold_ |
冷链温控域 |
温控设备、温度记录、冷链异常、温控报表。 |
|
qc_ |
质量检测域 |
检测报告、质检批次、检疫证书、抽检异常。 |
|
fin_ |
财务结算域 |
应收、应付、对账、收款、付款、发票、客户账期。 |
|
pay_ |
支付退款域 |
在线支付单、支付流水、退款单、支付通道。 |
|
rpt_ |
经营报表域 |
销售日报、库存日报、毛利、客户、供应商、损耗分析。 |
|
audit_ |
日志审计域 |
业务操作日志、字段级变更日志、导出审计、扫码审计。 |
2.1 数据库命名与字段规范
所有表和字段统一使用清晰、可读、可扩展的命名规则,减少历史字段、缩写字段、业务单号重复关联字段带来的理解成本。
|
规范项 |
建议字段/类型 |
说明 |
|
主键 |
id BIGINT IDENTITY(1,1) |
每张业务表统一使用id作为主键。 |
|
租户字段 |
tenant_id BIGINT NOT NULL |
多租户隔离字段,全表保留。 |
|
组织字段 |
org_id BIGINT NULL |
部门字段统一改为org_id;客户进销存可增加customer_org_id。 |
|
主从关系 |
子表.parent_id -> 主表.id |
所有明细表以_item结尾,并用parent_id关联主表id。 |
|
审计字段 |
CreateID/Creator/CreateDate/ModifyID/Modifier/ModifyDate |
统一审计字段,CreateDate/ModifyDate按现有口径使用bigint时间戳。 |
|
启用状态 |
enabled TINYINT |
1启用,0停用。 |
|
业务状态 |
status INT |
用于订单、库存、鱼码、财务等状态机。 |
|
删除标记 |
del_flag TINYINT |
0正常,1删除。 |
|
数量精度 |
DECIMAL(18,3) |
水产重量、数量建议三位小数。 |
|
金额精度 |
DECIMAL(18,2) |
金额、单价、结算金额使用两位或按业务扩展。 |
2.2 数据库标准关系图

三、组织、基础资料与文件附件模块
业务前缀:org_ / base_ / file_
提供多租户、组织、门店、仓库、区域、字典、附件等公共基础能力。该模块不包含系统用户、角色、菜单、权限,这些能力建议对接独立IAM或RBAC平台。
功能设计
• 租户与公司主体管理
• 组织机构、门店、仓库档案管理
• 行政区域、业务字典、基础参数管理
• 文件、图片、视频、检测报告、合同附件统一管理
• 为商品、采购、库存、订单、CRM、财务提供基础维度
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
org_tenant |
租户表 |
id, tenant_code, tenant_name, enabled |
全库tenant_id的来源。 |
|
org_company |
公司主体表 |
id, company_code, company_name, tenant_id |
供应链公司、经营主体。 |
|
org_unit |
组织机构表 |
id, parent_id, org_code, org_name |
org_id统一引用该表。 |
|
org_shop |
门店表 |
id, shop_code, shop_name, org_id |
POS、门店进销存、门店商城使用。 |
|
org_warehouse |
仓库表 |
id, warehouse_code, warehouse_name, warehouse_type |
公司仓、门店仓、前置仓。 |
|
base_dict_type |
字典类型 |
id, dict_code, dict_name |
通用字典类型。 |
|
base_dict_item |
字典明细 |
parent_id, item_code, item_name, sort_code |
通过parent_id关联base_dict_type。 |
|
file_resource |
文件资源 |
id, file_name, file_url, file_type, business_type |
检测报告、商品图、合同附件等统一存储。 |
关键关系
• org_tenant 1:N org_company/org_unit/org_shop/org_warehouse
• base_dict_type 1:N base_dict_item
• file_resource通过business_type + business_id弱关联各业务单据
四、PMS商品中心模块
业务前缀:pms_
PMS只负责商品主数据:商品是什么、有哪些SKU、用什么单位、有哪些条码/图片/属性、是否一鱼一码、是否称重销售。价格全部拆分到price_价格域。
功能设计
• 商品分类树管理
• 商品主档案管理
• SKU规格管理
• 商品单位与换算关系管理
• 商品条码、图片、属性管理
• 水产属性管理:是否一鱼一码、是否称重、是否启用追溯、保质期、储存温度
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
pms_category |
商品分类 |
id, parent_id, category_code, category_name |
分类树,支持水产分类。 |
|
pms_goods |
商品主表 |
id, goods_code, goods_name, category_id, seafood_flag, one_code_flag, weighing_flag |
定义商品基础属性。 |
|
pms_goods_sku |
商品SKU |
id, goods_id, sku_code, sku_name, spec_desc |
一个商品多个SKU。 |
|
pms_goods_unit |
商品单位 |
id, unit_code, unit_name, precision_scale |
斤、公斤、条、箱、盒等。 |
|
pms_goods_unit_relation |
单位换算 |
id, goods_id, sku_id, from_unit_id, to_unit_id, ratio |
支持箱/斤/条换算。 |
|
pms_goods_barcode |
商品条码 |
id, sku_id, unit_id, barcode |
销售条码、包装条码。 |
|
pms_goods_media |
商品媒体 |
id, goods_id, media_type, media_url |
商品图片、视频。 |
|
pms_goods_attr |
商品属性定义 |
id, attr_code, attr_name |
产地、养殖方式、储温等。 |
|
pms_goods_attr_value |
商品属性值 |
id, goods_id, attr_id, attr_value |
商品属性实例。 |
关键关系
• pms_category 1:N pms_goods
• pms_goods 1:N pms_goods_sku
• pms_goods_sku 1:N pms_goods_barcode
• pms_goods 1:N pms_goods_media
• pms_goods_unit_relation关联SKU与单位换算
五、价格中心模块
业务前缀:price_
统一管理零售价、批发价、客户价、价格组价、会员价、阶梯价、报价单和调价记录。所有销售前台从price_读取价格策略,PMS不再保存业务价格。
功能设计
• 零售价格政策
• 批发价格政策
• 客户专属价
• 价格组价格
• 阶梯价
• 报价单与合同价
• 调价记录与价格生效期管理
• 按渠道、客户、会员、门店差异化定价
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
price_policy |
价格政策主表 |
id, policy_code, policy_name, channel_type, start_time, end_time |
零售/批发/门店/会员价格策略。 |
|
price_policy_item |
价格政策明细 |
parent_id, sku_id, unit_id, sale_price |
明细表,关联商品SKU。 |
|
price_group |
价格组 |
id, group_code, group_name, customer_scope |
B2B客户价格组。 |
|
price_group_item |
价格组明细 |
parent_id, sku_id, unit_id, group_price |
价格组商品价。 |
|
price_customer |
客户专属价格 |
id, customer_id, sku_id, unit_id, customer_price |
覆盖价格组价格。 |
|
price_ladder |
阶梯价主表 |
id, ladder_code, ladder_name, ladder_type |
按数量/重量分段。 |
|
price_ladder_item |
阶梯价明细 |
parent_id, min_qty, max_qty, ladder_price |
阶梯价区间。 |
|
price_quote |
报价单主表 |
id, quote_code, customer_id, valid_start, valid_end |
CRM或销售发起报价后生效。 |
|
price_quote_item |
报价单明细 |
parent_id, sku_id, unit_id, quote_price |
报价商品明细。 |
|
price_adjust_log |
调价记录 |
id, price_type, business_id, old_price, new_price |
价格变更审计。 |
关键关系
• pms_goods_sku + pms_goods_unit -> price_*_item
• cus_customer -> price_customer/price_quote
• crm_quote审批通过后可生成price_quote
• retail_/wholesale_/pos_从price_取价
六、供应商与采购模块
业务前缀:sup_ / pur_
管理供应商档案、资质、供货商品、采购申请、采购订单、到货收货、采购退货和采购对账。水产采购要与质检、赋码和一鱼一码入库打通。
功能设计
• 供应商档案与资质管理
• 供应商供货商品管理
• 采购申请与采购订单
• 采购收货与差异处理
• 采购退货
• 采购对账与应付生成
• 采购批次、检测报告、捕捞日期/产地记录
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
sup_supplier |
供应商档案 |
id, supplier_code, supplier_name, supplier_type, settle_type |
供应商主数据。 |
|
sup_supplier_goods |
供应商供货商品 |
id, supplier_id, goods_id, sku_id, default_price |
供应商商品关系。 |
|
sup_supplier_cert |
供应商资质证书 |
id, supplier_id, cert_type, cert_no, expire_date |
营业执照、检疫资质等。 |
|
pur_apply |
采购申请主表 |
id, apply_code, apply_date, status |
采购需求。 |
|
pur_apply_item |
采购申请明细 |
parent_id, sku_id, unit_id, apply_qty |
明细表。 |
|
pur_order |
采购订单主表 |
id, order_code, supplier_id, order_date, status |
供应商采购订单。 |
|
pur_order_item |
采购订单明细 |
parent_id, sku_id, unit_id, order_qty, unit_price |
采购商品明细。 |
|
pur_receive |
采购收货主表 |
id, receive_code, supplier_id, warehouse_id, receive_date |
到货收货。 |
|
pur_receive_item |
采购收货明细 |
parent_id, sku_id, unit_id, receive_qty, receive_weight, batch_no |
称重和批次信息。 |
|
pur_return |
采购退货主表 |
id, return_code, supplier_id, status |
退货给供应商。 |
|
pur_return_item |
采购退货明细 |
parent_id, sku_id, unit_id, return_qty, return_weight |
退货明细。 |
关键关系
• sup_supplier 1:N pur_order/pur_receive/pur_return
• pur_order 1:N pur_order_item
• pur_receive可触发wms_inbound与trace_code_task
• pur_receive_item与qc_report/trace_batch关联
七、公司仓储库存模块
业务前缀:wms_
负责公司大仓库存、入库、出库、盘点、移库、报损报溢、库存流水和成本核算。公司库存主核算口径使用product_sku_id + unit_id,不以商城销售sku_unit_id作为主核算口径。
功能设计
• 仓库/库区/库位管理
• 采购入库、销售出库、调拨出入库
• 库存汇总与库存流水
• 盘点、报损、报溢
• 批次与保质期管理
• 成本核算与库存金额
• 与一鱼一码明细库存同步
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
wms_warehouse |
仓库表 |
id, warehouse_code, warehouse_name, warehouse_type |
公司仓、冷库、前置仓。 |
|
wms_area |
库区表 |
id, warehouse_id, area_code, area_name |
冷冻区、冷藏区等。 |
|
wms_location |
库位表 |
id, area_id, location_code, location_name |
具体库位。 |
|
wms_stock |
实时库存汇总 |
id, warehouse_id, sku_id, unit_id, stock_qty, stock_weight |
公司库存汇总。 |
|
wms_stock_flow |
库存流水 |
id, sku_id, unit_id, bill_type, change_qty, change_weight |
所有库存变化。 |
|
wms_inbound |
入库单主表 |
id, inbound_code, inbound_type, warehouse_id, status |
采购/退货/调拨入库。 |
|
wms_inbound_item |
入库单明细 |
parent_id, sku_id, unit_id, inbound_qty, inbound_weight |
入库明细。 |
|
wms_outbound |
出库单主表 |
id, outbound_code, outbound_type, warehouse_id, status |
销售/报损/调拨出库。 |
|
wms_outbound_item |
出库单明细 |
parent_id, sku_id, unit_id, outbound_qty, outbound_weight |
出库明细。 |
|
wms_stocktake |
盘点单主表 |
id, stocktake_code, warehouse_id, status |
仓库盘点。 |
|
wms_stocktake_item |
盘点单明细 |
parent_id, sku_id, unit_id, book_qty, count_qty, diff_qty |
盘点差异。 |
|
wms_loss_overflow |
报损报溢主表 |
id, bill_code, inout_type, warehouse_id, status |
报损/报溢。 |
|
wms_loss_overflow_item |
报损报溢明细 |
parent_id, sku_id, unit_id, change_qty, change_weight |
明细表。 |
关键关系
• wms_warehouse 1:N wms_area 1:N wms_location
• wms_inbound/wms_outbound/stocktake/loss_overflow均有_item明细
• wms_stock由单据审核和fish_item汇总联动
八、水产一鱼一码与赋码追溯模块
业务前缀:fish_ / trace_
水产行业核心扩展模块。trace_负责赋码与对外追溯,fish_负责具体鱼码库存和鱼的业务状态。每一条鱼一个唯一鱼码,库存汇总按重量和条数统计,拣货出库按鱼码扫码绑定。
功能设计
• 赋码规则、赋码任务、二维码打印
• 单鱼称重、单鱼档案、一鱼一码库存
• 鱼码状态流转:待入库、在库、锁定、拣货、出库、退货、报损
• 箱码/筐码与鱼码关系
• 礼盒、零售、批发、POS扫码绑定鱼码
• 客户扫码追溯供应商、批次、检测报告、订单、配送信息
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
trace_code_rule |
赋码规则 |
id, rule_code, code_type, prefix, serial_length |
鱼码、批次码、箱码、礼品卡码规则。 |
|
trace_code_task |
赋码任务 |
id, task_code, source_bill_id, code_type, status |
采购入库或后台发起赋码。 |
|
trace_code |
追溯码主表 |
id, trace_code, code_type, goods_id, batch_no, status |
追溯码基础信息。 |
|
trace_code_flow |
追溯码流转 |
id, trace_code, business_type, bill_type, bill_id, before_status, after_status |
码全生命周期。 |
|
trace_batch |
追溯批次 |
id, batch_no, supplier_id, production_date, qc_report_id |
采购/生产批次。 |
|
trace_scan_log |
客户扫码记录 |
id, trace_code, scan_time, scan_ip, scan_user |
对外扫码追溯日志。 |
|
fish_item |
单鱼库存表 |
id, fish_code, trace_code, sku_id, actual_weight, owner_type, owner_id, fish_status |
一条鱼一个库存对象。 |
|
fish_item_flow |
单鱼流转记录 |
id, fish_code, bill_type, bill_id, change_status, change_weight |
鱼码业务流转。 |
|
fish_weight_record |
称重记录 |
id, fish_code, weight_value, device_id, weigh_time |
电子秤称重记录。 |
|
fish_box |
箱/筐主表 |
id, box_code, warehouse_id, status |
箱码/筐码。 |
|
fish_box_item |
箱/筐明细 |
parent_id, fish_code, actual_weight |
箱码下面的鱼码。 |
|
fish_split |
分割主表 |
id, source_fish_code, split_type, status |
整鱼分割。 |
|
fish_split_item |
分割明细 |
parent_id, child_fish_code, split_weight |
分割子码。 |
关键关系
• trace_code与fish_item通过trace_code/fish_code关联
• fish_item owner_type支持公司仓/门店/客户
• oms_order_trace_item/pos_weight_item/gift_pickup_item均可绑定fish_code
• fish_box 1:N fish_box_item
九、OMS统一订单中心模块
业务前缀:oms_
OMS统一承接零售商城、批发商城、礼品卡提货、POS线下收银、后台手工单等所有销售履约业务。订单明细可以是规格商品、称重商品、礼盒组合、礼品卡兑换,也可以绑定具体鱼码。
功能设计
• 统一订单主表和订单明细
• 订单来源、销售渠道、销售模式统一编码
• 订单支付、配送、售后信息统一记录
• 订单拣货绑定鱼码
• 预估重量与实际重量差异结算
• 订单全生命周期日志
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
oms_order |
订单主表 |
id, order_code, order_source, sale_channel, sale_mode, customer_id, member_id, status |
统一订单主表。 |
|
oms_order_item |
订单明细 |
parent_id, sku_id, unit_id, qty, estimate_weight, actual_weight, unit_price, amount |
商品明细。 |
|
oms_order_trace_item |
订单鱼码绑定 |
parent_id, order_item_id, fish_code, actual_weight, scan_time |
扫码拣货绑定具体鱼码。 |
|
oms_order_pay |
订单支付信息 |
parent_id, pay_order_id, pay_amount, pay_status |
关联pay_。 |
|
oms_order_delivery |
订单配送信息 |
parent_id, delivery_id, receiver_name, receiver_mobile |
关联tms_。 |
|
oms_order_log |
订单操作日志 |
id, order_id, operate_type, operate_user, operate_time |
订单生命周期日志。 |
|
oms_after_sale |
售后主表 |
id, after_code, order_id, after_type, status |
退款/退货/补差。 |
|
oms_after_sale_item |
售后明细 |
parent_id, order_item_id, fish_code, qty, weight |
售后商品和鱼码。 |
关键关系
• retail_/wholesale_/gift_/pos_业务单最终进入oms_order
• oms_order 1:N oms_order_item
• oms_order_item 1:N oms_order_trace_item
• oms_order审核出库时联动wms_与fish_
十、在线零售商城模块
业务前缀:retail_
面向C端消费者,支持规格鱼、礼盒、套餐、礼品卡购买。零售商城下单时客户买的是重量区间规格或礼盒,不直接选择具体鱼码;仓库拣货时扫码绑定具体鱼。
功能设计
• 零售商品上下架
• 重量区间规格管理
• 零售购物车
• 零售订单扩展
• 零售拣货任务
• 零售礼盒/套餐展示
• 会员价、优惠券、满减活动
• 门店自提、同城配送、冷链快递
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
retail_goods |
零售商品配置 |
id, goods_id, sku_id, sale_mode, enabled |
商品是否在零售商城销售。 |
|
retail_goods_spec |
重量规格 |
id, goods_id, sku_id, min_weight, max_weight, spec_price |
如0.5-0.7斤一档。 |
|
retail_cart |
购物车 |
id, member_id, goods_id, spec_id, qty |
C端购物车。 |
|
retail_order |
零售订单扩展 |
id, oms_order_id, member_id, retail_scene |
零售订单补充信息。 |
|
retail_order_item |
零售订单明细扩展 |
parent_id, oms_order_item_id, spec_id, gift_flag |
零售明细。 |
|
retail_pick_task |
零售拣货任务 |
id, task_code, order_id, warehouse_id, status |
零售拣货。 |
|
retail_pick_task_item |
零售拣货任务明细 |
parent_id, order_item_id, spec_id, required_qty, picked_qty |
扫码鱼码满足规格。 |
关键关系
• retail_order关联oms_order
• retail_goods_spec通过重量区间匹配fish_item
• retail_pick_task_item扫码写入oms_order_trace_item
十一、B2B批发商城模块
业务前缀:wholesale_
面向餐饮店、商超、学校食堂、企业食堂、水产档口等B2B客户,支持按斤、按箱、按批次、按规格销售,并支持客户价、账期、对账和配送线路。
功能设计
• 批发商品配置
• 客户价格和价格组联动
• 按重量下单
• 按实际出库重量结算
• 批发拣货称重
• 重量差异、多退少补
• 账期订单、应收生成
• 批发客户对账
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
wholesale_goods |
批发商品配置 |
id, goods_id, sku_id, sale_mode, min_order_qty |
批发商城商品。 |
|
wholesale_order |
批发订单扩展 |
id, oms_order_id, customer_id, settle_type, tolerance_weight |
B2B订单扩展。 |
|
wholesale_order_item |
批发订单明细扩展 |
parent_id, oms_order_item_id, order_weight, actual_weight |
称重结算数据。 |
|
wholesale_pick_task |
批发拣货任务 |
id, task_code, order_id, warehouse_id, status |
批发拣货。 |
|
wholesale_pick_task_item |
批发拣货任务明细 |
parent_id, order_item_id, required_weight, picked_weight |
扫码累计重量。 |
|
wholesale_weight_confirm |
称重确认 |
id, order_id, confirm_weight, confirm_amount, confirm_user |
实际出库确认。 |
|
wholesale_settle_diff |
重量差异结算 |
id, order_id, diff_weight, diff_amount, handle_type |
多退少补/转应收。 |
关键关系
• cus_customer -> wholesale_order
• price_customer/price_group为批发取价来源
• wholesale_order关联oms_order
• 出库后生成fin_receivable
十二、礼品卡提货模块
业务前缀:gift_
礼品卡是提货权益,不是具体鱼码。售卡时可不锁定具体鱼,预约提货时锁规格库存,实际提货时扫码绑定鱼码并核销。
功能设计
• 礼品卡方案管理
• 礼品卡批次生成
• 卡号卡密/二维码管理
• 售卡订单
• 提货预约
• 提货核销
• 礼品卡流水
• 礼盒卡、重量卡、金额卡、商品卡
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
gift_card_plan |
礼品卡方案 |
id, plan_code, plan_name, card_type, sale_price, valid_days |
定义卡权益。 |
|
gift_card_plan_item |
礼品卡权益明细 |
parent_id, goods_id, spec_id, need_qty, need_weight |
兑换内容。 |
|
gift_card_batch |
礼品卡批次 |
id, batch_code, plan_id, card_count |
批量发卡。 |
|
gift_card |
礼品卡实例 |
id, card_no, card_password, plan_id, status, expire_time |
单张卡。 |
|
gift_pickup_order |
提货预约单 |
id, pickup_code, card_id, pickup_shop_id, pickup_time, status |
客户预约提货。 |
|
gift_pickup_order_item |
提货明细 |
parent_id, goods_id, spec_id, need_qty, picked_qty |
需要提货的商品。 |
|
gift_card_flow |
礼品卡流水 |
id, card_id, flow_type, amount, operate_time |
售卡、预约、核销、作废。 |
|
gift_verify_log |
核销日志 |
id, card_id, pickup_order_id, verify_user, verify_time |
核销记录。 |
关键关系
• gift_card_plan 1:N gift_card_plan_item
• gift_card_batch 1:N gift_card
• gift_pickup_order关联oms_order和fish_item扫码出库
十三、线下POS称重收银模块
业务前缀:pos_
服务线下门店现场销售,支持扫码鱼码、电子秤称重、按斤计价、收款、小票打印、退款和班次交接。POS销售成功后即时扣减门店库存和鱼码库存。
功能设计
• 收银班次
• 扫码称重销售
• 鱼码扫码销售
• 会员识别与积分储值
• 多支付方式
• 挂单/取单
• 退款退货
• 小票打印
• 收款后门店库存自动出库
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
pos_shift |
收银班次 |
id, shift_code, shop_id, cashier_id, start_time, end_time |
班次管理。 |
|
pos_order |
POS销售单 |
id, order_code, shop_id, member_id, total_amount, pay_status |
线下销售单。 |
|
pos_order_item |
POS销售明细 |
parent_id, sku_id, unit_id, qty, weight, unit_price, amount |
销售商品。 |
|
pos_weight_item |
称重鱼码明细 |
parent_id, fish_code, actual_weight, unit_price, amount |
一鱼一码/称重销售。 |
|
pos_payment |
POS支付记录 |
id, order_id, pay_type, pay_amount, pay_time |
现金/刷卡/扫码支付。 |
|
pos_refund |
POS退款 |
id, refund_code, order_id, refund_amount, status |
退款退货。 |
|
pos_print_log |
小票打印日志 |
id, order_id, print_type, print_time |
打印记录。 |
|
pos_device |
收银设备 |
id, shop_id, device_code, device_type |
收银机、电子秤、打印机。 |
关键关系
• pos_order可同步或生成oms_order
• pos_order收款成功后生成store_inv_outbound
• pos_weight_item绑定fish_code并变更fish_item状态
十四、门店商品与门店进销存模块
业务前缀:store_goods_ / store_inv_
管理自有门店、直营网点、前置仓的商品和库存。公司大仓库存使用wms_,门店库存使用store_inv_,二者通过调拨、配送或门店采购发生业务关系。
功能设计
• 门店商品资料与上下架
• 门店入库:总部调入、供应商直送、门店采购、退货入库
• 门店出库:POS销售、门店报损、调拨出库
• 门店盘点和自动盘盈盘亏
• 门店批次、保质期、鱼码库存
• 门店进销存日报、损耗分析
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
store_goods |
门店商品 |
id, shop_id, goods_id, sku_id, shop_goods_name, enabled |
门店商品映射。 |
|
store_goods_unit |
门店商品单位 |
id, store_goods_id, unit_id, barcode, sale_flag |
门店销售单位。 |
|
store_goods_barcode |
门店条码 |
id, store_goods_unit_id, barcode |
门店扫码。 |
|
store_inv_stock |
门店实时库存 |
id, shop_id, warehouse_id, sku_id, unit_id, stock_qty, stock_weight |
门店库存汇总。 |
|
store_inv_stock_flow |
门店库存流水 |
id, shop_id, sku_id, bill_type, change_qty, change_weight |
门店库存变化。 |
|
store_inv_inbound |
门店入库单 |
id, inbound_code, shop_id, inbound_type, status |
门店入库。 |
|
store_inv_inbound_item |
门店入库明细 |
parent_id, sku_id, unit_id, inbound_qty, inbound_weight |
明细。 |
|
store_inv_outbound |
门店出库单 |
id, outbound_code, shop_id, outbound_type, status |
门店出库。 |
|
store_inv_outbound_item |
门店出库明细 |
parent_id, sku_id, unit_id, outbound_qty, outbound_weight |
明细。 |
|
store_inv_transfer |
门店调拨单 |
id, transfer_code, source_shop_id, target_shop_id, status |
门店间/总部到门店调拨。 |
|
store_inv_transfer_item |
门店调拨明细 |
parent_id, sku_id, unit_id, transfer_qty, transfer_weight |
调拨明细。 |
|
store_inv_stocktake |
门店盘点单 |
id, stocktake_code, shop_id, status |
门店盘点。 |
|
store_inv_stocktake_item |
门店盘点明细 |
parent_id, sku_id, book_qty, count_qty, diff_qty |
盘点差异。 |
|
store_inv_fish_item |
门店鱼码库存 |
id, shop_id, fish_code, actual_weight, fish_status |
门店持有的单鱼库存。 |
关键关系
• wms_调拨到门店生成store_inv_inbound
• store_inv_outbound由pos_order或门店报损生成
• store_inv_fish_item可由fish_item owner_type=门店同步或视图化实现
十五、客户进销存模块
业务前缀:cust_inv_
客户进销存是给B2B客户使用的轻量进销存,不是供应链公司的库存。客户从批发商城下单并签收后,可以自动生成客户入库,客户再维护自己的库存、销售、盘点和报损。
功能设计
• 客户商品管理,可从平台商品复制
• 客户采购入库,批发订单签收自动入库
• 客户销售出库
• 客户库存汇总与流水
• 客户盘点、报损、调拨
• 客户进销存日报
• 客户采购账单与对账
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
cust_inv_goods |
客户商品 |
id, customer_id, source_goods_id, goods_name, enabled |
客户自己的商品档案。 |
|
cust_inv_goods_unit |
客户商品单位 |
id, cust_goods_id, unit_id, barcode, sale_flag |
客户销售/库存单位。 |
|
cust_inv_stock |
客户库存 |
id, customer_id, customer_org_id, cust_goods_id, unit_id, stock_qty, stock_weight |
客户实时库存。 |
|
cust_inv_stock_flow |
客户库存流水 |
id, customer_id, bill_type, change_qty, change_weight |
客户库存变化。 |
|
cust_inv_inbound |
客户入库单 |
id, inbound_code, customer_id, source_order_id, status |
客户签收入库。 |
|
cust_inv_inbound_item |
客户入库明细 |
parent_id, cust_goods_id, unit_id, inbound_qty, inbound_weight |
入库明细。 |
|
cust_inv_outbound |
客户出库单 |
id, outbound_code, customer_id, outbound_type, status |
客户销售/消耗出库。 |
|
cust_inv_outbound_item |
客户出库明细 |
parent_id, cust_goods_id, unit_id, outbound_qty, outbound_weight |
出库明细。 |
|
cust_inv_stocktake |
客户盘点单 |
id, stocktake_code, customer_id, status |
客户盘点。 |
|
cust_inv_stocktake_item |
客户盘点明细 |
parent_id, cust_goods_id, book_qty, count_qty, diff_qty |
盘点明细。 |
|
cust_inv_loss |
客户报损单 |
id, loss_code, customer_id, status |
客户损耗。 |
|
cust_inv_loss_item |
客户报损明细 |
parent_id, cust_goods_id, loss_qty, loss_weight |
损耗明细。 |
|
cust_inv_daily_report |
客户进销存日报 |
id, customer_id, report_date, begin_qty, in_qty, out_qty, end_qty |
日报汇总。 |
关键关系
• tms_delivery签收后可生成cust_inv_inbound
• cust_inv_stock按customer_id + customer_org_id隔离
• cust_inv可选择继续追踪fish_code或仅记录汇总库存
十六、CRM客户经营模块
业务前缀:crm_
CRM负责客户从线索到成交、从成交到复购的经营过程。它不替代cus_客户主档案,而是管理线索、跟进、商机、报价、合同、拜访、服务工单和客户画像。
功能设计
• 销售线索管理
• 客户跟进与拜访记录
• 商机管理
• 报价和合同管理
• 客户标签和客户画像
• 销售任务和跟进提醒
• 客户服务工单
• 与价格、批发订单、财务应收、配送履约打通
核心表规划
|
表名 |
表说明 |
关键字段 |
设计说明 |
|
crm_lead |
销售线索 |
id, lead_code, lead_name, source_channel, lead_status |
潜在客户。 |
|
crm_lead_follow |
线索跟进 |
parent_id, follow_type, follow_content, next_follow_time |
跟进记录。 |
|
crm_customer_profile |
客户画像 |
id, customer_id, total_amount, unpaid_amount, last_order_time, risk_level |
正式客户画像。 |
|
crm_contact |
客户联系人 |
id, customer_id, contact_name, mobile, position |
联系人。 |
|
crm_visit |
拜访记录 |
id, customer_id, visit_time, visit_result, next_plan |
拜访过程。 |
|
crm_opportunity |
销售商机 |
id, opportunity_code, customer_id, stage, expected_amount |
商机。 |
|
crm_opportunity_item |
商机明细 |
parent_id, goods_id, sku_id, expected_qty, expected_amount |
意向商品。 |
|
crm_quote |
CRM报价 |
id, quote_code, customer_id, quote_status, valid_end |
销售过程报价。 |
|
crm_quote_item |
CRM报价明细 |
parent_id, sku_id, unit_id, quote_price |
报价商品。 |
|
crm_contract |
客户合同 |
id, contract_code, customer_id, start_date, end_date, status |
合同。 |
|
crm_contract_item |
合同明细 |
parent_id, sku_id, unit_id, contract_price, contract_qty |
合同商品/条款。 |
|
crm_service_ticket |
客户服务工单 |
id, customer_id, ticket_type, priority, status |
售后/投诉/服务。 |
|
crm_customer_tag |
客户标签 |
id, tag_code, tag_name |
客户标签。 |
|
crm_customer_tag_rel |
客户标签关系 |
id, customer_id, tag_id |
客户画像标签。 |
关键关系
• crm_lead转正式客户生成cus_customer
• crm_quote审批通过可生成price_quote/price_customer
• crm_contract可约束wholesale_下单价格和账期
• crm_customer_profile从oms_/fin_/tms_汇总客户经营数据
十七、配送冷链、质量检测、财务支付、营销报表与审计模块
|
前缀 |
模块 |
核心表 |
设计说明 |
|
tms_ |
配送运输 |
tms_route, tms_delivery_order, tms_delivery_order_item, tms_vehicle, tms_driver, tms_loading_task, tms_sign_record |
固定线路、司机任务、装车、配送、签收、回单。 |
|
cold_ |
冷链温控 |
cold_device, cold_temperature_log, cold_exception, cold_trip_record |
冷链设备、运输温度、异常预警,与tms_delivery_order关联。 |
|
qc_ |
质量检测 |
qc_report, qc_report_item, qc_batch, qc_certificate, qc_sample, qc_exception |
检测报告与追溯批次、鱼码、供应商关联。 |
|
fin_ |
财务结算 |
fin_receivable, fin_receivable_item, fin_payable, fin_payable_item, fin_customer_statement, fin_supplier_statement, fin_invoice |
客户应收、供应商应付、对账、发票、账期、欠款。 |
|
pay_ |
支付退款 |
pay_order, pay_flow, pay_refund, pay_channel |
线上支付、POS支付、退款、支付渠道。 |
|
promo_ |
营销活动 |
promo_coupon, promo_coupon_item, promo_activity, promo_activity_item, promo_member_rule |
零售优惠券、批发促销、会员营销。 |
|
rpt_ |
经营报表 |
rpt_sales_daily, rpt_inventory_daily, rpt_gross_profit_daily, rpt_customer_sales, rpt_fish_loss |
交易库汇总后的分析表,不参与核心交易写入。 |
|
audit_ |
日志审计 |
audit_business_log, audit_field_change, audit_export_log, audit_scan_log, audit_print_log |
字段级变更日志、导出审计、扫码审计。 |
十八、核心业务闭环流程设计
18.1 一鱼一码全链路流转

• 采购收货时按鱼种、批次、供应商、检测报告生成赋码任务。
• 每条鱼称重后生成fish_item,并同步trace_code,进入wms_stock汇总库存。
• 零售、批发、礼品卡、POS出库时都必须扫码绑定fish_code。
• 客户扫码可通过trace_code看到供应商、批次、检测报告、入库、出库、配送和签收信息。
18.2 CRM、批发商城、客户进销存闭环

• CRM线索经过跟进、商机、报价、合同后转为正式B2B客户。
• 正式客户配置价格组、客户价、账期和配送线路后进入批发商城下单。
• 批发订单经OMS、WMS、TMS配送签收后,可自动生成客户进销存入库。
• 客户侧库存、采购、销售、盘点、损耗数据可反哺CRM客户画像和财务对账。
18.3 门店进销存与POS闭环
• 公司大仓通过调拨、配送或门店采购形成store_inv_inbound。
• 门店POS称重销售成功后生成store_inv_outbound,扣减门店库存。
• 一鱼一码商品在门店销售时必须绑定fish_code,fish_item.owner_type从门店变更为已销售。
• 门店盘点差异可以自动生成store_inv_loss_overflow,并形成库存流水。
• 门店销售数据进入rpt_进行门店毛利、损耗、畅销品和库存周转分析。
十九、重点数据库边界与集成规则
|
边界 |
规则 |
原因 |
|
商品与价格 |
pms_只放商品主数据;price_统一放所有价格。 |
避免商品表价格字段膨胀,支持多渠道和客户差异定价。 |
|
公司库存与门店库存 |
公司大仓wms_;自有门店store_inv_。 |
库存主体不同,不允许混表核算。 |
|
客户库存 |
客户自己的库存放cust_inv_,以customer_id/customer_org_id隔离。 |
不能把客户库存计入公司库存。 |
|
一鱼一码 |
fish_item是具体鱼实物,trace_code是码和追溯展示。 |
fish_负责库存状态,trace_负责赋码和对外追溯。 |
|
订单中心 |
所有销售渠道统一落到oms_order。 |
便于支付、配送、出库、售后和财务统一。 |
|
CRM与客户 |
crm_管理经营过程,cus_管理正式客户档案。 |
线索成交后转cus_customer。 |
|
财务 |
fin_记录应收应付和对账,pay_记录支付流水。 |
业务应收与支付流水不能混同。 |
|
权限菜单 |
用户权限菜单角色不放入水产业务库。 |
对接独立IAM/RBAC平台。 |
二十、开发落地建议
20.1 后端模块建议
• 按业务域建包:pms、price、pur、wms、fish、trace、oms、retail、wholesale、gift、pos、storeinv、custinv、crm、fin、tms、rpt、audit。
• 每个业务模块内部保持Controller / Service / ServiceImpl / Dao / Entity / Req / Resp / Excel / XML目录约束。
• 请求对象使用Req前缀,响应对象使用Resp前缀;不再以DTO/VO作为主要命名口径。
• 主表与明细表保存采用事务,明细表统一使用parent_id。
• 所有涉及库存、鱼码、支付、财务的审核/反审核必须幂等,并写入audit_和业务流水。
20.2 前端模块建议
• 后台管理端按业务域建立菜单:商品、价格、采购、仓储、一鱼一码、追溯、订单、零售、批发、礼品卡、POS、门店进销存、客户进销存、CRM、财务、报表。
• 每个功能一般保留列表页和新增/修改共用页,复杂业务如扫码拣货、称重收银、CRM跟进可设计专用工作台。
• 列表页默认隐藏id、parent_id、tenant_id等技术字段,展示名称字段和业务状态。
• 移动端重点包括:仓库扫码、门店POS、司机配送、客户进销存、CRM拜访。
20.3 分阶段实施路线
|
阶段 |
目标 |
重点模块 |
交付成果 |
|
第一阶段 |
主数据与一鱼一码基础 |
pms_, price_, sup_, pur_, wms_, fish_, trace_ |
完成商品、价格、采购入库、赋码、鱼码库存和基础追溯。 |
|
第二阶段 |
零售与批发交易闭环 |
retail_, wholesale_, oms_, pay_ |
完成零售规格销售、批发称重销售、统一订单和支付。 |
|
第三阶段 |
门店与POS闭环 |
store_goods_, store_inv_, pos_ |
完成门店库存、调拨、盘点、POS称重销售。 |
|
第四阶段 |
客户进销存与CRM |
crm_, cus_, cust_inv_ |
完成客户线索、报价、合同、客户入库和客户库存。 |
|
第五阶段 |
礼品卡、冷链、财务对账 |
gift_, tms_, cold_, fin_ |
完成礼品卡提货、配送签收、冷链温控和应收应付。 |
|
第六阶段 |
报表、审计与智能分析 |
rpt_, audit_ |
完成毛利、损耗、客户贡献、库存周转和审计追溯。 |
二十一、附录:核心字段标准建议
|
字段名 |
SQL Server类型 |
规则 |
说明 |
|
tenant_id |
BIGINT |
NOT NULL |
租户ID,全表必备。 |
|
org_id |
BIGINT |
NULL |
组织ID,替代dept_id。 |
|
shop_id |
BIGINT |
NULL |
门店ID,门店业务使用。 |
|
customer_id |
BIGINT |
NULL |
B2B客户ID,客户业务使用。 |
|
parent_id |
BIGINT |
明细表必填 |
所有_item明细表关联主表id。 |
|
goods_id |
BIGINT |
NULL |
商品主表ID。 |
|
sku_id |
BIGINT |
NULL |
商品SKU ID。 |
|
unit_id |
BIGINT |
NULL |
库存/销售单位ID。 |
|
fish_code |
NVARCHAR(64) |
NULL |
唯一鱼码。 |
|
trace_code |
NVARCHAR(64) |
NULL |
追溯码。 |
|
actual_weight |
DECIMAL(18,3) |
NULL |
实际重量。 |
|
stock_weight |
DECIMAL(18,3) |
DEFAULT 0 |
库存重量。 |
|
stock_qty |
DECIMAL(18,3) |
DEFAULT 0 |
库存数量。 |
|
amount |
DECIMAL(18,2) |
DEFAULT 0 |
金额。 |
|
status |
INT |
DEFAULT 0 |
业务状态。 |
|
enabled |
TINYINT |
DEFAULT 1 |
启用状态。 |
|
del_flag |
TINYINT |
DEFAULT 0 |
删除标记。 |
|
CreateID |
BIGINT |
NULL |
创建人ID。 |
|
Creator |
NVARCHAR(30) |
NULL |
创建人名称。 |
|
CreateDate |
BIGINT |
NULL |
创建时间戳。 |
|
ModifyID |
BIGINT |
NULL |
修改人ID。 |
|
Modifier |
NVARCHAR(30) |
NULL |
修改人名称。 |
|
ModifyDate |
BIGINT |
NULL |
修改时间戳。 |
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)