【技术实现步骤摘要】
一种发货通知失败后进行补偿的方法及系统
[0001]本专利技术涉及计算机
,特别是一种发货通知失败后进行补偿的方法及系统。
技术介绍
[0002]在商城系统中,支付系统与发货系统相互隔离,支付服务和发货服务采用微服务的方式进行通信。用户完成订单支付后,支付服务将通知支付成功信息给发货服务,发货服务收到发货通知后进行发货业务。两个服务之间的数据库也是相互独立的,服务之间是使用http的方式进行通知,有可能存在超时、异常等情况。
技术实现思路
[0003]为克服上述问题,本专利技术的目的是提供一种能够保证支付服务发起的发货通知能够有效传达给发货服务,保证能够实现用户发货服务的方法。
[0004]本专利技术采用以下方案实现:一种发货通知失败后进行补偿的方法,所述方法包括以下步骤:
[0005]步骤S1、用户给商城的支付系统付款,支付系统通过创建事件表生成通知事件记录;
[0006]步骤S2、支付系统在收到用户款项后,向商城的发货系统发起发出货物的通知;
[0007]步骤S3、判 ...
【技术保护点】
【技术特征摘要】
1.一种发货通知失败后进行补偿的方法,其特征在于,所述方法包括以下步骤:步骤S1、用户给商城的支付系统付款,支付系统通过创建事件表生成通知事件记录;步骤S2、支付系统在收到用户款项后,向商城的发货系统发起发出货物的通知;步骤S3、判断支付系统通知发货系统发货的通知是否成功,是,则更新事件状态为成功,否,则更新事件记录为失败状态;步骤S4、判断发货系统是否收到支付系统的发货通知,是,则对用户实施发货操作;否,则发货系统启用一个定时任务,定时读取发货通知失败的数据;步骤S5、支付系统将发货通知的失败数据发送至发货系统,实现发货通知能够及时通知,确保发货通知一定能传达的到。2.根据权利要求1所述的一种发货通知失败后进行补偿的方法,其特征在于:所述步骤S1进一步具体为:用户付款后,商城的支付系统创建一张事件表notify_event_tb,包含如下字段:通知编号notifyId、订单号orderNo、用户编号userId、商品编号goodsId、事件状态state、失败次数failCount、事件时间addTime;用户在支付系统付款后,支付系统在数据库中新增一条事件记录,用于记录发货通知的情况。3.根据权利要求1所述的一种发货通知失败后进行补偿的方法,其特征在于:所述步骤S3进一步具体为:生成好通知事件后,商城的支付系统向发货系统发起第一次发货通知,判断发货通知是否成功,是,则主动通知支付系统更新事件状态为成功,否,则在第一次通知失败后间隔10分钟进行第二次通知重试,成功更新事件状态为成功,失败则在第二次通知失败后间隔一个小时进行第三次通知重试,当通知事件记录的失败次数为3次时,则不再进行主动通知发货,记录该通知事件的失败数据。4.根据权利要求1所述的一种发货通知失败后进行补偿的方法,其特征在于:所述步骤S4进一步具体为:支付系统在用户支付成功后会向发货系统发送至多3次的发货通知,判断发货系统是否收到支付系统的发货通知,是,则对用户实施发货操作;否,则发货系统启用一个定时任务,向支付系统请求获得通知失败的数据。5.根据权利要求1所述的一种发货通知失败后进行补偿的方法,其特征在于:所述步骤S5进一步具体为:支付系统收到发货系统获取发货通知失败数据的请求,将发货通知的失败数据在次日发送至发货系统中,发货系统根据失败数据再次进行发货操作,确保发货业务能够被完成。6.一种发货通知失败后进行补偿的系统,其特征在于:包...
【专利技术属性】
技术研发人员:刘德建,叶伟,汪松,
申请(专利权)人:福建天晴数码有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。