CN115510154A - 基于区块链的存证数据生成方法、装置和计算机设备 - Google Patents
基于区块链的存证数据生成方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN115510154A CN115510154A CN202211155898.0A CN202211155898A CN115510154A CN 115510154 A CN115510154 A CN 115510154A CN 202211155898 A CN202211155898 A CN 202211155898A CN 115510154 A CN115510154 A CN 115510154A
- Authority
- CN
- China
- Prior art keywords
- field
- target
- service
- type
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种基于区块链的存证数据生成方法、装置和计算机设备。上述方法包括:获取目标业务单据,并确定目标业务单据对应的目标上链格式转换模板;确定每个业务字段各自对应的业务字段类型,并根据每个业务字段类型和目标上链格式转换模板中的映射关系,确定每个业务字段各自对应的映射方式;根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段;根据至少一个存证字段,得到具有标准上链格式的目标存证数据。采用本方法能够提高生成存证数据的准确性。
Description
技术领域
本申请涉及区块链技术领域,特别是涉及一种基于区块链的存证数据生成方法、装置、和计算机设备。
背景技术
随着区块链技术的发展,使得不同企业的业务系统可以将业务单据作为一种存证数据,并上链至区块链中,也即区块链存证。存证后的业务单据无法被篡改,便于被各方共享,可作为纠纷发生时的电子证据,实现了全链路可信等。
目前,在业务系统与区块链系统进行集成时,需要采用区块链底层框架所支持的SDK或者API等形式,并由业务系统对不同的异构业务单据进行重新开发,以满足需求的智能合约、以及与区块链交互和集成等功能。然而,现有区块链底层系统较为庞大且复杂,而且业务系统与区块链系统往往采用了不同的开发语言、开发规范和数据存储方式等,造成了系统开发难度大。
因此,针对结构差异较大的业务单据,如何在降低业务系统的开发流程的情况下,准确得到带有标准上链格式的存证数据,进而确保业务系统与区块链系统的数据集成是本申请需要解决的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能提高数据上链准确性的存证数据生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种基于区块链的存证数据生成方法。所述方法包括:
获取目标业务单据,并确定所述目标业务单据对应的目标上链格式转换模板;所述目标业务单据包括多个业务字段;所述目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
确定每个所述业务字段各自对应的业务字段类型,并根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段;
根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据;所述目标存证数据用于上链至区块链中。
在一个实施例中,在所述获取目标业务单据之前还包括:展示业务关联界面;所述业务关联界面包括多个业务单据和多个上链格式转换模板;响应于针对多个业务单据和多个上链格式转换模板的关联操作,得到所述业务单据与所述上链格式转换模板之间的业务关联关系;所述确定所述目标业务单据对应的目标上链格式转换模板,包括:在获取得到所述目标业务单据的情况下,根据所述业务关联关系,确定所述目标业务单据对应的目标上链格式转换模板。
在一个实施例中,所述目标上链格式转换模板包括上链条件;所述上链条件包括多个子条件;每个所述子条件之间具有逻辑关联关系;在所述确定所述目标业务单据对应的目标上链格式转换模板之后,所述方法还包括:确定每个所述业务字段各自对应的字段值,并确定每个所述子条件各自对应的目标字段值;根据每个所述子条件,对每个所述子条件各自对应的目标字段值进行筛选,得到多个筛选结果;根据每个所述子条件之间的逻辑关联关系,对多个筛选结果进行关联,得到关联结果;当所述关联结果表征为真时,将所述目标业务单据作为筛选通过的目标业务单据。
在一个实施例中,所述逻辑关联关系包括逻辑与、逻辑或中的至少一种;所述筛选结果包括真或假中的任意一种;所述根据每个所述子条件之间的逻辑关联关系,对多个筛选结果进行关联,得到关联结果,包括:确定当前子条件和所述当前子条件相邻的相邻子条件;根据所述当前子条件和所述相邻子条件之间的逻辑关联关系,将所述当前子条件对应的筛选结果和所述相邻子条件对应的筛选结果进行关联,得到关联结果;将所述相邻子条件作为新的当前子条件、将所述关联结果作为新的当前子条件的筛选结果,并返回至确定所述当前子条件相邻的相邻子条件的步骤继续进行,直至将所有筛选结果关联完毕。
在一个实施例中,所述根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式,包括:针对多个业务字段中的每个业务字段,均根据所述映射关系和当前业务字段的业务字段类型,确定所述当前业务字段所对应的存证字段类型;根据所述存证字段类型,确定所述当前业务字段对应的映射方式。
在一个实施例中,所述根据所述映射关系和当前业务字段的业务字段类型,确定所述当前业务字段所对应的存证字段类型,包括:当所述业务字段类型为字符串类型、数值类型、基础资料类型和分录类型中的至少一种时,根据所述映射关系,确定所述当前业务字段所对应的存证字段类型为普通类型;当所述业务字段类型为多选类型、附件字段和特殊类型中的至少一种时,根据所述映射关系,确定所述当前业务字段所对应的存证字段类型为指定类型。
在一个实施例中,所述根据所述存证字段类型,确定所述当前业务字段对应的映射方式,包括:当所述存证字段类型为普通类型时,确定所述当前业务字段对应的映射方式为自动转换方式;根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段,包括:根据所述自动转换方式,对所述当前业务字段进行映射,得到与所述存证字段类型相对应的当前存证字段。
在一个实施例中,所述根据所述存证字段类型,确定所述当前业务字段对应的映射方式,包括:当所述存证字段类型为指定类型时,确定所述当前业务字段对应的映射方式为值转换方式;根据每个所述业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:根据所述值转换方式,分别对每个所述业务字段进行映射,得到至少一个存证字段。
在一个实施例中,所述值转换方式包括拼接处理和序列处理中的任意一种;所述根据所述值转换方式,分别对每个所述业务字段进行映射,得到至少一个存证字段,包括:确定所述映射方式为所述值转换方式的多个第一业务字段;当所述值转换方式为拼接处理时,在每个所述第一业务字段之间添加分隔符,并将添加了所述分隔符的第一业务字段进行拼接,得到一个存证字段;当所述值转换方式为序列处理时,按照预设的标准数据格式,将每个所述第一业务字段进行序列化处理,得到一个存证字段。
在一个实施例中,所述根据所述存证字段类型,确定所述当前业务字段对应的映射方式,包括:当所述存证字段类型为指定类型并带有手动配置标识时,确定所述当前业务字段对应的映射方式为哈希处理方式;根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段,包括:响应于针对所述多个业务字段的选择操作,确定选中的多个第二业务字段;按照预设的标准数据格式,将每个所述第二业务字段进行序列化处理,得到一个业务字符串;确定所述业务字符串对应的哈希值,并将所述哈希值作为一个存证字段。
在一个实施例中,所述目标上链格式转换模板包括数据权限标识;所述根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据,包括:综合每个所述存证字段,得到候选存证数据,并根据所述数据权限标识,确定与所述目标业务单据相对应的身份标识;当从预设的数据库中查找到与所述身份标识相匹配的目标数字身份时,将所述候选存证数据作为具有标准上链格式的存证数据;上述方法还包括:将所述目标数字身份与所述目标存证数据进行关联,并将所述目标存证数据通过所述目标数字身份上链至所述区块链中。
在一个实施例中,上述方法还包括:当接收到上链任务时,确定所述上链任务中的上链方式;当所述上链方式为定时批量方式时,确定在预设的上链时间段内产生的所有目标业务单据;确定每个目标业务单据各自对应的目标存证数据,并通过调用预设的接口,将每个目标存证数据上链至所述区块链中。
在一个实施例中,上述方法还包括:当所述上链方式为事件触发方式时,对多种业务事件进行监听;所述业务事件包括业务单据审批、业务单据下推和业务单据关闭中的至少一种;当监听到目标业务事件时,确定所述目标业务事件所对应的目标业务单据;确定所述目标业务单据对应的目标存证数据,并通过调用预设的接口,将所述目标存证数据上链至所述区块链中。
第二方面,本申请还提供了一种基于区块链的存证数据生成装置。所述装置包括:
业务单据获取模块,用于获取目标业务单据,并确定所述目标业务单据对应的目标上链格式转换模板;所述目标业务单据包括多个业务字段;所述目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
映射方式确定模块,用于确定每个所述业务字段各自对应的业务字段类型,并根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式;
存证数据确定模块,用于根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段;根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据;所述目标存证数据用于上链至区块链中。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取目标业务单据,并确定所述目标业务单据对应的目标上链格式转换模板;所述目标业务单据包括多个业务字段;所述目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
确定每个所述业务字段各自对应的业务字段类型,并根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段;
根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据;所述目标存证数据用于上链至区块链中。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取目标业务单据,并确定所述目标业务单据对应的目标上链格式转换模板;所述目标业务单据包括多个业务字段;所述目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
确定每个所述业务字段各自对应的业务字段类型,并根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段;
根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据;所述目标存证数据用于上链至区块链中。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取目标业务单据,并确定所述目标业务单据对应的目标上链格式转换模板;所述目标业务单据包括多个业务字段;所述目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
确定每个所述业务字段各自对应的业务字段类型,并根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段;
根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据;所述目标存证数据用于上链至区块链中。
上述基于区块链的存证数据生成方法、装置、计算机设备、存储介质和计算机程序产品,通过获取目标业务单据,并确定目标业务单据对应的目标上链格式转换模板,进而确定每个业务字段各自对应的业务字段类型,再根据每个业务字段类型和目标上链格式转换模板包括的映射关系,可确定每个业务字段各自对应的映射方式;从而根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,如此,便可根据至少一个存证字段,得到具有标准上链格式的目标存证数据。由于本申请是在确定目标上链格式转换模板之后,基于不同的映射方式,分别对不同业务字段类型的业务字段进行灵活映射,因此,能够准确得到带有标准上链格式的目标存证数据;同时,由于不用再采用对异构业务单据进行重新开发的方法,只采用低代码的方式将目标业务单据进行映射,并将映射得到的目标存证数据上链至区块链中,降低了不同业务单据进行区块链存证的难度。
此外,由于低代码的方式可实现快速复用,针对大批量业务单据需要上链时,本申请能够实现映射过程进行企业级的流程标准化管理,并对业务单据上链过程的规模化管控,进而快速实现业务系统与区块链系统的数据集成。
附图说明
图1为一个实施例中基于区块链的存证数据生成方法的应用环境图;
图2为一个实施例中基于区块链的存证数据生成方法的流程示意图;
图3为一个实施例中映射关系的映射示意图;
图4为一个实施例中子条件的内容示意图;
图5为另一个实施例中映射关系的映射示意图;
图6为一个实施例中执行上链任务的流程示意图;
图7为另一个实施例中执行上链任务的流程示意图;
图8为一个实施例中基于区块链的存证数据生成装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的基于区块链的存证数据生成方法,可以应用于如图1所示的应用环境中。其中,终端102可通过网络与服务器104进行通信。其中,终端102和服务器104均可单独用于执行本申请实施例中提供的基于区块链的存证数据生成方法,也可协同用于执行本申请实施例中提供的基于区块链的存证数据生成方法。以终端102和服务器104协同用于执行基于区块链的存证数据生成方法为例进行说明,终端102用于将目标业务单据发送至服务器104。服务器104用于确定目标业务单据对应的目标上链格式转换模板,并确定每个业务字段各自对应的业务字段类型;根据每个业务字段类型和目标上链格式转换模板包括的映射关系,确定每个业务字段各自对应的映射方式。服务器104还用于根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,并根据至少一个存证字段,得到具有标准上链格式的目标存证数据,并将目标存证数据返回至终端102。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种基于区块链的存证数据生成方法,以该方法应用于计算机设备为例进行说明,该计算机设备可为图1中的终端或服务器,包括以下步骤:
步骤202,获取目标业务单据,并确定目标业务单据对应的目标上链格式转换模板。
其中,目标业务单据包括多个业务字段;目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系。目标上链格式转换模板也可称作一种存证实体,存证实体为一种通过区块链的智能合约实现的、带有标准上链格式的模板,一般包括存证编码和存证字段等,不同的参与方基于存证实体进行数据上链,可以实现对区块链的数据进行共享。
其中,当存证实体进行数据上链后,基于区块链的共识机制、加密算法、数字签名等技术,具有对数据的不可篡改、流程可追溯、权限透明可控等特性。
具体地,目标业务单据来源于通常不同企业的业务系统,数据格式并不相同且不符合区块链中的标准上链格式,在获取得到目标业务单据的情况下,计算机设备获取预先设置的业务关联关系,并根据业务关联关系,确定目标业务单据对应的目标上链格式转换模板。
在一个实施例中,在获取目标业务单据之前还包括:展示业务关联界面;业务关联界面包括多个业务单据和多个上链格式转换模板;响应于针对多个业务单据和多个上链格式转换模板的关联操作,得到业务单据与上链格式转换模板之间的业务关联关系。
具体地,计算机设备可展示一种业务关联界面,业务关联界面中包括业务单据列表和上链格式转换模板列表,响应于用户针对业务单据和上链格式转换模板的选择操作,确定选中的业务单据和上链格式转换模板,并响应于针对选中的业务单据和上链格式转换模板之间的关联操作,得到业务关联关系。
在一个实施例中,当上链格式转换模板不符合用户需求时,计算机设备可响应于用户的新建操作,创建符合用户需求的上链格式转换模板。
在一个实施例中,计算机设备可将业务关联关系按照一种基础资料的形式进行保存,通常基础资料为一种相对稳定的数据,且对基础资料有完善的生命周期管理,可以确保在后续的上链任务或其他业务任务中,能快速地根据业务关联关系对业务单据进行引用。
在一个实施例中,计算机设备还提供一种编码规则模块,编码规则模块可按照用户预先自定义的编码规则,生成与业务关联关系相对应的系统编码,例如,系统编码为“日期+随机码”的形式。此时计算机设备响应于用户的编辑操作,得到系统编码所对应的目标名称,当计算机设备响应于用户针对目标名称的触发操作时,可对目标业务单据和目标上链格式转换模板进行展示。
步骤204,确定每个业务字段各自对应的业务字段类型,并根据每个业务字段类型和映射关系,确定每个业务字段各自对应的映射方式。
其中,业务字段类型包括字符串类型、数值类型、基础资料类型、分录类型、多选类型、附件类型和特殊类型中的至少一种,且不仅限于列出的类型。目标业务单据中的对象对应于基础资料类型的业务字段;目标业务单据中的数组对应于分录类型的业务字段;多选类型表征将多个业务字段同时进行转换后,才能进行上链的类型;若目标业务单据为一种文件,则对应于附件类型的业务字段;特殊类型表征需要通过手动配置业务字段后,才能进行上链的类型。
在一个实施例中,根据每个业务字段类型和映射关系,确定每个业务字段各自对应的映射方式,包括:针对多个业务字段中的每个业务字段,均根据映射关系和当前业务字段的业务字段类型,确定当前业务字段所对应的存证字段类型;根据存证字段类型,确定当前业务字段对应的映射方式。
具体地,映射关系是通过计算机设备预先配置得到的,不同业务字段类型的业务字段通过映射关系,可确定出对应的待生成的存证字段的存证字段类型,进而计算机设备根据存证字段类型,确定出不同业务字段映射成对应待生成的存证字段的映射方式。
进一步地,当业务字段类型为字符串类型、数值类型、基础资料类型和分录类型中的至少一种时,根据映射关系,确定当前业务字段所对应的存证字段类型为普通类型;当业务字段类型为多选类型、附件类型和特殊类型中的至少一种时,根据映射关系,确定当前业务字段所对应的存证字段类型为指定类型。
其中,普通类型包括结构较简单的字符串类型、数值类型和数组类型等。指定类型为用户预先设置的类型,例如字符串类型。
具体地,如图3所示,图3为业务字段类型与存证字段类型之间的映射关系的示意图。当业务字段类型为字符串类型时,计算机设备确定当前业务字段所对应的存证字段类型为字符串类型;当业务字段类型为数值类型时,计算机设备确定当前业务字段所对应的存证字段类型为数值类型;当业务字段类型为基础资料类型时,计算机设备确定当前业务字段所对应的存证字段类型为字符串类型或数值类型;当业务字段类型为分录类型时,计算机设备确定当前业务字段所对应的存证字段类型为数组类型,其中,数组类型包括简单型数组和复合型数组,复合型数组为Object数组,例如JSON中的“对象”。
在一个实施例中,计算机设备根据业务字段的业务字段类型,确定业务字段对应的映射方式。
本实施例中,通过映射关系和业务字段的业务字段类型,可确定出符合区块链技术中便于上链存储的存证字段类型,提高了将不同业务字段类型映射成不同存证字段类型的灵活性,也确保了后续目标存证数据的快速生成,从而简化了对大规模数据进行标准化管理的流程。
步骤206,根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段。
其中,映射方式包括自动转换方式、值转换方式和哈希处理方式。
具体地,若业务字段所对应的存证字段类型为普通类型,且业务字段的业务字段类型包括字符串类型、数值类型、基础资料类型和分录类型中的至少一种时,确定此时的映射方式为自动转换方式。通常自动转换方式为一对一的转换方式,也即将一个业务字段映射成一个存证字段。若业务字段所对应的存证字段类型为指定类型,且业务字段的业务字段类型包括多选类型或附件类型时,确定此时的映射方式为值转换方式。通常值转换方式为多对一的转换方式,也即将多个业务字段映射成一个存证字段。若业务字段所对应的存证字段类型为指定类型,且业务字段的业务字段类型为特殊选类型时,确定此时的映射方式为哈希处理方式。
在一个实施例中,存证数据中包含的存证字段一般可以分为直接存证字段和间接存证字段两大部分,其中,直接存证字段是指由业务系统直接定义的或通用的字段,可以由业务系统上链时直接填入或简单处理后录入,例如订单的类别、数量、金额、业务状态等。间接存证字段是指需要在业务单据与区块链系统进行交互后计算才能得到的字段,比如对上链调用相关的数字身份、以及与数据权限标识相关的字段关联。所以计算机设备需要将业务系统的人员信息、组织信息等,先通过区块链服务转换为代表区块链私钥及证书的数字身份后,才能完成上链或查询的调用,这个过程称作对上链转换模板中的数据权限标识的设置,也即一种“数据所有权”设置。
步骤208,根据至少一个存证字段,得到具有标准上链格式的目标存证数据;目标存证数据用于上链至区块链中。
具体地,计算机设备综合每个存证字段,便可得到目标存证数据,此时的目标存证数据可视作一种具有标准上链格式的存证实体。当得到来源于不同业务系统对应的多个目标存证数据时,计算机设备可对多个目标存证数据进行数据集成。其中,数据集成是指将数据整合在一起,以获得统一且更有价值的视图的过程,数据集成有助于企业做出更快、更好的决策,对于区块链来说,数据集成是一种对目标存证数据进行整合,并进行数据上链前的规模化处理过程。
在一个实施例中,根据至少一个存证字段,得到具有标准上链格式的目标存证数据,包括:综合每个存证字段,得到候选存证数据,并根据数据权限标识,确定与目标业务单据相对应的身份标识;当从预设的数据库中查找到与身份标识相匹配的目标数字身份时,将候选存证数据作为具有标准上链格式的目标存证数据。
其中,目标上链格式转换模板中还包括数据权限标识;数据权限标识包括组织权限标识或人员权限标识;目标业务单据通常携带组织信息或人员信息。
具体地,计算机设备确定数据权限标识为组织权限标识时,确定与目标业务单据相对应的身份标识为目标业务单据携带的组织信息;计算机设备确定数据权限标识为人员权限标识时,确定与目标业务单据相对应的身份标识为目标业务单据携带的人员信息,例如,人员信息为目标业务单据的申请人或审批人。计算机设备根据身份标识从预设的数据库中进行查找,若查找到相匹配的目标数字身份,则说明候选存证数据可作为具有标准上链格式的目标存证数据。
在一个实施例中,计算机设备将目标数字身份与目标存证数据进行关联,并将目标存证数据通过目标数字身份上链至区块链中。
在一个实施例中,计算机设备还包括一种区块链数字身份系统,通过数字身份可以将一个数字身份地址与区块链的证书和私钥关联起来。计算机设备还将多个数字身份存储至预设的数据库中。
在一个实施例中,计算机设备可将区块链相关的开发工具和与业务系统相关的开发工具合理地隔离开来,并对整个上链流程进行更好地管理,使得计算机系统具有快速复用的能力。同时,可将区块链底层的复杂度以及与业务系统本身无关的技术细节封装起来,可以在无需改动现有业务系统的情况下,进行异构业务单据异构系统区块链存证的低代码集成。
上述基于区块链的存证数据生成方法中,通过获取目标业务单据,并确定目标业务单据对应的目标上链格式转换模板,进而确定每个业务字段各自对应的业务字段类型,再根据每个业务字段类型和目标上链格式转换模板包括的映射关系,可确定每个业务字段各自对应的映射方式;从而根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,如此,便可根据至少一个存证字段,得到具有标准上链格式的目标存证数据。由于本申请是在确定目标上链格式转换模板之后,基于不同的映射方式,分别对不同业务字段类型的业务字段进行灵活映射,因此,能够准确得到带有标准上链格式的目标存证数据;同时,由于不用再采用对异构业务单据进行重新开发的方法,只采用低代码的方式将目标业务单据进行映射,并将映射得到的目标存证数据上链至区块链中,降低了不同业务单据进行区块链存证的难度。
在一个实施例中,在确定目标业务单据对应的目标上链格式转换模板之后还包括:确定每个业务字段各自对应的字段值,并确定每个子条件各自对应的目标字段值;根据每个子条件,对每个子条件各自对应的目标字段值进行筛选,得到多个筛选结果;根据每个子条件之间的逻辑关联关系,对多个筛选结果进行关联,得到关联结果;当关联结果表征为真时,将目标业务单据作为筛选通过的目标业务单据。
其中,目标上链格式转换模板包括上链条件;上链条件包括多个子条件;每个子条件之间具有逻辑关联关系;每个子条件和逻辑关联关系均为预先设置。
具体地,计算机设备确定每个业务字段各自对应的字段值,例如,业务字段为单据状态时,对应的字段值为A状态,业务字段为合同金额时,对应的字段值为1000,业务字段为申请人时,对应的字段值为张三。计算机设备对每个子条件进行解析,确定每个子条件各自对应的内容,并确定每个子条件的内容所对应的目标字段值。示例性如图4所示,图4为一种子条件的内容示意图,例如,第一个子条件中的内容包括单据状态,因此将单据状态对应的字段值作为目标字段值。
计算机设备通过每个子条件,分别对每个子条件各自对应的目标字段值进行筛选,得到多个筛选结果。例如,第一个子条件中的内容还包括比较方式为等于、和比较值为C状态,此时的第一个子条件则为单据状态等于C状态。由于单据状态的目标字段值为A状态,则筛选结果为假,表征目标字段值对应的业务字段未筛选通过。又例如,第二个子条件中的内容还包括比较方式为等于、和比较值为1000,此时的第二个子条件则为合同金额等于1000。由于合同金额的目标字段值为1000,则筛选结果为真,表征目标字段值对应的业务字段筛选通过。计算机设备根据每个子条件之间的逻辑关联关系,将多个筛选结果进行关联,得到关联结果,并将关联结果作为目标业务单据返回的布尔值,布尔值包括真和假中的任意一个。当关联结果表征为真时,计算机设备则将目标业务单据作为筛选通过的目标业务单据。
在一个实施例中,目标上链格式转换模板中的上链条件封装在技术模块中,用户在对不同的子条件进行配置后可对其进行灵活调用。
在一个实施例中,根据每个子条件之间的逻辑关联关系,对多个筛选结果进行关联,得到关联结果,包括:确定当前子条件和当前子条件相邻的相邻子条件;根据当前子条件和相邻子条件之间的逻辑关联关系,将当前子条件对应的筛选结果和相邻子条件对应的筛选结果进行关联,得到关联结果;将相邻子条件作为新的当前子条件、将关联结果作为新的当前子条件的筛选结果,并返回至确定当前子条件相邻的相邻子条件的步骤继续进行,直至将所有筛选结果关联完毕。
其中,逻辑关联关系包括逻辑与、逻辑或中的至少一种;筛选结果包括真或假中的任意一种。
具体地,计算机设备可将第一个子条件作为当前子条件,将第二个子条件作为相邻子条件,若当前子条件和相邻子条件之间的逻辑关联关系为逻辑或,则将当前子条件对应的筛选结果和相邻子条件对应的筛选结果进行逻辑关联计算。例如,参考上述举例,将第一个子条件的筛选结果“假”与第二个子条件的筛选结果“真”进行逻辑或运算,得到关联结果为“真”。计算机设备继续将关联结果作为新的当前子条件的筛选结果,并将第三个子条件作为新的相邻子条件,若新的当前子条件和新的相邻子条件之间的逻辑关联关系为逻辑与,则将关联结果为“真”与第三个子条件的筛选结果进行逻辑与运算,直至将所有筛选结果关联完毕。
本实施例中,通过提供不同的子条件来对目标业务单据进行筛选,准确得到筛选结果,并根据每个子条件之间的逻辑关联关系,对多个筛选结果进行关联,如此便可减少因对目标业务单据的错误筛选,从而造成存证数据的错误上链的风险。同时,用户可对子条件进行灵活配置,使得在无需改动现有业务系统的情况下,人仍能对大批量存证数据的上链过程进行规模化管控,也提高了数据上链的效率。
在一个实施例中,根据存证字段类型,确定当前业务字段对应的映射方式,包括:当存证字段类型为普通类型时,确定当前业务字段对应的映射方式为自动转换方式;根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:根据自动转换方式,对当前业务字段进行映射,得到与存证字段类型相对应的当前存证字段。
具体地,由于普通类型通常为结构较简单的字符串类型、数值类型和数组类型等,计算计算设备便可采用方式较简单的自动转换方式,此时所对应的业务字段的业务字段类型通常也较简单。其中,自动转换方式通过用户预先设置的脚本文件进行实现,通过自动转换方式得到的存证字段为一种明文的形式。因此,本实施例中,通过自动转换方式,便可对类型较简单的业务字段进行映射,快速得到与存证字段类型相对应的存证字段,提供了一种可灵活进行字段映射的方式,也提高了后续目标存证数据的生成效率。
在一个实施例中,根据存证字段类型,确定当前业务字段对应的映射方式,包括:当存证字段类型为指定类型时,确定当前业务字段对应的映射方式为值转换方式;根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:根据值转换方式,分别对每个业务字段进行映射,得到至少一个存证字段。
具体地,由于存证字段类型为指定类型时,业务字段类型为多选类型、附件类型和特殊类型中的至少一种,当业务字段类型为多选类型时,计算机设备便可根据值转换方式,对多选类型所对应的多个业务字段进行映射,得到一个存证字段;当业务字段类型为附件类型时,也即不能自动转换类型,计算机设备便可根据值转换方式,对附件类型所对应的业务字段进行映射,得到一个存证字段。示例性的如图5所示,图5为映射关系的映射示意图。
进一步地,根据值转换方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:确定映射方式为值转换方式的多个第一业务字段;当值转换方式为拼接处理时,在每个第一业务字段之间添加分隔符,并将添加了分隔符的多个第一业务字段进行拼接,得到一个存证字段;当值转换方式为序列处理时,按照预设的标准数据格式,将每个第一业务字段进行序列化处理,得到一个存证字段。
其中,值转换方式包括拼接处理和序列处理中的任意一种。通过拼接处理和序列处理得到的存证字段一种明文的形式。
具体地,由于业务字段类型为多选类型时,表征需要将多个业务字段同时进行转换,因此计算机设备需要确定映射方式为值转换方式时,所对应的多个第一业务字段。当值转换方式为拼接处理时,在每个第一业务字段之间添加分隔符后进行拼接,得到一个存证字段,此时的存证字段为一个字符串。当值转换方式为序列处理时,计算机设备按照预设的标准数据格式,例如JSON数据格式,将每个第一业务字段进行序列化处理,得到一个存证字段,此时的存证字段为一个JSON字符串。
在一个实施例中,在对多个第一业务字段进行序列处理,得到一个存证字段之后,计算机设备可通过哈希处理方式来确定存证字段对应的哈希值,并将哈希值作为目标存证字段,并通过采用哈希值进行数据上链,此时可视作一种哈希单向加密处理的过程。例如,用户为了确保系统中合同双方没有发生变更,但又不想以明文的形式进行上链,则可以选择合同甲方和合同乙方两个字段,并映射到一个存证字段中。
本实施例中,在对字段类型较简单的业务字段进行映射的同时,还可通过值动转换方式可对多选类型的业务字段进行映射,实现了多线程的同步处理,也提高了确定存证字段的准确性、以及后续目标存证数据的生成效率。
在一个实施例中,根据存证字段类型,确定当前业务字段对应的映射方式,包括:当存证字段类型为指定类型并带有手动配置标识时,确定当前业务字段对应的映射方式为哈希处理方式;根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:响应于针对多个业务字段的选择操作,确定选中的多个第二业务字段;按照预设的标准数据格式,将每个第二业务字段进行序列化处理,得到一个业务字符串;确定业务字符串对应的哈希值,并将哈希值作为一个存证字段。
具体地,当存证字段类型为指定类型并带有手动配置标识时,表征当前业务字段为一种手动配置类型的字段,此时对应的映射方式为哈希处理方式。当计算机设备响应于用户对多个业务字段的选择操作时,可确定出选中的多个第二业务字段,容易理解的,用户也可仅选择一个业务字段进行哈希处理。通过哈希处理方式对第二业务字段进行映射的具体实施过程,可参考通过哈希处理方式对第一业务字段进行映射的具体实施过程,本申请在此不再赘述。
本实施例中,通过提供一种用户进行手动配置的方式,可实现对存证字段的灵活转换,也便于用户对目标业务单据的灵活管理。
在一个实施例中,如图6所示,图6为执行上链任务的一种流程示意图,实施上链任务还包括以下步骤:
步骤602,当接收到上链任务时,确定上链任务中的上链方式。
其中,上链方式包括定时批量方式和事件触发方式,定时批量方式可为一种异步上链方式,事件触发方式则为一种同步上链方式。
具体地,当计算机设备在关联好得到业务关联关系时,便可接收用户预先设置的上链任务,进而根据上链任务对并对整个数据上链过程进行快速实现和管理。其中,上链任务可视作业务系统中的单据引用了至少一个业务关联关系,当上链任务启动时,就可对将这一批引用的业务关联关系所对应的目标业务单据进行提取或过滤,并将其中满足上链条件的业务单据映射成目标存证数据,直至通过目标数字身份来调用上链存证服务,并对调用过程中的异常进行处理。
步骤604,当上链方式为定时批量方式时,确定在预设的上链时间段内产生的所有目标业务单据。
具体地,如图7所示,图7为执行上链任务的一种流程示意图。计算机设备从业务系统中获取源数据,当上链方式为定时批量方式时,源数据则为预设的上链时间段内新增或修改了的所有目标业务单据。预设的上链时间段可为每天、每小时等。计算机设备根据上链任务,对所有目标业务单据进行数据快照,并将进行了数据快照的所有目标业务单据通过图7中的业务关联模板定义,进行区块链上链。其中,业务关联模板定义也称作目标上链格式转换模板。
步骤606,确定每个目标业务单据各自对应的目标存证数据,并通过调用预设的接口,将每个目标存证数据上链至区块链中。
具体地,参考图7所示,针对每个目标业务单据,计算机设备均根据各自对应的目标上链格式转换模板中的上链条件,对目标业务单据进行筛选,并将筛选得到的目标业务单据进行字段映射,将数据格式进行格式转化,得到各自对应的目标存证数据。计算机设备根据数据权限标识,确定目标业务单据的身份标识,其中,数据权限标识也称作数据所有权。当从预设的数据库中查找到与身份标识相匹配的目标数字身份时,便调用上链服务所预设的接口,将带有目标数字身份的目标存证数据上链至区块链中。
在一个实施例中,参考图7所示,当接口调用成功时,计算机设备在存证日志中记录对应的目标存证数据;若因为网络错误等原因出现接口调用失败,则根据预设的调用次数对接口进行多次调用,并在错误日志中进行记录,以便于进行运维排查等。同时,若多次调用接口均失败,可转换成人工方式来执行重新上链的调用。
在一个实施例中,当上链方式为事件触发方式时,对多种业务事件进行监听;当监听到目标业务事件时,确定目标业务事件所对应的目标业务单据;确定目标业务单据对应的目标存证数据,并通过调用预设的接口,将目标存证数据上链至区块链中。
其中,业务事件包括业务单据审批、业务单据下推和业务单据关闭中的至少一种;通常业务事件需要用户预先进行设定。业务单据下推指一个单据下推生成一个新的单据,例如采购订单生成采购合同、采购合同生成采购应付单等;业务单据关闭一般指关闭单据的业务流程,例如合同执行完成后需要关闭合同。
具体地,计算机系统中还包括一种消息中间件,当用户进行业务执行产生相应的业务事件时,消息中间件会将业务事件进行分发和广播。当计算机设备监听到目标业务事件时,则确定目标业务事件所对应的目标业务单据,并继续对目标业务单据执行上链任务。确定目标业务单据对应的目标存证数据的具体实施操作,可参考步骤606,本实施例不再赘述。容易理解的,与定时批量方式不同,事件触发方式对应的上链任务中通常只有一条目标业务单据。
本实施例中,通过采用目标上链格式转换模板,实现从业务系统的业务单据的过滤到与区块链系统的数据格式自动化匹配与集成的转化过程,并通过上链条件自定义配置、多上链任务线程同步、错误事件异步处理等方法,实现了对存证数据进行高并发、高可靠的任务管理,从而在无需修改业务系统、无需业务开发人员了解区块链底层技术复杂度的情况下,以一种低代码的方式实现业务系统与区块链系统的数据集成。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的基于区块链的存证数据生成方法的基于区块链的存证数据生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个基于区块链的存证数据生成装置实施例中的具体限定可以参见上文中对于基于区块链的存证数据生成方法的限定,在此不再赘述。
在一个实施例中,如图8所示,提供了一种基于区块链的存证数据生成装置800,包括:业务单据获取模块802、映射方式确定模块804和存证数据确定模块806,其中:
业务单据获取模块802,用于获取目标业务单据,并确定目标业务单据对应的目标上链格式转换模板;目标业务单据包括多个业务字段;目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
映射方式确定模块804,用于确定每个业务字段各自对应的业务字段类型,并根据每个业务字段类型和映射关系,确定每个业务字段各自对应的映射方式;
存证数据确定模块806,用于根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段;根据至少一个存证字段,得到具有标准上链格式的目标存证数据;目标存证数据用于上链至区块链中。
在一个实施例中,基于区块链的存证数据生成装置800还包括业务关联模块808,用于展示业务关联界面;业务关联界面包括多个业务单据和多个上链格式转换模板;响应于针对多个业务单据和多个上链格式转换模板的关联操作,得到业务单据与上链格式转换模板之间的业务关联关系;确定目标业务单据对应的目标上链格式转换模板,包括:在获取得到目标业务单据的情况下,根据业务关联关系,确定目标业务单据对应的目标上链格式转换模板。
在一个实施例中,基于区块链的存证数据生成装置800包括上链筛选模块810,用于确定各业务字段各自对应的字段值,并确定各子条件各自对应的目标字段值;根据每个子条件,对每个子条件各自对应的目标字段值进行筛选,得到多个筛选结果;根据各子条件之间的逻辑关联关系,对多个筛选结果进行关联,得到关联结果;当关联结果表征为真时,将目标业务单据作为筛选通过的目标业务单据。
在一个实施例中,上链筛选模块810,还用于确定当前子条件和当前子条件相邻的相邻子条件;根据当前子条件和相邻子条件之间的逻辑关联关系,将当前子条件对应的筛选结果和相邻子条件对应的筛选结果进行关联,得到关联结果;将相邻子条件作为新的当前子条件、将关联结果作为新的当前子条件的筛选结果,并返回至确定当前子条件相邻的相邻子条件的步骤继续进行,直至将所有筛选结果关联完毕。
在一个实施例中,映射方式确定模块804,用于针对每个业务字段,均根据映射关系和当前业务字段的业务字段类型,确定当前业务字段所对应的存证字段类型;根据存证字段类型,确定当前业务字段对应的映射方式。
在一个实施例中,映射方式确定模块804包括字段类型确定模块8041,用于当业务字段类型为字符串类型、数值类型、基础资料类型和分录类型中的至少一种时,根据映射关系,确定当前业务字段所对应的存证字段类型为普通类型;当业务字段类型为多选类型、附件类型和特殊类型中的至少一种时,根据映射关系,确定当前业务字段所对应的存证字段类型为指定类型。
在一个实施例中,映射方式确定模块804还包括自动转换模块8042,用于当存证字段类型为普通类型时,确定当前业务字段对应的映射方式为自动转换方式;根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:根据自动转换方式,对当前业务字段进行映射,得到与存证字段类型相对应的当前存证字段。
在一个实施例中,映射方式确定模块804还包括值转换模块8043,用于当存证字段类型为指定类型时,确定当前业务字段对应的映射方式为值转换方式;根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:根据值转换方式,分别对每个业务字段进行映射,得到至少一个存证字段。
在一个实施例中,值转换模块8043,还用于确定映射方式为值转换方式的多个第一业务字段;当值转换方式为拼接处理时,在每个第一业务字段之间添加分隔符,并将添加了分隔符的每个第一业务字段进行拼接,得到一个存证字段;当值转换方式为序列处理时,按照预设的标准数据格式,将每个第一业务字段进行序列化处理,得到一个存证字段。
在一个实施例中,映射方式确定模块804还包括哈希处理模块8044,用于当存证字段类型为指定类型并带有手动配置标识时,确定当前业务字段对应的映射方式为哈希处理方式;根据每个业务字段各自对应的映射方式,分别对每个业务字段进行映射,得到至少一个存证字段,包括:响应于针对多个业务字段的选择操作,确定选中的多个第二业务字段;按照预设的标准数据格式,将每个第二业务字段进行序列化处理,得到一个业务字符串;确定业务字符串对应的哈希值,并将哈希值作为一个存证字段。
在一个实施例中,存证数据确定模块806,还用于综合每个存证字段,得到候选存证数据,并根据数据权限标识,确定与目标业务单据相对应的身份标识;当从预设的数据库中查找到与身份标识相匹配的目标数字身份时,将候选存证数据作为具有标准上链格式的存证数据;上述方法还包括:将目标数字身份与目标存证数据进行关联,并将目标存证数据通过目标数字身份上链至区块链中。
在一个实施例中,基于区块链的存证数据生成装置800还包括任务确定模块812,用于当接收到上链任务时,确定上链任务中的上链方式;当上链方式为定时批量方式时,确定在预设的上链时间段内产生的所有目标业务单据;确定每个目标业务单据各自对应的目标存证数据,并通过调用预设的接口,将每个目标存证数据上链至区块链中。
在一个实施例中,任务确定模块812,还用于当上链方式为事件触发方式时,对多种业务事件进行监听;业务事件包括业务单据审批、业务单据下推和业务单据关闭中的至少一种;当监听到目标业务事件时,确定目标业务事件所对应的目标业务单据;确定目标业务单据对应的目标存证数据,并通过调用预设的接口,将目标存证数据上链至区块链中。
上述基于区块链的存证数据生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种基于区块链的存证数据生成方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图9示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(FerroelectricRandom Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(StaticRandom Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (16)
1.一种基于区块链的存证数据生成方法,其特征在于,所述方法包括:
获取目标业务单据,并确定所述目标业务单据对应的目标上链格式转换模板;所述目标业务单据包括多个业务字段;所述目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
确定每个所述业务字段各自对应的业务字段类型,并根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段;
根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据;所述目标存证数据用于上链至区块链中。
2.根据权利要求1所述的方法,其特征在于,在所述获取目标业务单据之前,所述方法还包括:
展示业务关联界面;所述业务关联界面包括多个业务单据和多个上链格式转换模板;
响应于针对多个业务单据和多个上链格式转换模板的关联操作,得到所述业务单据与所述上链格式转换模板之间的业务关联关系;
所述确定所述目标业务单据对应的目标上链格式转换模板,包括:
在获取得到所述目标业务单据的情况下,根据所述业务关联关系,确定所述目标业务单据对应的目标上链格式转换模板。
3.根据权利要求1所述的方法,其特征在于,所述目标上链格式转换模板包括上链条件;所述上链条件包括多个子条件;每个所述子条件之间具有逻辑关联关系;在所述确定所述目标业务单据对应的目标上链格式转换模板之后,所述方法还包括:
确定每个所述业务字段各自对应的字段值,并确定每个所述子条件各自对应的目标字段值;
根据每个所述子条件,对每个所述子条件各自对应的目标字段值进行筛选,得到多个筛选结果;
根据每个所述子条件之间的逻辑关联关系,对多个筛选结果进行关联,得到关联结果;
当所述关联结果表征为真时,将所述目标业务单据作为筛选通过的目标业务单据。
4.根据权利要求3所述的方法,其特征在于,所述逻辑关联关系包括逻辑与、逻辑或中的至少一种;所述筛选结果包括真或假中的任意一种;所述根据每个所述子条件之间的逻辑关联关系,对多个筛选结果进行关联,得到关联结果,包括:
确定当前子条件和所述当前子条件相邻的相邻子条件;
根据所述当前子条件和所述相邻子条件之间的逻辑关联关系,将所述当前子条件对应的筛选结果和所述相邻子条件对应的筛选结果进行关联,得到关联结果;
将所述相邻子条件作为新的当前子条件、将所述关联结果作为新的当前子条件的筛选结果,并返回至确定所述当前子条件相邻的相邻子条件的步骤继续进行,直至将所有筛选结果关联完毕。
5.根据权利要求1所述的方法,其特征在于,所述根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式,包括:
针对多个业务字段中的每个业务字段,均根据所述映射关系和当前业务字段的业务字段类型,确定所述当前业务字段所对应的存证字段类型;
根据所述存证字段类型,确定所述当前业务字段对应的映射方式。
6.根据权利要求5所述的方法,其特征在于,所述根据所述映射关系和当前业务字段的业务字段类型,确定所述当前业务字段所对应的存证字段类型,包括:
当所述业务字段类型为字符串类型、数值类型、基础资料类型和分录类型中的至少一种时,根据所述映射关系,确定所述当前业务字段所对应的存证字段类型为普通类型;
当所述业务字段类型为多选类型、附件字段和特殊类型中的至少一种时,根据所述映射关系,确定所述当前业务字段所对应的存证字段类型为指定类型。
7.根据权利要求5所述的方法,其特征在于,所述根据所述存证字段类型,确定所述当前业务字段对应的映射方式,包括:
当所述存证字段类型为普通类型时,确定所述当前业务字段对应的映射方式为自动转换方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段,包括:
根据所述自动转换方式,对所述当前业务字段进行映射,得到与所述存证字段类型相对应的当前存证字段。
8.根据权利要求5所述的方法,其特征在于,所述根据所述存证字段类型,确定所述当前业务字段对应的映射方式,包括:
当所述存证字段类型为指定类型时,确定所述当前业务字段对应的映射方式为值转换方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段,包括:
根据所述值转换方式,分别对每个所述业务字段进行映射,得到至少一个存证字段。
9.根据权利要求8所述的方法,其特征在于,所述值转换方式包括拼接处理和序列处理中的任意一种;所述根据所述值转换方式,分别对每个所述业务字段进行映射,得到至少一个存证字段,包括:
确定所述映射方式为所述值转换方式的多个第一业务字段;
当所述值转换方式为拼接处理时,在每个所述第一业务字段之间添加分隔符,并将添加了所述分隔符的第一业务字段进行拼接,得到一个存证字段;
当所述值转换方式为序列处理时,按照预设的标准数据格式,将每个所述第一业务字段进行序列化处理,得到一个存证字段。
10.根据权利要求5所述的方法,其特征在于,所述根据所述存证字段类型,确定所述当前业务字段对应的映射方式,包括:
当所述存证字段类型为指定类型并带有手动配置标识时,确定所述当前业务字段对应的映射方式为哈希处理方式;
根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段,包括:
响应于针对所述多个业务字段的选择操作,确定选中的多个第二业务字段;
按照预设的标准数据格式,将每个所述第二业务字段进行序列化处理,得到一个业务字符串;
确定所述业务字符串对应的哈希值,并将所述哈希值作为一个存证字段。
11.根据权利要求1所述的方法,其特征在于,所述目标上链格式转换模板包括数据权限标识;所述根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据,包括:
综合每个所述存证字段,得到候选存证数据,并根据所述数据权限标识,确定与所述目标业务单据相对应的身份标识;
当从预设的数据库中查找到与所述身份标识相匹配的目标数字身份时,将所述候选存证数据作为具有标准上链格式的存证数据;
所述方法还包括:
将所述目标数字身份与所述目标存证数据进行关联,并将所述目标存证数据通过所述目标数字身份上链至所述区块链中。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到上链任务时,确定所述上链任务中的上链方式;
当所述上链方式为定时批量方式时,确定在预设的上链时间段内产生的所有目标业务单据;
确定每个所述目标业务单据各自对应的目标存证数据,并通过调用预设的接口,将每个所述目标存证数据上链至所述区块链中。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
当所述上链方式为事件触发方式时,对多种业务事件进行监听;所述业务事件包括业务单据审批、业务单据下推和业务单据关闭中的至少一种;
当监听到目标业务事件时,确定所述目标业务事件所对应的目标业务单据;
确定所述目标业务单据对应的目标存证数据,并通过调用预设的接口,将所述目标存证数据上链至所述区块链中。
14.一种基于区块链的存证数据生成装置,其特征在于,所述装置包括:
业务单据获取模块,用于获取目标业务单据,并确定所述目标业务单据对应的目标上链格式转换模板;所述目标业务单据包括多个业务字段;所述目标上链格式转换模板包括业务字段类型与存证字段类型之间的映射关系;
映射方式确定模块,用于确定每个所述业务字段各自对应的业务字段类型,并根据每个所述业务字段类型和所述映射关系,确定每个所述业务字段各自对应的映射方式;
存证数据确定模块,用于根据每个所述业务字段各自对应的映射方式,分别对每个所述业务字段进行映射,得到至少一个存证字段;根据所述至少一个存证字段,得到具有标准上链格式的目标存证数据;所述目标存证数据用于上链至区块链中。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至13中任一项所述的方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211155898.0A CN115510154A (zh) | 2022-09-22 | 2022-09-22 | 基于区块链的存证数据生成方法、装置和计算机设备 |
PCT/CN2022/133090 WO2024060390A1 (zh) | 2022-09-22 | 2022-11-21 | 基于区块链的存证数据生成方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211155898.0A CN115510154A (zh) | 2022-09-22 | 2022-09-22 | 基于区块链的存证数据生成方法、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115510154A true CN115510154A (zh) | 2022-12-23 |
Family
ID=84505721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211155898.0A Pending CN115510154A (zh) | 2022-09-22 | 2022-09-22 | 基于区块链的存证数据生成方法、装置和计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115510154A (zh) |
WO (1) | WO2024060390A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427774B (zh) * | 2019-07-18 | 2021-01-12 | 创新先进技术有限公司 | 基于区块链的数据存证方法、数据校验方法及相关装置 |
CN111552676A (zh) * | 2020-04-26 | 2020-08-18 | 北京众享比特科技有限公司 | 基于区块链的存证方法、装置、设备及介质 |
CN113810359B (zh) * | 2021-03-08 | 2023-06-23 | 京东科技信息技术有限公司 | 存证方法、装置及其设备 |
CN113591162B (zh) * | 2021-09-29 | 2022-02-15 | 金蝶软件(中国)有限公司 | 区块链存证方法、装置和计算机设备 |
CN114741452A (zh) * | 2022-04-22 | 2022-07-12 | 美的网络信息服务(深圳)有限公司 | 数据存证方法、装置、电子设备和存储介质 |
-
2022
- 2022-09-22 CN CN202211155898.0A patent/CN115510154A/zh active Pending
- 2022-11-21 WO PCT/CN2022/133090 patent/WO2024060390A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024060390A1 (zh) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230062655A1 (en) | Systems and methods for data storage and processing | |
US9461972B1 (en) | Intelligently designed user interface based on user behavior | |
CN106067080B (zh) | 提供可配置工作流能力 | |
US20160242024A1 (en) | Purposed device management platform | |
US20140129457A1 (en) | An interactive organizational decision-making and compliance facilitation portal | |
US20140280913A1 (en) | Device and settings management platform | |
CN112667748B (zh) | 面向审计业务的区块链一体机、数据处理方法和装置 | |
CN102810057A (zh) | 一种记录日志的方法 | |
US20220245125A1 (en) | Dataset multiplexer for data processing system | |
CN111858611A (zh) | 数据访问方法、装置、计算机设备及存储介质 | |
US20230145461A1 (en) | Receiving and integrating external data into a graphical user interface of an issue tracking system | |
CN114265577A (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
CN114268638A (zh) | 区块链平台通道管理方法、装置、计算机设备和存储介质 | |
US20140156339A1 (en) | Operational risk and control analysis of an organization | |
CN115510154A (zh) | 基于区块链的存证数据生成方法、装置和计算机设备 | |
CN115994771A (zh) | 面向大宗商品交易存证数据的实时采集与溯源方法及系统 | |
CN115756255A (zh) | 停车场设备的设备参数处理方法、装置、设备和存储介质 | |
CN117632395A (zh) | 工作流处理方法、装置、设备、存储介质和程序产品 | |
US20190140887A1 (en) | System for decomposing clustering events from managed infrastructures | |
US11922239B1 (en) | System and method for abstraction of application programming interface creation without code | |
CN116797189A (zh) | 信息处理方法、装置、计算机设备和存储介质 | |
Suresh et al. | Big data challenges for e-governess system in distributing systems | |
CN117271449A (zh) | 批处理文件生成方法、装置、设备、存储介质和程序产品 | |
CN116909684A (zh) | 低代码应用的部署方法、装置、计算机设备和存储介质 | |
CN114697121A (zh) | 电力监控系统的数据处理方法、装置、计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |