预售活动图
2016-11-29 10:16:18 0 举报
这张预售活动图展示了一场即将到来的盛大购物狂欢。图中充满了各种吸引人的元素,如闪烁的灯光、鲜艳的色彩和动感的设计。首先映入眼帘的是一个巨大的倒计时时钟,显示着距离活动开始的时间。周围环绕着各种优惠券、折扣码和特价商品的图片,让人忍不住想要立刻参与其中。此外,还有各种品牌的标志和代言人的照片,彰显了活动的丰富性和多样性。整个画面充满了紧张刺激的氛围,让人充满期待。这场预售活动无疑将吸引无数消费者前来参与,享受这场难得的购物盛宴。
作者其他创作
大纲/内容
快照队列
\t/* 批量取消活动 */\tCancelResultList batchCancelPresell(1:list cancelPresell);
插入操作记录表
添加完成
缓存
通过
失败
queuekey:presell:snapshotvalue:json
记录操作数据
未通过
调用商品接口解除限制
DB(Opeartion)
DB(Presell)
涉及到两个缓存:商品缓存:key:presell:zid:zexxxxxx结束队列:key:presell:end:queue:
开始
2.dealid不存在,处理结果=N,失败原因=“dealid不存在”5.dealid与商品ID不匹配,处理结果=N,失败原因=“dealid与商品ID不匹配”9.预售开始时间不等于deal排期开始时间,处理结果=N,失败原因=“预售开始时间必须等于deal排期开始时间”。
验证数据正确性
验证是否可以更新
批量活动添加流程(前台)
sort queuekey:presell:end:queue:value:activityIdscore:endTime
/* 批量导入预售活动 execl 由后台上传fastDFS后,调用接口*/result.Result batchImportPresellExcel(1:ImportPresellParam importPresellParam);
调用dealService
发送Kafka消息
结束队列
批量取消流程
循环处理数据
异步插入快照表
如果当前时间=预售结束时间
记录数据更新DB(Opeartion)
12.如果同一商品同一时间存在“已发布”的限时限量活动,处理结果=N,失败原因=“该商品同一时间已设置XXXX活动”,XXXX为限时抢/新用户专享/卖家限时抢/拼团
批量活动添加流程(后台)
活动更新
查询需要导出的Execl的Address
/* 批量查询 */BatchGetPresellResult batchGetPresellInfo(1:list params);
/* 查询Excel操作结果表 */ExcelResultPageList queryPresellExcellResultList(1:ExcelResultPageParam param);
结束
导入Execl
successNumfailNumdest_address
查询
查询操作记录
DB
下载Execl
更新数据库状态处理中
调用商品服务
验证必传信息
如果有处理中数据,15s间隔查询一次
调用Activity服务
本地数据库校验
单个查询PresellResult getPresellInfo(1:GetPresellParam param);
/* 异步查询Excel操作结果 参数根据 需要再次查询结果的 活动id */\tExcelResultPageList queryImportExcellResultListSync(1:list param);
4.商品ID不存在,处理结果=N,失败原因=“商品ID不存在”15.商品最低价格=抵用金额,处理结果=N,失败原因=“商品价格必须大于抵用金额(区间价时最低价必须大于抵用金额)”16.预售库存为空,或者不是正整数,或者大于商品当前库存,处理结果=N,失败原因=“请填写预售库存,预售库存必须填写整数,且不能大于商品当前库存XXX”,其中XXX=商品当前库存
成都
21.通过校验后,生成一条预售商品活动记录,状态为“已发布”,锁定商品不能修改,不能下架,锁定开始时间为当前时间,结束时间为预售结束时间。
1.dealid为空,处理结果=N,失败原因=“请填写dealid”3.商品ID为空,处理结果=N,失败原因=“请填写商品ID”6.预售开始时间为空,处理结果=N,失败原因=“请填写预售开始时间”7.预售结束时间为空,处理结果=N,失败原因=“请填写预售结束时间”8.预售开始时间=预售结束时间,处理结果=N,失败原因=“预售结束时间必须大于预售开始时间”10.预售开始时间2位,处理结果=N,失败原因=“请填写预售定金金额,预收定金金额必须0,小数点后最多2位数字”14.抵用金额为空,不是数字,或者小于预付定金金额,或者小数点后数字2位,处理结果=N,失败原因=“请填写抵用金额,抵用金额必须=预付定金金额,小数点后最多2位数字”17.支付尾款开始时间为空,处理结果=N,失败原因=“请填写支付尾款开始时间”18.支付尾款结束时间为空,处理结果=N,失败原因=“请填写支付尾款结束时间”19.支付尾款开始时间=支付尾款结束时间,处理结果=N,失败原因=“支付尾款结束时间必须大于支付尾款开始时间”20.支付尾款开始时间=当前时间),处理结果=N,失败原因=“该商品有未结束的预售活动”
不需要调用接口的验证
导入和更新均要进行这套校验
验证更新数据的正确性
更新数据
前台查询(商品详情页等)
活动添加
0 条评论
下一页