掌桥专利:专业的专利平台
掌桥专利
首页

一种共享建筑信息模型的方法、装置及电子设备

文献发布时间:2023-06-19 11:02:01


一种共享建筑信息模型的方法、装置及电子设备

技术领域

本发明涉及数据共享技术领域,具体而言,涉及一种共享建筑信息模型的方法、装置、电子设备及计算机可读存储介质。

背景技术

建筑信息模型(Building Information Modeling,BIM)是建筑学、工程学及土木工程的工具。建筑信息模型或建筑资讯模型一词由Autodesk所创,用来形容那些以三维图形为主、物件导向、建筑学有关的电脑辅助设计。BIM作为应用于工程设计、建造、管理的数据化工具,通过对建筑的数据化、信息化模型整合,在项目策划、运行和维护的全生命周期过程中进行共享和传递,使工程技术人员对各种建筑信息做出正确理解和高效应对,为设计团队以及包括建筑、运营单位在内的各方建设主体提供协同工作的基础,在提高生产效率、节约成本和缩短工期方面发挥重要作用。

在实现本发明的过程中,发明人发现现有的方案中至少存在如下问题:

大多BIM信息管理的技术方案是通过一些硬件外设或装置,实现对进度的监控,由于BIM建模涉及到多方职责的数据,且数据不可追溯;若将数据公开则会涉及数据隐私安全问题。

发明内容

为解决现有BIM信息管理难以追溯或隐私安全性较差的技术问题,本发明实施例提供一种共享建筑信息模型的方法、装置、电子设备及计算机可读存储介质。

第一方面,本发明实施例提供了一种共享建筑信息模型的方法,包括:

本地节点与其他节点构建联盟链系统,所述本地节点和其他节点中的任意节点均对应建筑信息模型中相应的建筑代表方,所述建筑代表方包括设计团队代表、施工单位代表、设施运营部门代表、业主代表、技术团队代表、销售代表中的一项或多项;

根据所述本地节点对应的建筑代表方确定本地节点的权限,并确定参与建筑信息模型中共识和存证的智能合约;

所述本地节点上传本地建筑信息数据,确定所述本地建筑信息数据的密级属性;其中,所述密级属性用于限制不同权限的节点是否能够访问所述本地建筑信息数据中的部分或全部数据;

所述本地节点以及除所述本地节点对应的建筑代表方之外的其他建筑代表方所对应的其他节点根据相应的所述智能合约对所述本地建筑信息数据进行共识,在达成共识时将设有所述密级属性的所述本地建筑信息数据存储到所述联盟链系统的区块链中。

第二方面,本发明实施例还提供了一种共享建筑信息模型的装置,应用于本地节点,包括:

构建模块,用于与除本地节点之外的其他节点构建联盟链系统,所述本地节点和其他节点中的任意节点均对应建筑信息模型中相应的建筑代表方,所述建筑代表方包括设计团队代表、施工单位代表、设施运营部门代表、业主代表、技术团队代表、销售代表中的一项或多项;

权限设定模块,用于根据所述本地节点对应的建筑代表方确定本地节点的权限,并确定参与建筑信息模型中共识和存证的智能合约;

数据上传模块,用于上传本地建筑信息数据,确定所述本地建筑信息数据的密级属性;其中,所述密级属性用于限制不同权限的节点是否能够访问所述本地建筑信息数据中的部分或全部数据;

上链模块,用于本地节点以及除所述本地节点对应的建筑代表方之外的其他建筑代表方所对应的其他节点根据相应的所述智能合约对所述本地建筑信息数据进行共识,在达成共识时将设有所述密级属性的所述本地建筑信息数据存储到所述联盟链系统的区块链中。

第三方面,本发明实施例提供了一种电子设备,包括总线、收发器、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述收发器、所述存储器和所述处理器通过所述总线相连,所述计算机程序被所述处理器执行时实现上述任意一项所述的共享建筑信息模型的方法中的步骤。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的共享建筑信息模型的方法中的步骤。

