0

我正在将 Solidus 用于电子商店应用程序,并且我正在尝试处理以商品包装形式出售的产品。我有一个具有库存计数值的产品“纸片”,我只卖 50 张纸。

“纸片”项目单独存储在我的库存位置,但从未单独出售。

我有两种可能的解决方案:

  1. 我已经看到我可以创建一个 OptionType“Pack”,将其分配给我的产品,然后创建一个选项类型值设置为 50 的变体。但我没有找到任何方法将我的单张纸的库存数量与我的 50 件商品包的库存数量,这就是我想要做的。

  2. 我尝试了 solidus_product_assembly 插件,它可以将产品作为其他产品的批次。该解决方案似乎工作得更好,因为它可以处理产品的 assembly_parts 的库存更新。我的问题是我的装配产品的库存:在我看来,我必须手动设置它,这里没有自动计算,这取决于组合其他产品的可用性。也许我错过了什么?目前,我重写了 total_on_hand Spree::Product 的方法来处理它,以及其他一些定制。

因为在我的情况下,我在装配产品中永远不会有一个以上的 assembly_part,有没有人想到更好的解决方案,或者它是我认为最明显的处理方法吗?

4

1 回答 1

0

我们也有类似的情况。我们已将 setsize 与产品相关联。在前端代码中,我们确实显示了设置的大小并将数量作为设置的数量。我们为单个项目显示 os 的价格,您可以根据您的要求将其显示为整套。在下订单期间,只需将设定值与订购数量相乘。您需要添加一些 JavaScript 代码并覆盖前端 gem 中的一些控制器代码,以便在 set 方面获得适当的数量。此外,无论您在哪里向最终用户显示数量,都会根据设置保持更新。还有另一个提示,可以从后端修改订单,如果数量更改为不能被设置大小整除的某个值,则显示项目的数量。

在后端,您可以让数量仅以项目为单位。我建议不要调整其他任何东西以保持其余代码可升级和足够稳定。

于 2017-06-30T17:21:38.587 回答