我有以下表格:
discount table:
id
name
description
amount
discount_exception
id
from_date
to_date
discount_id (foreign key to discount table)
折扣例外表用于存储折扣对用户不可用的日期范围,因此不应显示折扣。请注意,discount和discount_exception之间存在1:M的关系。换句话说,一个折扣可以有很多例外。
现在,我编写SQL的方法是获取所有折扣,然后在数组中循环它们,并查询discount_exception表,以确定每个折扣是否在特定的日期范围内
假设我们的任务是实现一个API,以检查折扣计数是否可以应用于订单。Order域对象包含篮中的项以及客户id:
class Order(
val items: List<Item>,
val customerId: CustomerId
)
我们还有一个域对象DiscountCode,表示要使用的折扣计数。
有几个验证规则可以检查给定的折扣计数是否可以应用于给定的订单:
discounted?Has 折扣是否过期?是否有不能使用的商品?该折扣代码已被其他人使用?(客户是否允许使用此折扣代码?)
对于规则1-3,我们可以说它们显然是业务逻辑,根据DDD,它们属于Disc
我有一张定价规则表。我使用以下查询检索每个ProductTypeID的最大折扣,该折扣指示产品的类型:
SELECT MAX(discount) as BiggestDiscount, ProductTypeID FROM dbo.SellingPriceRules
WHERE ProductTypeID is not null
GROUP by ProductTypeID
ORDER BY ProductTypeID
这是完美的工作,但是我需要在此基础上进行扩展,对于ProductID的列表,检索我最大的折扣。因此,我需要找到每个ProductID所属的ProductTypeID,并检查我的
我正在写一个Flutter应用程序,用户可以在上面购买东西,我有一个折扣方案,比如:购买超过10个可以享受5%的折扣,购买超过20个可以享受10%的折扣,等等。 这在代码中很容易实现。但我不想硬编码折扣逻辑,因为我可能想要稍后更改它。 那么,有没有一种方法可以在数据库上创建逻辑,然后在结帐时调用它? 我想过用数据库中的变量创建切换用例,然后我可以更改这些变量。但是我会受到我创建的案例数量的限制。即: int discount1 = FirebaseReference; // 5
int limit1 = FirebaseReference; // 10 (so give 5% of if m
下面是我的DiscountPeriod表的结构:
id
room_id
date_from
date_last
discount
假设我们有折扣,从01 December 2017开始,以10 December 2017结尾。
我在找日期范围看看有没有折扣。因此,日期范围可能完全或部分在某些折扣期内。3个示例日期-搜索范围:
从12月2日至12月10日(完全在一个折扣期内)
11月20日至12月4日(部分在内部)
12月5日至12月15日(部分在内部)
以上所有三个例子的预期都是以01 December 2017开头,以10 December 2017结尾的折扣。
目前,我