本发明实施例提供的共享建筑信息模型的方法、装置、电子设备及计算机可读存储介质,基于区块链技术通过每个建筑代表方的节点构建联盟链,所有节点参与建筑信息模型的流程可以通过智能合约和共识形式实现,兼具效率与灵活性;所有操作均会在区块链中存证,能够帮助解决使用BIM中出现的风险分配、知识产权、可追溯性问题;此外,每个节点设有权限,上链的建筑信息数据设有密级属性,使得不同权限的节点可访问的数据不同,所披露的数据粒度也不尽相同,能够一定程度保护数据隐私性。

附图说明

为了更清楚地说明本发明实施例或背景技术中的技术方案,下面将对本发明实施例或背景技术中所需要使用的附图进行说明。

图1示出了本发明实施例所提供的一种共享建筑信息模型的方法的流程图;

图2示出了本发明实施例所提供的共享建筑信息模型的方法中,数据访问过程的流程图;

图3示出了本发明实施例所提供的共享建筑信息模型的方法中,上传本地建筑信息数据的流程图;

图4示出了本发明实施例所提供的一种共享建筑信息模型的装置的结构示意图;

图5示出了本发明实施例所提供的一种用于执行共享建筑信息模型的方法的电子设备的结构示意图。

具体实施方式

在本发明实施例的描述中,所属技术领域的技术人员应当知道,本发明实施例可以实现为方法、装置、电子设备及计算机可读存储介质。因此,本发明实施例可以具体实现为以下形式:完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、硬件和软件结合的形式。此外,在一些实施例中,本发明实施例还可以实现为在一个或多个计算机可读存储介质中的计算机程序产品的形式,该计算机可读存储介质中包含计算机程序代码。

上述计算机可读存储介质可以采用一个或多个计算机可读存储介质的任意组合。计算机可读存储介质包括:电、磁、光、电磁、红外或半导体的系统、装置或器件,或者以上任意的组合。计算机可读存储介质更具体的例子包括:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、闪存(Flash Memory)、光纤、光盘只读存储器(CD-ROM)、光存储器件、磁存储器件或以上任意组合。在本发明实施例中,计算机可读存储介质可以是任意包含或存储程序的有形介质,该程序可以被指令执行系统、装置、器件使用或与其结合使用。

上述计算机可读存储介质包含的计算机程序代码可以用任意适当的介质传输,包括:无线、电线、光缆、射频(Radio Frequency,RF)或者以上任意合适的组合。

可以以汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,例如:Java、Smalltalk、C++,还包括常规的过程式程序设计语言,例如:C语言或类似的程序设计语言。计算机程序代码可以完全的在用户计算机上执行、部分的在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行以及完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括:局域网(LAN)或广域网(WAN),可以连接到用户计算机,也可以连接到外部计算机。

本发明实施例通过流程图和/或方框图描述所提供的方法、装置、电子设备。

应当理解,流程图和/或方框图的每个方框以及流程图和/或方框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,这些计算机可读程序指令通过计算机或其他可编程数据处理装置执行,产生了实现流程图和/或方框图中的方框规定的功能/操作的装置。

也可以将这些计算机可读程序指令存储在能使得计算机或其他可编程数据处理装置以特定方式工作的计算机可读存储介质中。这样,存储在计算机可读存储介质中的指令就产生出一个包括实现流程图和/或方框图中的方框规定的功能/操作的指令装置产品。

也可以将计算机可读程序指令加载到计算机、其他可编程数据处理装置或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其他可编程数据处理装置上执行的指令能够提供实现流程图和/或方框图中的方框规定的功能/操作的过程。

下面结合本发明实施例中的附图对本发明实施例进行描述。

图1示出了本发明实施例所提供的一种共享建筑信息模型的方法的流程图。如图1所示,该方法包括:

步骤101:本地节点与其他节点构建联盟链系统,本地节点和其他节点中的任意节点均对应建筑信息模型中相应的建筑代表方,建筑代表方包括设计团队代表、施工单位代表、设施运营部门代表、业主代表、技术团队代表、销售代表中的一项或多项。

本发明实施例中,为每个建筑代表方分配相应的节点,进而通过多个节点可以构建联盟链系统;其中,每种建筑代表方可以设有多个节点,例如存在多个设计团队代表时,可以为每个设计团队代表分配相应的节点。本实施例中,本地节点为联盟链系统中的一个节点;其中,该本地节点可以为联盟链的主节点,也可以为某个主节点所辖领域内的二级节点等。具体地,对于某建筑代表方,其所辖领域存在其他子代表方,例如对于设计团队代表,其所辖领域可能涉及多个其他的设计团队或个人,此时可以为其均分配相应的节点。

本实施例中,将主要的建筑代表方对应的节点作为主节点,而将该建筑代表方所辖领域的其他建筑代表方作为该主节点的二级节点,二级节点的领域与主节点领域一致,即二级节点相应的主节点均对应同一类建筑代表方。其中,主节点数据可以从BIM(建筑信息模型)服务器导入,如果重新构建,需要补充相关信息,确保与BIM服务器数据相兼容。此外,主节点可以分批加入,后面增加的主节点需要已有主节点达成共识后加入。

步骤102:根据本地节点对应的建筑代表方确定本地节点的权限,并确定参与建筑信息模型中共识和存证的智能合约。

本发明实施例中,预先为联盟链系统中每个节点分配权限,该权限与节点所对应的建筑代表方相关,即与节点的实际身份有关;其中,节点的权限对应该节点对区块链中数据的操作权限,例如是否可以写入数据、读取区块链内的数据等。本实施例中,还为每个节点分配相应的智能合约,该智能合约用于共识(一般为投票的方式)和存证,即智能合约包括存证方案、共识方案(投票方案)等需要授权确认的流程。本实施例中,联盟链系统中存在主节点和二级节点,二级节点的权限不高于相应主节点的权限;主节点的智能合约中可以让部分或者全部二级节点参与部分流程的投票。二级节点生效一般只需要相应主节点通过,之后再同步到其他主节点即可。

本实施例中,本地节点为主节点时,预先初始化所辖领域的智能合约。具体地,初始化通过提案的形式完成,如果仅涉及该主节点的智能合约,则再邀请至少一个其他主节点进行投票验证即可使智能合约生效;如果涉及到一个或多个其他主节点所辖范围,则该范围内的主节点必须参与投票,并再邀请至少一个其他主节点一起,共同投票验证通过后可以生效。

步骤103:本地节点上传本地建筑信息数据,确定本地建筑信息数据的密级属性;其中,密级属性用于限制不同权限的节点是否能够访问本地建筑信息数据中的部分或全部数据。

本发明实施例中,本地节点中存在建筑信息模型中的建筑信息数据,该建筑信息数据需要上链时,将其作为本地建筑信息数据上传到联盟链系统中;同时,为该本地建筑信息数据设置密级属性,该密级属性与节点的权限相对应,用于后续确定如何披露该本地建筑信息数据,甚至可以实现分级披露。具体地,该密级属性可以用于限制不同权限的节点是否能够访问该本地建筑信息数据中的部分或全部数据;即,通过该密级属性可以确定某个节点是否有权限能够读取该本地建筑信息数据,例如对于设计图纸、财务类等具有较高机密性的数据,可以设置较高的密级属性以使得只有少量的高权限节点或相关节点才可以读取该本地建筑信息数据。或者,对该本地建筑信息数据进行分级,基于节点的权限来确定该节点可以读取本地建筑信息数据中的哪些数据,使得不同节点访问该本地建筑信息数据时,不同节点得到的结果是不同的。例如,本地建筑信息数据为表格形式的数据,其包含多个字段,此时可以为每个字段分别设置不同的密级属性,实现对本地建筑信息数据的分级。

步骤104:本地节点以及除本地节点对应的建筑代表方之外的其他建筑代表方所对应的其他节点根据相应的智能合约对本地建筑信息数据进行共识,在达成共识时将设有密级属性的本地建筑信息数据存储到联盟链系统的区块链中。

本发明实施例中,本地节点上传本地建筑信息数据之后,多个节点即可基于预设的智能合约对该本地建筑信息数据进行投票共识,若投票通过即认为达成共识,此时可以将该本地建筑信息数据存储到联盟链系统的区块链中,实现数据上链。

可选地,该方法还包括:在本地节点对应的建筑代表方发生变更时,本地节点发起更新权限请求;在更新权限请求鉴权通过时,更新本地节点的权限。本实施例中,由于某个节点对应的建筑代表方可能发生微调甚至变化,此时需要相应的更新该节点的权限。例如,节点A为一单元的销售负责人,并分配有初始的节点权限;当节点A要求浏览销售数据,那么根据A的权限,其仅可以浏览一单元的销售数据;如果节点A从下个月开始新增负责三单元的销售,即使在一级主节点没有更新授权的情况下,节点A也可以申请浏览三单元的销售数据,提案被通过之后,每次节点A要求浏览销售数据时,系统返回的就是一单元和三单元的销售数据。

本发明实施例提供的一种共享建筑信息模型的方法,基于区块链技术通过每个建筑代表方的节点构建联盟链,所有节点参与建筑信息模型的流程可以通过智能合约和共识形式实现,兼具效率与灵活性;所有操作均会在区块链中存证,能够帮助解决使用BIM中出现的风险分配、知识产权、可追溯性问题;此外,每个节点设有权限,上链的建筑信息数据设有密级属性,使得不同权限的节点可访问的数据不同,所披露的数据粒度也不尽相同,能够一定程度保护数据隐私性。

在上述实施例的基础上,在构架联盟链系统之后,该方法还包括数据访问的过程,参见图2所示,该过程具体包括:

步骤201:获取访问节点发起的用于访问第一目标建筑信息数据的访问请求,该第一目标建筑信息数据为存储在区块链中的建筑信息数据。

步骤202:根据访问节点的权限和第一目标建筑信息数据的密级属性判断访问节点是否有权限访问第一目标建筑信息数据。

本发明实施例中,访问节点可以为联盟链系统中的一个节点,也可以为接入联盟链系统的其他节点。当访问节点需要访问区块链中的建筑信息数据(即第一目标建筑信息数据)时,可以发起相应的访问请求。由于访问节点设有相应的权限,第一目标建筑信息数据也具有密级属性,故基于二者可以判断访问节点是否有权限访问该第一目标建筑信息数据。例如,第一目标建筑信息数据为设计图纸,其密级属性限定为只有设计团队代表可以访问,若访问节点为业主代表对应的节点,该访问节点的权限不允许该访问节点可以读取设计图纸,则此时可以确定访问节点没有权限访问第一目标建筑信息数据。

步骤203:在访问节点有权限时,将第一目标建筑信息数据中访问节点有权限访问的部分或全部数据返回至访问节点。

步骤204:在访问节点不具有权限时,向访问节点返回无权访问的消息;若之后接收到访问节点提交的访问权限申请提案,将访问权限申请提案分发给其他一个或多个节点,在访问权限申请提案通过时,根据访问权限申请提案为访问节点分配相应的权限,并将第一目标建筑信息数据中访问节点分配权限后有权限访问的部分或全部数据返回至访问节点。

本发明实施例中,若访问节点具有权限,则可以将第一目标建筑信息数据发送至该访问节点;或者若第一目标建筑信息数据具有分级的密级属性,则可以基于访问节点的权限将第一目标建筑信息数据中的部分数据发送至访问节点。相反地,若访问节点不具有权限,则禁止该访问节点访问相应的第一目标建筑信息数据。

此外,当访问节点不具有权限时,该访问节点可以申请权限,即提交访问权限申请提案,若该访问权限申请提案被通过,则可以向该访问节点分配与该访问权限申请提案对应的权限,使得访问节点可以读取部分或全部的第一目标建筑信息数据。

在上述实施例的基础上,参见图3所示,上述步骤103“本地节点上传本地建筑信息数据”具体包括:

步骤1031:根据本地节点的权限确定本地节点能够上传建筑信息数据时,本地节点发起上传本地建筑信息数据的上传请求。

本发明实施例中,节点在需要上传建筑信息数据时,首先需要确定该节点是否有权限执行上传操作,若其有权限,再发起上传本地建筑信息数据的上传请求。其中,可以根据BIM中的数据为相应的节点分配初始权限,在该节点第一次上传数据时需要进行步骤1031中的判断过程。例如,节点A在BIM上有过上传的数据,因此默认允许A可以上传,节点B虽然和节点A的角色一样,但在BIM上没有过上传操作,那么节点B首次上传时就需要申请通过或者等待上级节点更新权限。

步骤1032:在上传请求为新增数据时,判断是否存在数据模板,在存在数据模板时,继续步骤1033;在不存在数据模板时,继续步骤1034。

步骤1033:选择与本地建筑信息数据相对应的数据模板并填充数据模板,进而基于填充后的数据模板上传本地建筑信息数据。

步骤1034:从本地导入、从建筑信息模型数据库中导入、或手动新建数据模板,并将新建的数据模板转化为提案分发给其他节点进行共识,在达成共识时新建的数据模板生效,并将本地建筑信息数据填充至新建的数据模板中执行上传操作。

本发明实施例中,本地节点执行上传请求时,至少包含两种情况,一种为本地节点上传的数据(即本地建筑信息数据)是全新的,区块链中并不存在,此时的上传请求为新增数据;另一种为区块链中存在与即将上传的数据相对应的之前的数据,本次上传该本地建筑信息数据实际上是要对之前的数据进行更新,即上传请求为更新数据。

当本地节点需要新增数据时,需要使得新增的本地建筑信息数据满足BIM格式要求,此时可以基于数据模板实现。具体地,若存在数据模板,将该本地建筑信息数据填充至数据模板并上传即可;相反地,若不存在数据模板,则需要新建数据模板,基于新建的数据模板实现数据上传。其中,本地节点可以通过从本地导入、从建筑信息模型数据库中导入、或手动建立等方式新建数据模板,之后将新建该数据模板的提案转发给其他节点进行投票共识,若投票通过则该新建的数据模板可以生效,进而与上述步骤1033类似,通过填充数据模板并上传数据模板即可完成数据上传操作。

可选地,参见图3所示,上述步骤103“本地节点上传本地建筑信息数据”还包括:

步骤1035:在上传请求为更新数据时,确定上传请求的操作时间和上传请求所要更新的第二目标建筑信息数据。

本发明实施例中,当本地节点上传的本地建筑信息数据是要更新区块链中已经存在的数据(即第二目标建筑信息数据)时,确定发情上传请求的时间,该时间即为操作时间。其中,每个建筑信息数据可以设有唯一的标识,通过不同的版本号来表示同一个建筑信息数据在不同时间点对应的数据。

步骤1036:在需要存证本地建筑信息数据时,确定当前时间,并判断在操作时间与当前时间之间第二目标建筑信息数据是否发生变化,若第二目标建筑信息数据未发生变化,执行步骤1037;若第二目标建筑信息数据发生变化,执行步骤1038。

步骤1037:存证本地建筑信息数据。

步骤1038:判断变化后的第二目标建筑信息数据的版本与本地建筑信息数据的版本是否一致,若一致则继续步骤1039,若不一致则继续步骤1040。

步骤1039:确定数据已更新。

步骤1040:分别根据本地建筑信息数据、变化后的第二目标建筑信息数据生成两个提案,并分发至其他节点进行共识,根据共识结果确定哪一版本的数据上链。

本发明实施例中,由于BIM信息可能较大,即本地建筑信息数据可能较大,本地节点上传完整的本地建筑信息数据需要一定时间,而只有本地建筑信息数据完全上传至联盟链系统中才可以进行存证,将需要存证本地建筑信息数据的时间作为当前时间,则该当前时间与本地节点发起上传请求的操作时间之间具有一定的时间差;由于BIM模型涉及多个节点,导致在该时间差内可能有其他节点已经执行了数据更新操作,本实施例中为每个建筑信息数据设置相应的版本,通过判断版本是否一致来确定具体如何对第二目标建筑信息数据进行更新。

具体地,如步骤1036所示,若区块链中的第二目标建筑信息数据在操作时间与当前时间之间的时间段内没有发生变化,则直接存证本地节点上传的本地建筑信息数据即可。相反地,若在该时间段内第二目标建筑信息数据发生了变化,则说明在该时间段内,存在除本地节点之外的其他节点修改了该第二目标建筑信息数据,此时,本实施例通过版本来判断是否要执行更新操作。其中,若变化后的第二目标建筑信息数据的版本与本地建筑信息数据的版本一致,则说明该第二目标建筑信息数据已经被其他节点更新,不需要再次更新;若两个版本不一致,则需要对两个建筑信息数据分别生成提案,以确定哪个版本的建筑信息数据最终上链,一般情况下最新版本的数据上链。

