现在做的一个项目涉及到一个信息排名功能,自己的逻辑已经混乱了,暂时无解,来求众人的智慧。
具体情况如下,客户要求用户发布的排名,根据其出价的高低系统自动判断。
用户发布信息时,要一次至少付出7天的费用。用户A 2013/1/22 发布广告 每天价格自定为10元,订购7天,系统扣除70元。
用户B 2013/1/23 发布广告 每天价格自定为20元,订购7天,系统扣除140元。那问题来了,怎么样才能让用户B排在用户A前面。如果简单的只是按出钱多少算,那在23号,用户A发现用户B排在自己前面了,他想再出价,排到用户B前面,怎么处理? 因为已经收了他7天的70了,这中间加价,不知道该怎么处理好。问题还涉及到A加价了,B又加价,到底该怎么处理呢。客户的要求只是说谁出钱多,谁排前面,但一次又要交7天的钱,又要让出钱多的,及时排在前面。
具体情况如下,客户要求用户发布的排名,根据其出价的高低系统自动判断。
用户发布信息时,要一次至少付出7天的费用。用户A 2013/1/22 发布广告 每天价格自定为10元,订购7天,系统扣除70元。
用户B 2013/1/23 发布广告 每天价格自定为20元,订购7天,系统扣除140元。那问题来了,怎么样才能让用户B排在用户A前面。如果简单的只是按出钱多少算,那在23号,用户A发现用户B排在自己前面了,他想再出价,排到用户B前面,怎么处理? 因为已经收了他7天的70了,这中间加价,不知道该怎么处理好。问题还涉及到A加价了,B又加价,到底该怎么处理呢。客户的要求只是说谁出钱多,谁排前面,但一次又要交7天的钱,又要让出钱多的,及时排在前面。
游戏规则不清,至少没说同价如何排,是否先到前排?另外加价是否为“先”也是一个规则问题
关于排名的计算,多方面参数,必须要有一个公式。
当然这样的话,后来的可能会排在先来的前面如果不想这样,就按 剩余费用/剩余天数 排序
也曾遇到客户没什么“脑子”,问他什么规则一句也答不上,也可以自己先写一套规则给他们决定是否可行
但第三天,用户加了300块。
那后来的五天就是 700-200+300块了,五天就是 800/5了。
然后再按当天的价位来排。每天可能价钱都不同,所以用当天价位比较实时点
第六天把单价提高,买7天,那这个“7天”是否应用到已过去的5天呢?还是从当前天数算起的7天
总价1 + 总价2 (前后共12天,时间中间叠加2天)
总价1 + 总价2 (前后共14天,两次购买时间不叠加)
总价1 + 总价2 (前后只有7天,在实施期内完全叠加)
所以做细致的话,还有个时间参数
总之就是