- 消息要有来源系统,消息类型,收到消息的应用,通过url取数据。
做一个开关,用户可以自己选择方案一和方案二。
方案一:A公司的消息中存json,供应链直接获取json
方案二:通过A公司消息中的UrL,供应链使用查询接口获取业务数据。
2、不能重复发消息。如果未处理消息,重复发消息以最新的为准。
3、哪些系统可以推送消息,通过token,消费消息需要注册,按填报部门确定是否可以消费消息。消息由技术部提供。消息要有时间戳,精确到秒。按履约过程,需要先消息前面的消息,才能消费后面的消息,不能先消费后面的消息。
4、保存和检验是供应链自己做对接程序,供应链根据查询接口获取数据,获取的业务数据放哪?自己存?
5、消息推送的频率产品来定。重复消息业务系统自己来判断和管理。供应链消息处理完要及时更新消息状态。
6、错误码和内容由供应链调用平台接口提供。
7、产品把业务单据的规则整理出来,有字段的规则,包括字段长度和其他字段的关系,有单据的规则,规则文档要进行评审,特别是冲销的整体规则。
8、技术部牵头做一个模板例子。
9、各应用自己存秘钥,供应链需要配置哪些单位对应哪些密钥。
二、对接方案
- 自建系统有业务数据需要推送时,自建系统对接程序推送消息到平台消息池(消息池接收消息接口由平台提供)。
- 供应链对接程序实时监控消息池中消息情况,平台提供消息池消息查询接口,消息内容包含消息类型、业务主键、获取详情数据URL等信息。
- 当有新消息产生时,供应链对接程序根据消息中业务主键等信息,调用自建系统对接程序的查询接口获取详细业务数据;调用过程中如果因系统、网络等原因调用失败,重试3次(每次间隔5分钟)。
- 供应链对接程序获取到业务数据后,将获取的原始数据存储到日志数据库中,并更新消息状态为获取数据成功。
- 供应链对接程序按顺序读取日志数据库中的业务数据,调用供应链管理系统数据校验接口,若校验成功,调用更新接口将数据正式入库,并更新消息状态为校验数据成功;若校验失败,更新消息状态为校验数据失败,并返回包含详细失败原因的结果。
- 自建系统对接程序定时获取消息池中消息状态数据,如果消息返回的业务处理结果为校验数据失败,需要分析失败原因并更正数据后,按照从步骤①的顺序推送数据更新。