RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 622669
Accepted
Victor Khovanskiy
Victor Khovanskiy
Asked:2020-02-03 00:17:57 +0000 UTC2020-02-03 00:17:57 +0000 UTC 2020-02-03 00:17:57 +0000 UTC

在日志中保存价格

  • 772

有一张商品表(Goods)。每个项目都有一个价格。创建订单 ( Order) 时,使用附加表将商品附加到订单上Goods__Order。同时,下单后,订单中商品的价格不应发生变化,即使在Goods表中发生了变化。

一种选择是将价格存储在表中Goods__Order。但是不应该改变的字段数量可能会变大,所以你不想把它们都转移到这个表+这个选项不是很通用。

在我看来,第二个选项是将表中的更改记录Goods到一个Goods_audit包含字段更改+修订号的表中。这可以通过 Hibernate Envers 获得。Goods_Order但是你需要在表中输入产品 ID + 版本号 + 我没有找到他们这样做的例子。

哪个选项会更好?考虑到在线商店的数量庞大,可能已经或多或少地有一个众所周知的解决方案。是的,在 php 选项中没有 Hibernate Envers。

java
  • 2 2 个回答
  • 10 Views

2 个回答

  • Voted
  1. Best Answer
    Eugene Bartosh
    2020-02-08T08:07:08Z2020-02-08T08:07:08Z
    • 订单不是会计对象,它是物流过程和客户关系的对象。没有关于物流和 CRM 的明确建议,这些流程的正确设置是组织的专有技术。
    • 在订单付款之前,它实际上是对客户的报价和任何重估的对象。
    • 商店可能有计算客户单个产品价格的规则,考虑到折扣(有时是附加费)——促销代码折扣、订单数量折扣(订单中所有商品的总和) )、客户的个人折扣(例如,订单历史记录或个别客户类别的折扣)等。
    • 在订单等待付款期间,可能会启动刺激需求的活动 - 开始对个别产品/组提供大幅折扣,从而取消其他折扣(促销代码、个人等)。
    • 订单付款后(尤其是在执行订单时),所有当前条件 - 基本价格、折扣、交货条件等 - 必须固定且不得进一步更改。
    • 在 Magento 等发达的电子商务平台中,当前价格在单独的对象中维护 - 价格列表,可以配置价格重新计算规则(例如,根据进口商品的货币报价),保留价格列表更改的历史记录。
    • 还可以配置重新计算未支付订单的规则。

    应该如此,但它是否在特定的 eComm 中实施以及如何实施取决于平台。如果您自己编写平台 - 请咨询销售部门 :-)

    • 3
  2. FORTRAN
    2020-02-06T23:39:17Z2020-02-06T23:39:17Z
    1. 笨拙的选项在订单(order)表中写下订单时的价格,添加字段价格(price)。

    2. 创建一个 price_history 表 [product id, revision number, price, date, etc. if necessary] 并在那里进行每次价格更改。只有价格修订 ID 存储在 Goods 表中。

    • 0

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    Python 3.6 - 安装 MySQL (Windows)

    • 1 个回答
  • Marko Smith

    C++ 编写程序“计算单个岛屿”。填充一个二维数组 12x12 0 和 1

    • 2 个回答
  • Marko Smith

    返回指针的函数

    • 1 个回答
  • Marko Smith

    我使用 django 管理面板添加图像,但它没有显示

    • 1 个回答
  • Marko Smith

    这些条目是什么意思,它们的完整等效项是什么样的

    • 2 个回答
  • Marko Smith

    浏览器仍然缓存文件数据

    • 1 个回答
  • Marko Smith

    在 Excel VBA 中激活工作表的问题

    • 3 个回答
  • Marko Smith

    为什么内置类型中包含复数而小数不包含?

    • 2 个回答
  • Marko Smith

    获得唯一途径

    • 3 个回答
  • Marko Smith

    告诉我一个像幻灯片一样创建滚动的库

    • 1 个回答
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Алексей Шиманский 如何以及通过什么方式来查找 Javascript 代码中的错误? 2020-08-03 00:21:37 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    user207618 Codegolf——组合选择算法的实现 2020-10-23 18:46:29 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5