本发明实施例中,将上传请求分为新增数据和更新数据,在不同情况下执行不同的上传流程,可以保证上传数据的准确性;在更新数据时,通过判断从操作时间到当前时间这段时间内第二目标建筑信息数据是否发生变化,以避免其被多个节点多次更新,可以保证最终更新后的数据为最新的或最有效的数据。

可选地,上述步骤103“本地节点上传本地建筑信息数据”还包括:生成与本地建筑信息数据相对应的指纹信息,并对指纹信息执行上传操作;指纹信息为公开的、用于执行共识的信息。

本发明实施例中,由于本地建筑信息数据具有密级属性,当其他节点对其进行共识投票时,可能导致其他节点不能正常读取该本地建筑信息数据;本实施例为该本地建筑信息数据设置公开的、用于执行共识操作的指纹信息,使得其他节点可以基于该指纹信息对本地建筑信息数据进行共识操作,且由于指纹信息具有加密属性,不会泄露本地建筑信息数据。当其他有权限的节点读取本地建筑信息数据时,也可通过对比本地建筑信息数据与相应的指纹信息是否一致来确定本地建筑信息数据是否被篡改。

上文详细描述了本发明实施例提供的共享建筑信息模型的方法,该方法也可以通过相应的装置实现,下面详细描述本发明实施例提供的共享建筑信息模型的装置。

图4示出了本发明实施例所提供的一种共享建筑信息模型的装置的结构示意图。共享建筑信息模型的装置应用于本地节点,如图4所示,该共享建筑信息模型的装置包括:

构建模块41,用于与除本地节点之外的其他节点构建联盟链系统,所述本地节点和其他节点中的任意节点均对应建筑信息模型中相应的建筑代表方,所述建筑代表方包括设计团队代表、施工单位代表、设施运营部门代表、业主代表、技术团队代表、销售代表中的一项或多项;

权限设定模块42,用于根据所述本地节点对应的建筑代表方确定本地节点的权限,并确定参与建筑信息模型中共识和存证的智能合约;

数据上传模块43,用于上传本地建筑信息数据,确定所述本地建筑信息数据的密级属性;其中,所述密级属性用于限制不同权限的节点是否能够访问所述本地建筑信息数据中的部分或全部数据;

上链模块44,用于本地节点以及除所述本地节点对应的建筑代表方之外的其他建筑代表方所对应的其他节点根据相应的所述智能合约对所述本地建筑信息数据进行共识,在达成共识时将设有所述密级属性的所述本地建筑信息数据存储到所述联盟链系统的区块链中。

在上述实施例的基础上,该装置还包括:访问模块;所述访问模块用于:

获取访问节点发起的用于访问第一目标建筑信息数据的访问请求,所述第一目标建筑信息数据为存储在所述区块链中的建筑信息数据;

根据所述访问节点的权限和所述第一目标建筑信息数据的密级属性判断所述访问节点是否有权限访问所述第一目标建筑信息数据;

在所述访问节点有权限时,将所述第一目标建筑信息数据中所述访问节点有权限访问的部分或全部数据返回至所述访问节点;

在所述访问节点不具有权限时,向所述访问节点返回无权访问的消息;若之后接收到所述访问节点提交的访问权限申请提案,将所述访问权限申请提案分发给其他一个或多个节点,在所述访问权限申请提案通过时,根据所述访问权限申请提案为所述访问节点分配相应的权限,并将所述第一目标建筑信息数据中所述访问节点分配权限后有权限访问的部分或全部数据返回至所述访问节点。

在上述实施例的基础上,所述数据上传模块43上传本地建筑信息数据,包括:

根据所述本地节点的权限确定所述本地节点能够上传建筑信息数据时,本地节点发起上传本地建筑信息数据的上传请求;

在所述上传请求为新增数据时,判断是否存在数据模板;

在存在数据模板时,选择与所述本地建筑信息数据相对应的数据模板并填充所述数据模板,进而基于填充后的数据模板上传所述本地建筑信息数据;

