CN113688418B - 基于区块链数据存储的工程订单结算方法及*** - Google Patents
基于区块链数据存储的工程订单结算方法及*** Download PDFInfo
- Publication number
- CN113688418B CN113688418B CN202110770769.1A CN202110770769A CN113688418B CN 113688418 B CN113688418 B CN 113688418B CN 202110770769 A CN202110770769 A CN 202110770769A CN 113688418 B CN113688418 B CN 113688418B
- Authority
- CN
- China
- Prior art keywords
- engineering
- data
- order
- settlement
- blockchain
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000013500 data storage Methods 0.000 title claims abstract description 24
- 239000011159 matrix material Substances 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 5
- 239000004744 fabric Substances 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 11
- 230000007547 defect Effects 0.000 abstract description 8
- 230000008569 process Effects 0.000 description 23
- 230000010354 integration Effects 0.000 description 10
- 238000007726 management method Methods 0.000 description 10
- 230000003993 interaction Effects 0.000 description 7
- 230000009467 reduction Effects 0.000 description 6
- 238000010276 construction Methods 0.000 description 4
- 238000012550 audit Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P80/00—Climate change mitigation technologies for sector-wide applications
- Y02P80/10—Efficient use of energy, e.g. using compressed air or pressurized fluid as energy carrier
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Health & Medical Sciences (AREA)
- Finance (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- General Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Technology Law (AREA)
- Databases & Information Systems (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Tourism & Hospitality (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出了一种基于区块链数据存储的工程订单结算方法及***,包括:提取工程订单中的结构化数据和非结构化数据,为工程订单生成区块链节点;提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中;根据结构化数据提取出工程订单涉及到的订单对象和订单类型,生成智能合约,基于内容存证方式将智能合约与结构化数据共同存储到区块链节点中;当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算。本发明利用区块链技术去中心化、无法篡改的特点,解决了不同电力公司结算记录随以篡改的弊端,降低了结算风险,采用不同的数据处理及上链方式,节省了非结构化数据在区块链上的存储空间。
Description
技术领域
本发明属于电力交易管理领域,尤其涉及一种基于区块链数据存储的工程订单结算方法及***。
背景技术
传统的电力公司在工程实施过程中常常涉及到大量工程订单,并需要通过层层审核部门对这些工程订单的纸质单据进行审核完成结算,因此经常由于不同电力公司、不同工作部门的工程管理流程的差异影响工程订单的结算效率,也无法避免信息不共享、不透明,导致难以对工程订单进行溯源,难以及时发现交易异常的弊端。
区块链是一个去中心化的数据库,工程订单管理全过程的数据的上链存储通常只需要将数据上链即可解决上述弊端。但是区块链上的存储空间是极其宝贵和有限的,并且电力公司的工程订单涉及到海量的非结构化数据,目前的区块链节点还足以支持高容量数据流,直接上链存储会对区块链节点造成巨大的运算负担,导致无法满足工程订单结算的需求。
发明内容
为了解决现有技术中存在的缺点和不足,本发明提出了一种基于区块链数据存储的工程订单结算方法,包括:
通过ERP***获取工程订单,提取工程订单中的结构化数据和非结构化数据,为工程订单生成区块链节点;
提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中;
根据结构化数据提取出工程订单涉及到的订单对象和订单类型,基于订单对象与订单类型对应的结算规则生成智能合约,基于内容存证方式将智能合约与结构化数据共同存储到区块链节点中;
当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***。
可选的,所述提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中,包括:
当非结构化数据的类型为图片时,将图片进行灰度处理,将由灰度处理后图片中每个像素点的灰度值组成的矩阵作为非结构化数据的特征数据;
计算特征数据的哈希值,将图片在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
可选的,所述提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中,包括:
当非结构化数据的类型为工程文档时,查询ERP***中是否有预先存储的工程文档对应的通用模板,若有通用模板,筛除文档与通用模板重合的部分,将筛除后的文档作为非结构化数据的特征数据;
计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
可选的,所述提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中,包括:
当非结构化数据的类型为工程文档时,查询ERP***中是否有预先存储的工程文档对应的通用模板,若没有通用模板,通过将工程文档与ERP***中预先存储的关键词列表进行比对,提取出工程文档中的关键词作为特征数据;
计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
可选的,所述当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***,包括:
当接收到工程订单结算请求时,判断工程订单结算请求的发送发是否与订单对象一致,若不一致则拒绝工程订单结算请求;
若一致,基于智能合约对工程订单进行结算,根据工程订单的结算结果和智能合约执行完成时间,生成新的区块链节点;
将新的区块链节点上的内容同步至ERP***。
可选的,所述区块链节点通过ERP网关接收待存储的结构化数据和非结构化数据。
可选的,所述区块链节点基于Hyperledger Fabric框架搭建。
本发明还基于同样的思路提出了一种基于区块链数据存储的工程订单结算***,包括:
数据获取单元:用于通过ERP***获取工程订单,提取工程订单中的结构化数据和非结构化数据,为工程订单生成区块链节点;
第一处理单元:用于提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中;
第二处理单元:用于根据结构化数据提取出工程订单涉及到的订单对象和订单类型,基于订单对象与订单类型对应的结算规则生成智能合约,基于内容存证方式将智能合约与结构化数据共同存储到区块链节点中;
执行单元:用于当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***。
本发明提供的技术方案带来的有益效果是:
将区块链应用到电力公司的工程订单结算流程中,实现各个电力公司的链上结算,减少了传统结算过程中涉及的大量纸质单据、线下交互和人工操作,提高了电力公司结算管理的效率,同时利用区块链技术去中心化、无法篡改的特点,解决了不同电力公司结算记录随以篡改的弊端,降低了结算风险。
此外,本发明提出的工程订单结算方法能够针对工程订单处理过程中涉及到的不同数据结构类型的特性,采用不同的数据处理及上链方式,从而筛除了冗余数据,节省了非结构化数据在区块链上的存储空间。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提出的基于区块链数据存储的工程订单结算方法的流程示意图;
图2为本发明一实施例提出的工程订单结算一体化平台的架构框图;
图3为本发明另一实施例提出的基于区块链数据存储的工程订单结算***的结构框图。
具体实施方式
为使本发明的结构和优点更加清楚,下面将结合附图对本发明的结构作进一步地描述。
实施例一
如图1所述,本实施例提出了一种基于区块链数据存储的工程订单结算方法,包括:
S1:通过ERP***获取工程订单,提取工程订单中的结构化数据和非结构化数据,为工程订单生成区块链节点;
S2:提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中;
S3:根据结构化数据提取出工程订单涉及到的订单对象和订单类型,基于订单对象与订单类型对应的结算规则生成智能合约,基于内容存证方式将智能合约与结构化数据共同存储到区块链节点中;
S4:当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***。
针对电力交易过程中的繁琐过程以及篡改风险,引入区块链技术实现去中心化交易。区块链技术脱胎于比特币,其“去中心化、去信任、无法篡改、透明开放、可追溯”的特点,如今逐渐应用于各行各业的价值交易和数据共享的应用场景中。将区块链应用到电力交易中,实现各个电力公司的链上交易,减少了传统电力交易结算过程中涉及的大量纸质单据、线下交互和人工操作,提高了电力公司交易管理的效率,同时利用区块链技术去中心化、无法篡改的特点,解决了不同电力公司结算记录随以篡改的弊端,降低了结算风险。并且本实施例能够针对工程订单处理过程中涉及到的不同数据结构类型的特性,采用不同的数据处理及上链方式,从而筛除了冗余数据,节省了非结构化数据在区块链上的存储空间。
本实施例所提出的电力交易订单处理方法基于图2所示的工程订单结算一体化平台实现,所述工程订单结算一体化平台包括内网服务器以及区块链平台两部分,内网服务器和所述区块链平台之间设置有防火墙,起到内外网隔离的作用。ERP***和电子签章***均部署在参与交易的电力公司的内网服务器中,ERP***和电子签章***之间通过服务总线实现业务信息的交互。本实施例所提出的工程订单结算方法基于上述工程订单结算一体化平台实现,工程订单经过电子签章***的CA认证后上传至ERP***,在内网服务器中完成结构化数据和非结构化数据的处理以及上链准备,并通过ERP网关将待上链的内容上传至区块链平台中的区块链节点上,至此完成工程订单涉及的各类数据的存储。同时,内网服务器中还部署有电力公司财务数据库,将完成工程订单结算后的财务数据存储到电力公司的财务数据库中,所述财务数据库部署在云服务端的RDS数据库,所述财务数据库和ERP***与云服务端之间的中间件基于Tomcat8.x搭建财务数据库还存储有电力公司与其他外部公司的工程合同、售电合同等文件,在编写智能合约时,区块链平台将访问财务数据库中存储的与具体交易相关的合同文件,根据访问得到的数据生成智能合约。
在本实施例中,内网服务器通过负载均衡设置虚拟IP,根据业务的实际增长情况实现应用服务器的横向扩展,把位于同一数据中心的多台云服务器资源虚拟成一个高性能、高可用的应用服务池,再根据应用特性,将来自客户端的网络请求分发到云服务器池中,提高了内网服务器的可扩展性,提高了业务容量。
在本实施例中,内网服务器的应用包括接口层服务、数据存储服务以及业务流程服务,其中,接口层服务OCR***自动识别集成接口、CA签章集成接口、文件服务器集成接口以及ERP***集成接口,数据存储服务包括基于MySql DB的合同文件存储和财务数据存储,业务流程服务包括订单创建服务、用户权限管理、单据报审管理以及订单token追踪,上述应用开发采用Java+SpringBoot+Mybatis的框架,前端使用Jquery和Ajax技术。
区块链平台通过ERP网关与ERP***进行信息交互,ERP网关能够提供XML转换服务作为与ERP***的接口服务,实现外部***与区块链平台的数据接入与输出。本实施例中,区块链平台基于IBM和DAH主导开发的开源区块链框架Hyperledger Fabric框架将区块链节点搭建为电网交易的私链。
在本实施例中,所述结构化数据包括工程订单涉及到的订单对象、订单类型、订单金额、财务凭证编码等具有预先定义结构的数据,这类数据通过具有统一的数据结构,因此上链后占用的区块链资源相对固定,因此本实施例中采用内容存证方式进行上链。同理,智能合约作为一种以信息化方式传播、验证或执行合同的计算机协议,通常功能不会很强大,而且采用规定的编程语言编译后的代码量都很小,占用的区块链资源同样比较少。因此,本实施例中结构化数据和智能合约均采用内容存证方式上链。所谓内容存证,就是指把要存储的内容直接放入到区块链之中。因为区块链上的公开透明性,所以上述内容直接上链就代表着这些内容都是公开的。
在实际的工程订单中,还存在大量的非结构化数据,本实施例中所述非结构化数据包括工程订单设计到的各类图片,如工程施工图纸、电力设备样机图片等,还包括工程实施过程中需要的各类工程文档,如施工标准文档、电力设备开发说明书等。非结构化数据由于数据结构不规则,数据容量也可大可小,因此上链后占用的区块链资源不固定,如果同样采用内容存证的方式上链有可能耗费大量区块链资源。因此,本实施例针对不同类型的非结构化数据进行不同的降维处理后再上链,具体包括:
当非结构化数据的类型为图片时,将图片进行灰度处理,将由灰度处理后图片中每个像素点的灰度值组成的矩阵作为非结构化数据的特征数据;
计算特征数据的哈希值,将图片在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
再将图片转化为灰度值组成的矩阵的过程中,在一定程度中实现了图片数据的降维处理,降低了数据量。同时,将矩阵对应的哈希值存储到区块链节点中,进一步压缩数据占用的区块链容量的同时,也能根据哈希值验证区块链节点上存储的内容是否被非法篡改。
当非结构化数据的类型为工程文档时,查询ERP***中是否有预先存储的工程文档对应的通用模板,若有通用模板,筛除文档与通用模板重合的部分,将筛除后的文档作为非结构化数据的特征数据;计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中;
若没有通用模板,通过将工程文档与ERP***中预先存储的关键词列表进行比对,提取出工程文档中的关键词作为特征数据;计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
通过上述处理能够去除工程文档中的冗余数据,在一定程度中实现了工程文档数据的降维处理,降低了数据量。与非结构化数据的类型为图片时同理,将特征数据对应的哈希值存储到区块链节点中,进一步压缩数据占用的区块链容量的同时,也能根据哈希值验证区块链节点上存储的内容是否被非法篡改。
除此之外,本实施例中非结构化数据采用链接存证方式上链,链接存证相当于哈希存证基础上有添加了文件的存储地址,这样区块链上就存储了文件地址与文件数字指纹两个内容。这两个内容可以互相印证,使链上内容还包括了非结构化数据在ERP***中的原始存储地址,便于获取原始数据。对大容量非结构化数据,通过链接存证方式保存上链,即可以保障数据的完整性与不可篡改,又避免了大容量数据上链造成的***拥堵与存储浪费。
在本实施例中,根据订单对象访问相应的内网服务器,通过文件服务器集成接口基于订单类型获取与订单对象签订的合同文件,基于合同文件中的规定的结算规则生成智能合约,所述智能合约由开发人员采用Solidity等编程语言进行编写。
智能合约是规则公开透明、合约内的规则以及数据对外部可见的计算机协议程序,不会存在任何虚假或者隐藏的交易,因此赋予了区块链技术不可篡改的特性。基于智能合约对工程订单进行结算处理,解决了不同电力公司结算记录随以篡改的弊端。
为了进一步提高工程订单处理过程的安全性,本实施例当接收到工程订单结算请求时,判断工程订单结算请求的发送发是否与订单对象一致,若不一致则拒绝工程订单结算请求;若一致,基于智能合约对工程订单进行结算,根据工程订单的结算结果和智能合约执行完成时间,生成新的区块链节点;将新的区块链节点上的内容同步至ERP***。所述新的区块链节点上包含由上述工程订单结算结果,如报销金额、账面剩余金额等,同时新的区块链节点还带有基于智能合约执行完成时间生成的事件戳。此后,当获取到下一个工程订单时,在这个新的区块链节点上重复上述工程订单结算方法,从而实现工程订单数量过程的有效溯源。
实施例二
如图3所述,本实施例提出了一种基于区块链数据存储的工程订单结算***5,包括:
数据获取单元51:用于通过ERP***获取工程订单,提取工程订单中的结构化数据和非结构化数据,为工程订单生成区块链节点;
第一处理单元52:用于提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中;
第二处理单元53:用于根据结构化数据提取出工程订单涉及到的订单对象和订单类型,基于订单对象与订单类型对应的结算规则生成智能合约,基于内容存证方式将智能合约与结构化数据共同存储到区块链节点中;
执行单元54:用于当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***。
针对电力交易过程中的繁琐过程以及篡改风险,引入区块链技术实现去中心化交易。区块链技术脱胎于比特币,其“去中心化、去信任、无法篡改、透明开放、可追溯”的特点,如今逐渐应用于各行各业的价值交易和数据共享的应用场景中。将区块链应用到电力交易中,实现各个电力公司的链上交易,减少了传统电力交易结算过程中涉及的大量纸质单据、线下交互和人工操作,提高了电力公司交易管理的效率,同时利用区块链技术去中心化、无法篡改的特点,解决了不同电力公司结算记录随以篡改的弊端,降低了结算风险。并且本实施例能够针对工程订单处理过程中涉及到的不同数据结构类型的特性,采用不同的数据处理及上链方式,从而筛除了冗余数据,节省了非结构化数据在区块链上的存储空间。
本实施例所提出的电力交易订单处理方法基于图2所示的工程订单结算一体化平台实现,所述工程订单结算一体化平台包括内网服务器以及区块链平台两部分,内网服务器和所述区块链平台之间设置有防火墙,起到内外网隔离的作用。ERP***和电子签章***均部署在参与交易的电力公司的内网服务器中,ERP***和电子签章***之间通过服务总线实现业务信息的交互。本实施例所提出的工程订单结算方法基于上述工程订单结算一体化平台实现,工程订单经过电子签章***的CA认证后上传至ERP***,在内网服务器中完成结构化数据和非结构化数据的处理以及上链准备,并通过ERP网关将待上链的内容上传至区块链平台中的区块链节点上,至此完成工程订单涉及的各类数据的存储。同时,内网服务器中还部署有电力公司财务数据库,将完成工程订单结算后的财务数据存储到电力公司的财务数据库中,所述财务数据库部署在云服务端的RDS数据库,所述财务数据库和ERP***与云服务端之间的中间件基于Tomcat8.x搭建财务数据库还存储有电力公司与其他外部公司的工程合同、售电合同等文件,在编写智能合约时,区块链平台将访问财务数据库中存储的与具体交易相关的合同文件,根据访问得到的数据生成智能合约。
在本实施例中,内网服务器通过负载均衡设置虚拟IP,根据业务的实际增长情况实现应用服务器的横向扩展,把位于同一数据中心的多台云服务器资源虚拟成一个高性能、高可用的应用服务池,再根据应用特性,将来自客户端的网络请求分发到云服务器池中,提高了内网服务器的可扩展性,提高了业务容量。
在本实施例中,内网服务器的应用包括接口层服务、数据存储服务以及业务流程服务,其中,接口层服务OCR***自动识别集成接口、CA签章集成接口、文件服务器集成接口以及ERP***集成接口,数据存储服务包括基于MySql DB的合同文件存储和财务数据存储,业务流程服务包括订单创建服务、用户权限管理、单据报审管理以及订单token追踪,上述应用开发采用Java+SpringBoot+Mybatis的框架,前端使用Jquery和Ajax技术。
区块链平台通过ERP网关与ERP***进行信息交互,ERP网关能够提供XML转换服务作为与ERP***的接口服务,实现外部***与区块链平台的数据接入与输出。本实施例中,区块链平台基于IBM和DAH主导开发的开源区块链框架Hyperledger Fabric框架将区块链节点搭建为电网交易的私链。
在本实施例中,所述结构化数据包括工程订单涉及到的订单对象、订单类型、订单金额、财务凭证编码等具有预先定义结构的数据,这类数据通过具有统一的数据结构,因此上链后占用的区块链资源相对固定,因此本实施例中第一处理单元52采用内容存证方式进行上链。同理,智能合约作为一种以信息化方式传播、验证或执行合同的计算机协议,通常功能不会很强大,而且采用规定的编程语言编译后的代码量都很小,占用的区块链资源同样比较少。因此,本实施例中结构化数据和智能合约均采用内容存证方式上链。所谓内容存证,就是指把要存储的内容直接放入到区块链之中。因为区块链上的公开透明性,所以上述内容直接上链就代表着这些内容都是公开的。
在实际的工程订单中,还存在大量的非结构化数据,本实施例中所述非结构化数据包括工程订单设计到的各类图片,如工程施工图纸、电力设备样机图片等,还包括工程实施过程中需要的各类工程文档,如施工标准文档、电力设备开发说明书等。非结构化数据由于数据结构不规则,数据容量也可大可小,因此上链后占用的区块链资源不固定,如果同样采用内容存证的方式上链有可能耗费大量区块链资源。因此,本实施例第二处理单元53针对不同类型的非结构化数据进行不同的降维处理后再上链,具体用于:
当非结构化数据的类型为图片时,将图片进行灰度处理,将由灰度处理后图片中每个像素点的灰度值组成的矩阵作为非结构化数据的特征数据;
计算特征数据的哈希值,将图片在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
再将图片转化为灰度值组成的矩阵的过程中,在一定程度中实现了图片数据的降维处理,降低了数据量。同时,将矩阵对应的哈希值存储到区块链节点中,进一步压缩数据占用的区块链容量的同时,也能根据哈希值验证区块链节点上存储的内容是否被非法篡改。
当非结构化数据的类型为工程文档时,查询ERP***中是否有预先存储的工程文档对应的通用模板,若有通用模板,筛除文档与通用模板重合的部分,将筛除后的文档作为非结构化数据的特征数据;计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中;
若没有通用模板,通过将工程文档与ERP***中预先存储的关键词列表进行比对,提取出工程文档中的关键词作为特征数据;计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
通过上述处理能够去除工程文档中的冗余数据,在一定程度中实现了工程文档数据的降维处理,降低了数据量。与非结构化数据的类型为图片时同理,将特征数据对应的哈希值存储到区块链节点中,进一步压缩数据占用的区块链容量的同时,也能根据哈希值验证区块链节点上存储的内容是否被非法篡改。
除此之外,本实施例中非结构化数据采用链接存证方式上链,链接存证相当于哈希存证基础上有添加了文件的存储地址,这样区块链上就存储了文件地址与文件数字指纹两个内容。这两个内容可以互相印证,使链上内容还包括了非结构化数据在ERP***中的原始存储地址,便于获取原始数据。对大容量非结构化数据,通过链接存证方式保存上链,即可以保障数据的完整性与不可篡改,又避免了大容量数据上链造成的***拥堵与存储浪费。
在本实施例中,根据订单对象访问相应的内网服务器,通过文件服务器集成接口基于订单类型获取与订单对象签订的合同文件,基于合同文件中的规定的结算规则生成智能合约,所述智能合约由开发人员采用Solidity等编程语言进行编写。
智能合约是规则公开透明、合约内的规则以及数据对外部可见的计算机协议程序,不会存在任何虚假或者隐藏的交易,因此赋予了区块链技术不可篡改的特性。基于智能合约对工程订单进行结算处理,解决了不同电力公司结算记录随以篡改的弊端。
为了进一步提高工程订单处理过程的安全性,本实施例中执行单元54用于当接收到工程订单结算请求时,判断工程订单结算请求的发送发是否与订单对象一致,若不一致则拒绝工程订单结算请求;若一致,基于智能合约对工程订单进行结算,根据工程订单的结算结果和智能合约执行完成时间,生成新的区块链节点;将新的区块链节点上的内容同步至ERP***。所述新的区块链节点上包含由上述工程订单结算结果,如报销金额、账面剩余金额等,同时新的区块链节点还带有基于智能合约执行完成时间生成的事件戳。此后,当获取到下一个工程订单时,在这个新的区块链节点上重复上述工程订单结算方法,从而实现工程订单数量过程的有效溯源。
上述实施例中的各个序号仅仅为了描述,不代表各部件的组装或使用过程中的先后顺序。
以上所述仅为本发明的实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.基于区块链数据存储的工程订单结算方法,其特征在于,所述工程订单结算方法包括:
通过ERP***获取工程订单,提取工程订单中的结构化数据和非结构化数据,为工程订单生成区块链节点;
提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中;
根据结构化数据提取出工程订单涉及到的订单对象和订单类型,基于订单对象与订单类型对应的结算规则生成智能合约,基于内容存证方式将智能合约与结构化数据共同存储到区块链节点中;
当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***。
2.根据权利要求1所述的基于区块链数据存储的工程订单结算方法,其特征在于,所述提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中,包括:
当非结构化数据的类型为图片时,将图片进行灰度处理,将由灰度处理后图片中每个像素点的灰度值组成的矩阵作为非结构化数据的特征数据;
计算特征数据的哈希值,将图片在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
3.根据权利要求1所述的基于区块链数据存储的工程订单结算方法,其特征在于,所述提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中,包括:
当非结构化数据的类型为工程文档时,查询ERP***中是否有预先存储的工程文档对应的通用模板,若有通用模板,筛除文档与通用模板重合的部分,将筛除后的文档作为非结构化数据的特征数据;
计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
4.根据权利要求1所述的基于区块链数据存储的工程订单结算方法,其特征在于,所述提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中,包括:
当非结构化数据的类型为工程文档时,查询ERP***中是否有预先存储的工程文档对应的通用模板,若没有通用模板,通过将工程文档与ERP***中预先存储的关键词列表进行比对,提取出工程文档中的关键词作为特征数据;
计算特征数据的哈希值,将工程文档在ERP***中的存储地址与哈希值拼接,将拼接得到的字符串存储到区块链节点中。
5.根据权利要求1所述的基于区块链数据存储的工程订单结算方法,其特征在于,所述当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***,包括:
当接收到工程订单结算请求时,判断工程订单结算请求的发送发是否与订单对象一致,若不一致则拒绝工程订单结算请求;
若一致,基于智能合约对工程订单进行结算,根据工程订单的结算结果和智能合约执行完成时间,生成新的区块链节点;
将新的区块链节点上的内容同步至ERP***。
6.根据权利要求1所述的基于区块链数据存储的工程订单结算方法,其特征在于,所述区块链节点通过ERP网关接收待存储的结构化数据和非结构化数据。
7.根据权利要求1所述的基于区块链数据存储的工程订单结算方法,其特征在于,所述区块链节点基于Hyperledger Fabric框架搭建。
8.基于区块链数据存储的工程订单结算***,其特征在于,所述工程订单结算***包括:
数据获取单元:用于通过ERP***获取工程订单,提取工程订单中的结构化数据和非结构化数据,为工程订单生成区块链节点;
第一处理单元:用于提取与非结构数据的类型对应的特征数据,将特征数据基于链接存证方式存储到区块链节点中;
第二处理单元:用于根据结构化数据提取出工程订单涉及到的订单对象和订单类型,基于订单对象与订单类型对应的结算规则生成智能合约,基于内容存证方式将智能合约与结构化数据共同存储到区块链节点中;
执行单元:用于当接收到工程订单结算请求时,根据存储的智能合约执行工程订单的结算,将工程订单的结算结果同步到ERP***。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110770769.1A CN113688418B (zh) | 2021-07-08 | 2021-07-08 | 基于区块链数据存储的工程订单结算方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110770769.1A CN113688418B (zh) | 2021-07-08 | 2021-07-08 | 基于区块链数据存储的工程订单结算方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113688418A CN113688418A (zh) | 2021-11-23 |
CN113688418B true CN113688418B (zh) | 2024-02-02 |
Family
ID=78576770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110770769.1A Active CN113688418B (zh) | 2021-07-08 | 2021-07-08 | 基于区块链数据存储的工程订单结算方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688418B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114119092A (zh) * | 2021-11-29 | 2022-03-01 | 杭州协能科技股份有限公司 | 梯次电池供应链的管理方法及*** |
CN114866302B (zh) * | 2022-04-26 | 2023-01-03 | 湖南大学 | 一种基于区块链的金融数据存证方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111353152A (zh) * | 2018-12-20 | 2020-06-30 | 北京京东尚科信息技术有限公司 | 基于区块链的文档管理方法、装置、***及存储介质 |
CN111414650A (zh) * | 2020-03-25 | 2020-07-14 | 北京创世智链信息技术研究院 | 一种基于区块链存证的订单处理方法及*** |
WO2020169128A2 (en) * | 2020-06-12 | 2020-08-27 | Alipay Labs (singapore) Pte. Ltd. | Storage management based on message feedback |
CN111915303A (zh) * | 2020-10-14 | 2020-11-10 | 广东博嘉拓建筑科技有限公司 | 一种工作量结算方法、装置、服务器和介质 |
WO2021077975A1 (zh) * | 2019-10-24 | 2021-04-29 | 腾讯科技(深圳)有限公司 | 第三方结算的控制方法、装置、电子设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170352013A1 (en) * | 2016-06-01 | 2017-12-07 | Mastercard International Incorporated | Systems and Methods for Managing Rules Associated With Transaction Settlement Procedures |
-
2021
- 2021-07-08 CN CN202110770769.1A patent/CN113688418B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111353152A (zh) * | 2018-12-20 | 2020-06-30 | 北京京东尚科信息技术有限公司 | 基于区块链的文档管理方法、装置、***及存储介质 |
WO2021077975A1 (zh) * | 2019-10-24 | 2021-04-29 | 腾讯科技(深圳)有限公司 | 第三方结算的控制方法、装置、电子设备和存储介质 |
CN111414650A (zh) * | 2020-03-25 | 2020-07-14 | 北京创世智链信息技术研究院 | 一种基于区块链存证的订单处理方法及*** |
WO2020169128A2 (en) * | 2020-06-12 | 2020-08-27 | Alipay Labs (singapore) Pte. Ltd. | Storage management based on message feedback |
CN111915303A (zh) * | 2020-10-14 | 2020-11-10 | 广东博嘉拓建筑科技有限公司 | 一种工作量结算方法、装置、服务器和介质 |
Non-Patent Citations (5)
Title |
---|
区块链技术在工程项目管理中的应用构想;杨伟华;汪辉;刘武念;;建筑经济(S1);全文 * |
宋小杉.基于支持向量机的地面目标自动识别技术.国防工业出版社,2018,第36页. * |
电子档案管理应用区块链存储方式探析;蔡盈芳;;档案学研究(04);全文 * |
跨国电力交易的区块链存证技术;陈爱林;全球能源互联网(01);第2章 * |
跨境贸易区块链溯源数据上链方式研究;郭媛媛;数字通信世界(08);第2.4章 * |
Also Published As
Publication number | Publication date |
---|---|
CN113688418A (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108846659B (zh) | 基于区块链的转账方法、装置及存储介质 | |
US20070094284A1 (en) | Risk and compliance framework | |
CN113688418B (zh) | 基于区块链数据存储的工程订单结算方法及*** | |
US20230344813A1 (en) | Method and system for securing asset data in a computing environment | |
CN110968437A (zh) | 一种基于Java智能合约的单个合约并行执行的方法、装置、设备及介质 | |
CN111176867A (zh) | 数据共享交换及开放应用平台 | |
CN112488714A (zh) | 一种基于区块链交易过程的备注字段上链的方法 | |
CN112418859B (zh) | 区块链的共识方法及装置、电子设备和可读存储介质 | |
CN111709718A (zh) | 基于人工智能的智能保理资产服务平台、方法和存储介质 | |
JP7221799B2 (ja) | 情報処理システム、及び情報処理システムの制御方法 | |
CN116719799A (zh) | 环保数据治理方法、装置、计算机设备和存储介质 | |
CN116029843A (zh) | 一种财务报销方法、装置及电子设备 | |
CN112613288B (zh) | 结算单生成方法、装置、计算机设备和存储介质 | |
CN111798338A (zh) | 一种智慧旅游gds方法、***及中间服务器 | |
CN111161052A (zh) | 银行作业数据的处理方法及装置 | |
JP2024509629A (ja) | 量子車型部品基礎データベースの作成方法、装置、電子機器及び記憶媒体 | |
CN114491662A (zh) | 一种基于区块链的数据资产审计方法、***及设备 | |
CN113592614A (zh) | 一种基于区块链技术的互联网代理记账智能平台 | |
CN116521509A (zh) | 智能合约测试方法、装置、设备、存储介质及产品 | |
CN110765120A (zh) | 一种电网工程造价用信息管理方法 | |
CN117592095A (zh) | 一种数据自动提取方法、装置、设备及存储介质 | |
CN116501796A (zh) | 基于多区块链的电数据处理***及方法 | |
CN114169009A (zh) | 精准信息处理方法、装置、设备和存储介质 | |
CN115330365A (zh) | 基于区块链的数据处理方法、装置及计算机设备 | |
CN115687130A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |