我正在开发一个 Java EE 6 应用程序,其中“供应商”应该能够为用户定义服务的价格和不同的折扣。有许多不同的提供者。每家提供相同的服务,定价模式可能不同。
价格模型: - 供应商应该能够定义价格,例如每小时、每分钟、每进程……。- 提供商应该能够轻松添加条件来定义用户获得的折扣。例如:特定用户组的用户获得 10% 的折扣,使用该服务超过 5 次的用户获得另一个折扣。- 它应该能够将条件与“AND”或“OR”等逻辑运算联系起来。- 可能条件的数量应由软件制造商定义。
- 当用户尝试访问服务时,应显示用户特定的价格。使用该服务后,特定用户有时会收到一张发票,其中列出了该服务的总费用。在使用服务时,提供商可以更改定价模型,因此必须有版本号或其他东西。然后应将定价模型版本保存在数据库中。
问题是 - 使用规则引擎来解决这个规范是否可能和有意义?提供者应该在没有 xml 文件或类似文件的情况下定义条件,只需单击并选择即可。我没有使用规则引擎的经验......所以也许有人可以帮助我找出最适合这个问题的解决方案。