在不存在数据模板时,从本地导入、从建筑信息模型数据库中导入、或手动新建数据模板,并将新建的数据模板转化为提案分发给其他节点进行共识,在达成共识时新建的所述数据模板生效,并将本地建筑信息数据填充至新建的所述数据模板中执行上传操作。

在上述实施例的基础上,所述数据上传模块43上传本地建筑信息数据,还包括:

在所述上传请求为更新数据时,确定所述上传请求的操作时间和所述上传请求所要更新的第二目标建筑信息数据;

在需要存证本地建筑信息数据时,确定当前时间,并判断在所述操作时间与所述当前时间之间所述第二目标建筑信息数据是否发生变化;

若所述第二目标建筑信息数据未发生变化,存证所述本地建筑信息数据;

若所述第二目标建筑信息数据发生变化,则判断变化后的所述第二目标建筑信息数据的版本与所述本地建筑信息数据的版本是否一致,若一致则确定数据已更新,若不一致,则分别根据所述本地建筑信息数据、变化后的所述第二目标建筑信息数据生成两个提案,并分发至其他节点进行共识,根据共识结果确定哪一版本的数据上链。

在上述实施例的基础上,该装置还包括:权限变更模块,用于在本地节点对应的建筑代表方发生变更时,发起更新权限请求;在所述更新权限请求鉴权通过时,更新所述本地节点的权限。

在上述实施例的基础上,所述数据上传模块43上传本地建筑信息数据包括:

生成与所述本地建筑信息数据相对应的指纹信息,并对所述指纹信息执行上传操作;所述指纹信息为公开的、用于执行共识的信息。

此外,本发明实施例还提供了一种电子设备,包括总线、收发器、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该收发器、该存储器和处理器分别通过总线相连,计算机程序被处理器执行时实现上述共享建筑信息模型的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

具体的,参见图5所示,本发明实施例还提供了一种电子设备,该电子设备包括总线1110、处理器1120、收发器1130、总线接口1140、存储器1150和用户接口1160。

在本发明实施例中,该电子设备还包括:存储在存储器1150上并可在处理器1120上运行的计算机程序,计算机程序被处理器1120执行时实现上述共享建筑信息模型的方法实施例的各个过程。

收发器1130,用于在处理器1120的控制下接收和发送数据。

本发明实施例中,总线架构(用总线1110来代表),总线1110可以包括任意数量互联的总线和桥,总线1110将包括由处理器1120代表的一个或多个处理器与存储器1150代表的存储器的各种电路连接在一起。

总线1110表示若干类型的总线结构中的任何一种总线结构中的一个或多个,包括存储器总线以及存储器控制器、外围总线、加速图形端口(Accelerate Graphical Port,AGP)、处理器或使用各种总线体系结构中的任意总线结构的局域总线。作为示例而非限制,这样的体系结构包括:工业标准体系结构(Industry Standard Architecture,ISA)总线、微通道体系结构(Micro Channel Architecture,MCA)总线、扩展ISA(Enhanced ISA,EISA)总线、视频电子标准协会(Video Electronics Standards Association,VESA)、外围部件互连(Peripheral Component Interconnect,PCI)总线。

处理器1120可以是一种集成电路芯片,具有信号处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中硬件的集成逻辑电路或软件形式的指令完成。上述的处理器包括:通用处理器、中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)、复杂可编程逻辑器件(Complex Programmable LogicDevice,CPLD)、可编程逻辑阵列(Programmable Logic Array,PLA)、微控制单元(Microcontroller Unit,MCU)或其他可编程逻辑器件、分立门、晶体管逻辑器件、分立硬件组件。可以实现或执行本发明实施例中公开的各方法、步骤及逻辑框图。例如,处理器可以是单核处理器或多核处理器,处理器可以集成于单颗芯片或位于多颗不同的芯片。

处理器1120可以是微处理器或任何常规的处理器。结合本发明实施例所公开的方法步骤可以直接由硬件译码处理器执行完成,或者由译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(Random Access Memory,RAM)、闪存(FlashMemory)、只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、寄存器等本领域公知的可读存储介质中。所述可读存储介质位于存储器中,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

