我正在尝试实现一个用例,当为电子商务应用程序创建促销时,用户只能申请一次促销。因此,如果有一个特价10美元的购买,或类似的东西,用户只能现在和永远声称该促销。
下面是我的想法:
promotions
----------
id | int
start | datetime
end | datetime
claimed | boolean
user_id | int
product_id | int
基本上,如果我向user_id外键添加一个UNIQUE约束,一旦正确,就会阻止用户声明提升?唯一的问题是,如果我第二天或一周后升职怎么办?这对promotions表来说无关紧要,因为按照现在的
我有两种类型的促销:一种是标准的促销,比如“买一送一”,另一种是针对即将到期的产品的短期促销。
这里对这两种类型进行了一些简化,但显示了字段:
case class ShortDatedPromo extends Promotion (val name, val startDate, val endDate, val wasPrice, val nowPrice, val productID)
case class RegularPromo extends Promotion (val name, val description, val terms, val productID, val
截至2014年5月,在谷歌搜索"ios in app购买促销码“,会有许多新闻网站报道同样的事情--苹果似乎正在努力允许测试应用内购买的促销码,这从的截图中可见一斑。
我的问题是:有人知道如何做到这一点吗?我登录到新的iTunesConnect界面,但找不到任何链接,在我能找到的苹果文档中也没有显示任何内容。
理想情况下,我希望为每月订阅创建一个代码,但他们可能只允许消耗品。由于缺乏有关IAP促销代码的实际信息,我猜测该功能尚未正式提供,EA游戏已被苹果公司邀请进行测试。
我试图将一些商业案例映射到循环壁垒的使用上。假设我们有一个促销优惠正在进行,只有3个客户可以得到促销优惠。其余的人都不会得到这个提议。
为了映射这个场景,我使用了循环屏障。即使代码工作正常,我也不知道如何处理一些客户无法获得报价的场景。现在,我尝试使用具有超时值的await() API,这样我就可以捕获TimeoutException并让客户知道他无法利用促销服务。这导致了另一个等待线程的BarrierBrokenException。
我想知道,我们如何优雅地处理这些场景,以便选定的客户可以利用促销优惠,而那些谁不能遵循不同的代码路径。
我的密码-
public class CyclicBar