首页 > 解决方案 > 共享相同产品但不同分销商的正确雄辩关系是什么?

问题描述

有一个门户网站,制造商向分销商供应产品,经销商的订单由他们自己的分销商验证。假设“经销商 X”有 40 件“蓝色洗发水”的库存余额。每当经销商订购 SB 时,DX 只需验证付款即可。付款验证后,将从DX扣除库存余额,制造商将包装发货。

我不知道如何从中扣除库存余额。

Dealar - 下订单 Distributor - 验证订单并扣除库存余额。制造商 - 包装和运输。

我尝试使用多对多、单通和多对多。

companies
 - id integer
 - name string

products
 - id integer
 - name string
 - price decimal

orders
 - id integer
 - company_id integer
 - timestamps datetime
 - verified boolean

order_items
 - id integer
 - product_id integer
 - order_id integer

inventories
 - ??
 - ??
 - balance integer
 etc 

创建 Inventory 模型的模式是什么,关系是什么(如果关系存在于 Laravel 中)我应该使用或需要其他东西来执行 SQL 查询以扣除特定产品的余额?

许多公司可能有不同的产品余额,每当经销商订购时,都会从公司余额中扣除。

标签: laraveleloquentrelationship

解决方案


多对多是适用的正确关系。

如果您的产品可以来自多个分销商(1 到 N)并且一个分销商可以拥有多个产品(1 到 N),那么总而言之,您将具有 N 到 N(多对多)关系。


推荐阅读