总线1110还可以将,例如外围设备、稳压器或功率管理电路等各种其他电路连接在一起,总线接口1140在总线1110和收发器1130之间提供接口,这些都是本领域所公知的。因此,本发明实施例不再对其进行进一步描述。

收发器1130可以是一个元件,也可以是多个元件,例如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。例如:收发器1130从其他设备接收外部数据,收发器1130用于将处理器1120处理后的数据发送给其他设备。取决于计算机系统的性质,还可以提供用户接口1160,例如:触摸屏、物理键盘、显示器、鼠标、扬声器、麦克风、轨迹球、操纵杆、触控笔。

应理解,在本发明实施例中,存储器1150可进一步包括相对于处理器1120远程设置的存储器,这些远程设置的存储器可以通过网络连接至服务器。上述网络的一个或多个部分可以是自组织网络(ad hocnetwork)、内联网(intranet)、外联网(extranet)、虚拟专用网(VPN)、局域网(LAN)、无线局域网(WLAN)、广域网(WAN)、无线广域网(WWAN)、城域网(MAN)、互联网(Internet)、公共交换电话网(PSTN)、普通老式电话业务网(POTS)、蜂窝电话网、无线网络、无线保真(Wi-Fi)网络以及两个或更多个上述网络的组合。例如,蜂窝电话网和无线网络可以是全球移动通信(GSM)系统、码分多址(CDMA)系统、全球微波互联接入(WiMAX)系统、通用分组无线业务(GPRS)系统、宽带码分多址(WCDMA)系统、长期演进(LTE)系统、LTE频分双工(FDD)系统、LTE时分双工(TDD)系统、先进长期演进(LTE-A)系统、通用移动通信(UMTS)系统、增强移动宽带(Enhance Mobile Broadband,eMBB)系统、海量机器类通信(massive Machine Type of Communication,mMTC)系统、超可靠低时延通信(UltraReliable Low Latency Communications,uRLLC)系统等。

应理解,本发明实施例中的存储器1150可以是易失性存储器或非易失性存储器,或可包括易失性存储器和非易失性存储器两者。其中,非易失性存储器包括:只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存(Flash Memory)。

易失性存储器包括:随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如:静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DRRAM)。本发明实施例描述的电子设备的存储器1150包括但不限于上述和任意其他适合类型的存储器。

在本发明实施例中,存储器1150存储了操作系统1151和应用程序1152的如下元素:可执行模块、数据结构,或者其子集,或者其扩展集。

具体而言,操作系统1151包含各种系统程序,例如:框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序1152包含各种应用程序,例如:媒体播放器(Media Player)、浏览器(Browser),用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序1152中。应用程序1152包括:小程序、对象、组件、逻辑、数据结构以及其他执行特定任务或实现特定抽象数据类型的计算机系统可执行指令。

此外,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述共享建筑信息模型的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

计算机可读存储介质包括:永久性和非永久性、可移动和非可移动媒体,是可以保留和存储供指令执行设备所使用指令的有形设备。计算机可读存储介质包括:电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备以及上述任意合适的组合。计算机可读存储介质包括:相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带存储、磁带磁盘存储或其他磁性存储设备、记忆棒、机械编码装置(例如在其上记录有指令的凹槽中的穿孔卡或凸起结构)或任何其他非传输介质、可用于存储可以被计算设备访问的信息。按照本发明实施例中的界定,计算机可读存储介质不包括暂时信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如穿过光纤电缆的光脉冲)或通过导线传输的电信号。

在本申请所提供的几个实施例中,应该理解到,所披露的装置、电子设备和方法,可以通过其他的方式实现。例如,以上描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的、机械的或其他的形式连接。

所述作为分离部件说明的单元可以是或也可以不是物理上分开的,作为单元显示的部件可以是或也可以不是物理单元,既可以位于一个位置,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或全部单元来解决本发明实施例方案要解决的问题。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术作出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(包括:个人计算机、服务器、数据中心或其他网络设备)执行本发明各个实施例所述方法的全部或部分步骤。而上述存储介质包括如前述所列举的各种可以存储程序代码的介质。

以上所述,仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例披露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。

相关技术
  • 一种共享建筑信息模型的方法、装置及电子设备
  • 一种基于建筑信息模型的墙体分类方法、系统及电子设备
技术分类

06120112773887