Construction project management method, device, electronic equipment and storage medium
By managing construction project data in the blockchain network, the problem of data tampering and loss in traditional project management is solved, data security and query convenience are achieved, and project management efficiency is improved.
Patent Information
- Application Number
- CN202510151171.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-11
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2045-02-11
AI Technical Summary
In traditional construction project management, project data is easily tampered with and lost, making it difficult to query and discover data exceptions.
By using the master node in the blockchain network, transactions carrying construction project data and transactions with inspection reports are obtained, packaged into blocks for consensus, and after the consensus is passed, the blocks are added to the blockchain.
It realizes the immutability of project data and the simplicity of querying, can quickly discover data exceptions, and facilitate traceability, improving the efficiency and reliability of building project management.
Smart Images

Figure CN119628969B_ABST
Abstract
Description
Background Art
[0002] In the field of construction technology, construction projects have the characteristics of long cycles, many participants, and a lot of project data. Traditional project management is directly stored and managed through paper documents or electronic documents.
[0003] For construction projects, when traditional projects are managed, project data is easy to be tampered with, easy to be lost, difficult to query, and difficult to detect data anomalies. Summary of the invention
[0004] The present application provides a construction project management method, device, electronic device and storage medium, which at least to a certain extent overcome the problems in the related art that project data is easy to tamper with, easy to lose, difficult to query and difficult to find data anomalies.
[0005] Other features and advantages of the present application will become apparent from the following detailed description, or may be learned in part by the practice of the present application.
[0006] According to one aspect of the present application, a construction project management method is provided, which is applied to a master node in a blockchain network, wherein the blockchain network includes blockchain nodes of multiple objects related to the construction project, including: obtaining a first transaction carrying project data of the construction project; obtaining a second transaction carrying an inspection report obtained by inspecting the project data, wherein the inspection report includes inspection details and inspection conclusions, wherein the inspection details are used to indicate detailed information on the inspection of the project data, and the inspection conclusions are used to indicate whether the project data is abnormal or not; packaging the first transaction and the second transaction into a block for consensus; and if the consensus is passed, adding the block to the blockchain.
[0007] In some embodiments, obtaining the second transaction carrying the inspection report obtained by inspecting the project data includes: sending the project data to a supervisory agency for inspection; receiving the inspection report sent by the supervisory agency for inspecting the project data; and creating a transaction including the inspection report to obtain the second transaction.
[0008] In some embodiments, it also includes: when the inspection conclusion indicates that the project data is abnormal, adding the identifier of the block to the project data abnormality table to query the block.
[0009] In some embodiments, the construction project includes multiple sub-projects; the packaging of the first transaction and the second transaction into a block for consensus includes: packaging the first transaction and the second transaction into a block; determining the sub-project to which the project data belongs; selecting the blockchain node of the object corresponding to the sub-project from the blockchain nodes of the multiple objects to obtain multiple sub-project nodes; and using the multiple sub-project nodes as consensus nodes to reach a consensus on the block.
[0010] In some embodiments, using the multiple sub-project nodes as consensus nodes to reach consensus on the block includes: determining the weight scores of the multiple sub-project nodes in this round of consensus and the consensus threshold of this round; broadcasting the block to the multiple sub-project nodes; accumulating the weight scores of target sub-project nodes, the target sub-project nodes being the sub-project nodes among the multiple sub-project nodes that have fed back verification passed to the main node for the block; in response to the accumulated weight scores of the target sub-project nodes exceeding the consensus threshold of this round, the block consensus is passed.
[0011] In some embodiments, the construction project includes multiple sub-projects, and the master node stores a first correspondence relationship and a second correspondence relationship, the first correspondence relationship is the correspondence relationship between the block identifier and the sub-project, and the second correspondence relationship is the correspondence relationship between the blockchain node and the sub-project. The method also includes: receiving a query request from any blockchain node among the blockchain nodes of the multiple objects, the query request including a query identifier, and the query identifier is an identifier of any block; determining the sub-project to which the any blockchain node belongs according to the second correspondence relationship; determining the sub-project corresponding to the query identifier according to the first correspondence relationship; when the sub-project to which the any blockchain node belongs includes the sub-project corresponding to the query identifier, feeding back to the any blockchain node the project data stored in the block corresponding to the query identifier; when the sub-project to which the any blockchain node belongs does not include the sub-project corresponding to the query identifier, feeding back to the any blockchain node that there is no query authority.
[0012] According to another aspect of the present application, a construction project management device is also provided, which is applied to a master node in a blockchain network, wherein the blockchain network includes blockchain nodes of multiple objects related to the construction project, including: a first acquisition module, used to acquire a first transaction carrying project data of the construction project; a second acquisition module, used to acquire a second transaction carrying an inspection report obtained by inspecting the project data, wherein the inspection report includes inspection details and inspection conclusions, the inspection details are used to represent detailed information on the inspection of the project data, and the inspection conclusions are used to indicate whether the project data has an abnormality or not; a consensus module, used to package the first transaction and the second transaction into a block for consensus; and an adding module, used to add the block to the blockchain when the consensus is passed.
[0013] In some embodiments, the second acquisition module is used to send the project data to a supervisory agency for inspection; receive an inspection report sent by the supervisory agency for the project data; and create a transaction including the inspection report to obtain the second transaction.
[0014] In some embodiments, the device further comprises an adding module for adding the identifier of the block to a project data anomaly table when the inspection conclusion indicates that the project data is abnormal, so as to query the block.
[0015] In some embodiments, the construction project includes multiple sub-projects; the consensus module is used to package the first transaction and the second transaction into a block; determine the sub-project to which the project data belongs; select the blockchain node of the object corresponding to the sub-project from the blockchain nodes of the multiple objects to obtain multiple sub-project nodes; and use the multiple sub-project nodes as consensus nodes to reach consensus on the block.
[0016] In some embodiments, the consensus module is used to determine the weight scores of the multiple sub-project nodes in this round of consensus and the consensus threshold of this round; broadcast the block to the multiple sub-project nodes; accumulate the weight scores of the target sub-project nodes, and the target sub-project nodes are the sub-project nodes among the multiple sub-project nodes that have fed back verification to the main node for the block; in response to the accumulated weight scores of the target sub-project nodes exceeding the consensus threshold of this round, the block consensus is passed.
[0017] In some embodiments, the construction project includes multiple sub-projects, and the master node stores a first correspondence relationship and a second correspondence relationship, the first correspondence relationship is the correspondence relationship between the block identifier and the sub-project, and the second correspondence relationship is the correspondence relationship between the blockchain node and the sub-project. The device also includes: a query module, used to receive a query request from any blockchain node among the blockchain nodes of the multiple objects, the query request includes a query identifier, and the query identifier is an identifier of any block; according to the second correspondence relationship, determine the sub-project to which the any blockchain node belongs; according to the first correspondence relationship, determine the sub-project corresponding to the query identifier; when the sub-project to which the any blockchain node belongs includes the sub-project corresponding to the query identifier, feedback the project data stored in the block corresponding to the query identifier to the any blockchain node; when the sub-project to which the any blockchain node belongs does not include the sub-project corresponding to the query identifier, feedback to the any blockchain node that there is no query authority.
[0018] According to another aspect of the present application, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute any one of the above-mentioned construction project management methods by executing the executable instructions.
[0019] According to another aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the construction project management method described in any one of the above is implemented.
[0020] According to another aspect of the present application, a computer program product is provided, including a computer program, wherein when the computer program is executed by a processor, any one of the above-mentioned construction project management methods is implemented.
[0021] The technical solutions provided in the embodiments of the present application include at least the following beneficial effects:
[0022] The technical solution provided in the embodiment of the present application can avoid the problem of project data being tampered with or lost by storing the project data in the construction project as the first transaction on the blockchain, and the blocks are arranged in chronological order on the blockchain, and the blocks store data, so that querying project data from the blockchain is simpler, more convenient and faster than flipping through paper or electronic files. By obtaining a second transaction including an inspection report obtained by inspecting the project data, and the inspection report including the inspection conclusion, and packaging the first transaction and the second transaction into one block, anomalies in the project data can be discovered more quickly when the project data is subsequently queried.
[0023] Furthermore, since the blocks are arranged in chronological order when they are uploaded to the chain, it is easier to trace the abnormal project data when anomalies are found, so as to better manage the construction projects. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] The drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present application, and together with the specification are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and for ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0025] Figure 1 A schematic diagram showing a construction project management system in one embodiment of the present application.
[0026] Figure 2 A flow chart of a construction project management method in one embodiment of the present application is shown.
[0027] Figure 3 A flowchart of project data query in one embodiment of the present application is shown.
[0028] Figure 4 A schematic diagram showing the relationship between nodes and sub-items in one embodiment of the present application.
[0029] Figure 5 A schematic diagram of a construction project management device in one embodiment of the present application is shown.
[0030] Figure 6 A structural block diagram of an electronic device in one embodiment of the present application is shown. DETAILED DESCRIPTION
[0031] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this application will be more comprehensive and complete and fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0032] In addition, the accompanying drawings are only schematic illustrations of the present application and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and thus their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.
[0033] It should be noted that the acquisition, storage, use, and processing of data in the technical solution of this application are in compliance with the relevant provisions of national laws and regulations, and the project data obtained in the embodiments of this application have been authorized.
[0034] The specific implementation of the embodiment of the present application is described in detail below in conjunction with the accompanying drawings.
[0035] Figure 1 FIG. 1 is a schematic diagram of a construction project management system in one embodiment of the present application. Figure 1 As shown, the system may include: a blockchain network 11, which includes blockchain nodes 12 of multiple objects related to the construction project.
[0036] The embodiments of the present application do not limit what objects the multiple objects related to the construction project specifically include. For example, the multiple objects may include: construction units, engineering survey units, design units, construction units, supervision units, government units, project management companies, equipment suppliers, material suppliers, etc.
[0037] The embodiments of the present application do not limit which object's blockchain node serves as the master node in the blockchain network 11. For example, the blockchain node of a government unit may serve as the master node, or the blockchain node of a construction unit may serve as the master node, and so on.
[0038] Any blockchain node 12 in the blockchain network 11 can receive project data related to the construction project sent by other devices, and any blockchain node 12 can also report project data on its own. After any blockchain node 12 obtains the project data, it can package the project data into a transaction and send it to the master node. After receiving the transaction, the master node stores the transaction in the transaction pool and queues it to be packaged into a block for consensus.
[0039] In one embodiment, before packaging transactions including project data into blocks, the master node first sends the project data included in the transaction to a supervisory agency for inspection, and receives the inspection results of the project data fed back by the supervisory agency. After that, the master node can package the inspection results into transactions, and then package the transactions including project data and transactions including inspection reports into a block, and then reach a consensus on the block. After the consensus is passed, the block is added to the blockchain and broadcast to the blockchain network 11, so that other blockchain nodes in the blockchain network 11 can update the blockchain.
[0040] The various blockchain nodes 12 in the blockchain network 11 communicate with each other through a network, which can be a wired network or a wireless network.
[0041] Optionally, the wireless network or wired network described above uses standard communication technology and / or protocols. The network is typically the Internet, but may also be any network, including but not limited to a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a mobile, wired or wireless network, a private network or any combination of a virtual private network). In some embodiments, technologies and / or formats including Hyper Text Mark-up Language (HTML), Extensible Markup Language (XML), etc. are used to represent data exchanged over the network. In addition, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Network (VPN), Internet Protocol Security (IPSec), etc. may be used to encrypt all or some links. In other embodiments, customized and / or dedicated data communication technologies may also be used to replace or supplement the above data communication technologies.
[0042] Blockchain nodes can be various electronic devices, including but not limited to smartphones, tablets, laptops, desktop computers, etc.
[0043] A blockchain node can also be a server. Optionally, the server can be an independent physical server, a server cluster or a distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), as well as big data and artificial intelligence platforms.
[0044] Those skilled in the art will know that Figure 1 The number of blockchain nodes 12 in the example is only illustrative, and any number of blockchain nodes may be provided according to actual needs. This embodiment of the present application does not limit this.
[0045] Under the above system architecture, an embodiment of the present application provides a construction project management method, which can be executed by any electronic device with computing and processing capabilities. For example, the electronic device is set as the master node in the blockchain network corresponding to the construction project, and the blockchain network includes blockchain nodes of multiple objects related to the construction project.
[0046] Figure 2 A flow chart of a construction project management method in an embodiment of the present application is shown as follows: Figure 2 As shown, the construction project management method provided in the embodiment of the present application includes the following S201 to S204.
[0047] S201, obtaining a first transaction carrying project data of a construction project.
[0048] The embodiments of the present application do not limit what kind of data the project data is. For example, the project data may be a construction plan, or raw material procurement data, or employee salary and payment information, etc.
[0049] The first transaction carrying the project data can be sent by any device to any node in the blockchain network (blockchain node, hereinafter referred to as node). If the node is a master node, the first transaction is directly placed in the transaction pool to queue for processing. After the master node receives the first transaction, it completes the acquisition of the first transaction. If the node is not a master node, the node can send the first transaction to the master node. After the master node receives the first transaction sent by the node, it completes the acquisition of the first transaction and puts the first transaction into the transaction pool to queue for processing.
[0050] It should be noted that any device can be a device outside the blockchain network or a node in the blockchain network.
[0051] If any device is a node in the blockchain network, the first transaction carrying the project data can be directly sent to the master node.
[0052] S202, obtaining a second transaction carrying an inspection report obtained by inspecting the project data, the inspection report including inspection details and inspection conclusions, the inspection details being used to indicate detailed information on the inspection of the project data, and the inspection conclusion being used to indicate whether the project data is abnormal or not.
[0053] The embodiments of the present application do not limit how to check the project data, and it can be determined based on the specific project data.
[0054] In one embodiment, obtaining a second transaction carrying an inspection report obtained by inspecting the project data may include: sending the project data to a supervisory agency for inspection; receiving the inspection report sent by the supervisory agency obtained by inspecting the project data; and creating a transaction including the inspection report to obtain the second transaction.
[0055] Among them, the supervisory agency is an organization that is qualified to inspect project data. The embodiments of the present application do not limit which specific organization the supervisory agency is. For example, the supervisory agency may be an auditing organization.
[0056] After the master node obtains the first transaction, it can obtain the project data from the first transaction, and then send the project data to the supervisory agency for inspection. After the master node receives the inspection report sent by the supervisory agency, it packages the inspection report into a block.
[0057] Checking project data through supervisory supervision can make inspection reports more authoritative, reduce the possibility of falsification of inspection reports, and reduce the complexity of construction project management.
[0058] S203, packaging the first transaction and the second transaction into a block for consensus.
[0059] The embodiments of the present application do not limit how to reach consensus on blocks.
[0060] The consensus process can be as follows: the master node broadcasts the block to the blockchain network. After receiving the block, the nodes in the blockchain network independently verify the block. After the verification is passed, the verification result is fed back to the master node. After the verification fails, the verification result is sent to the master node. The master node counts the number of results that have passed the verification. When the number of results that have passed the verification is not less than the set value of the consensus algorithm used in the blockchain network, the block is considered to have passed the consensus. If the number of results that have passed the verification is less than the set value of the consensus algorithm used in the blockchain network after the master node receives all the results, the block is considered to have failed the consensus.
[0061] In one embodiment, the construction project includes multiple sub-projects, and packaging the first transaction and the second transaction into a block for consensus may include: packaging the first transaction and the second transaction into a block; determining the sub-project to which the project data belongs; selecting the blockchain node of the object corresponding to the sub-project from the blockchain nodes of the multiple objects to obtain multiple sub-project nodes; and using the multiple sub-project nodes as consensus nodes to reach a consensus on the block.
[0062] Construction projects usually include numerous sub-projects, and the objects (units or individuals) involved in different sub-projects may be the same, partially the same, or different.
[0063] For objects involved in the subproject, the corresponding blockchain nodes should participate in the consensus process of the blocks corresponding to the data of the project. For objects not involved in the subproject, the corresponding blockchain nodes may not participate in the consensus process of the blocks corresponding to the data of the project, so as to improve the consensus efficiency, reduce the time used for the consensus process, and save the computing resources of the nodes not participating in the consensus process.
[0064] The embodiment of the present application does not limit how to determine the sub-project to which the project data belongs. In one embodiment, the project data includes an identifier of the sub-project, and the sub-project described in the project data can be determined according to the identifier of the sub-project.
[0065] In another embodiment, the project data includes a sub-project name, and the sub-project to which the project data belongs can be determined based on the sub-project name.
[0066] The embodiments of the present application do not limit how to select the blockchain node of the object corresponding to the sub-project from the blockchain nodes of the multiple objects to obtain multiple sub-project nodes.
[0067] In one embodiment, a third correspondence is stored in the master node, and the third correspondence is a correspondence between a blockchain node and a sub-project. According to the third correspondence, the master node can select a blockchain node of an object corresponding to the sub-project from blockchain nodes corresponding to multiple objects to obtain multiple sub-project nodes.
[0068] When it is necessary to explain, a blockchain node can participate in multiple sub-projects. For example, the blockchain node corresponding to the construction unit can participate in each sub-project.
[0069] Afterwards, the master node will use the multiple sub-project nodes as consensus nodes participating in this round of consensus, and then reach consensus on the block.
[0070] By selecting nodes corresponding to the sub-projects to which different project data belong for consensus, the efficiency of consensus can be improved, the time consumption of the consensus process can be reduced, and resource consumption can be reduced. In addition, by setting the nodes corresponding to the sub-projects to which the project data belongs for consensus, and nodes that do not belong to the sub-project do not participate in the consensus, the accuracy of the consensus can be improved and the influence of malicious nodes can be reduced.
[0071] In one embodiment, the multiple sub-project nodes are used as consensus nodes to reach consensus on the block, including: determining the weight scores of the multiple sub-project nodes in this round of consensus and the consensus threshold of this round; broadcasting the block to the multiple sub-project nodes; accumulating the weight scores of the target sub-project nodes, which are the sub-project nodes among the multiple sub-project nodes that have fed back verification to the main node for the block; in response to the accumulated weight scores of the target sub-project nodes exceeding the consensus threshold of this round, the block consensus is passed.
[0072] The embodiments of the present application do not limit how to assign weights to multiple sub-project nodes, and can be set based on experience. The embodiments of the present application do not limit how to set the consensus threshold for this round, and can be set based on experience. In one embodiment, the consensus threshold for this round is k times the sum of the weights of multiple sub-project nodes, where k is a constant greater than 0 and less than 1.
[0073] By assigning different weights to multiple sub-project nodes, more trusted nodes can have a greater impact in the consensus process, further reducing the impact of malicious nodes on consensus and improving the accuracy of consensus results. In addition, trusted nodes often have faster processing and feedback speeds, which can also improve consensus efficiency.
[0074] S204: If the consensus is passed, the block is added to the blockchain.
[0075] By storing the project data in the construction project as the first transaction on the blockchain, the problem of project data being tampered with or lost can be avoided, and the blocks are arranged in chronological order on the blockchain, and the blocks store data, so that querying project data from the blockchain is simpler, more convenient and faster than flipping through paper or electronic files. By obtaining a second transaction including an inspection report obtained by inspecting the project data, and the inspection report including the inspection conclusion, and packaging the first transaction and the second transaction into one block, anomalies in the project data can be discovered more quickly when querying the project data later.
[0076] Furthermore, since the blocks are arranged in chronological order when they are uploaded to the chain, it is easier to trace the abnormal project data when anomalies are found, so as to better manage the construction projects.
[0077] In one embodiment, after S204, the method further includes: when the inspection conclusion indicates that the project data is abnormal, adding the identifier of the block to the project data abnormality table, so as to query the block.
[0078] The embodiment of the present application does not limit which information of the block the block identifier is. For example, the block identifier may be the block number of the block, or the hash value of the block, or the hash value of the previous block, etc.
[0079] By storing the block number corresponding to the project data in the project data anomaly table when the inspection conclusion of the project data indicates that the project data is abnormal, it is possible to better discover abnormal project data when the project data is subsequently checked, thereby better managing the entire construction project.
[0080] In one embodiment, the construction project includes multiple sub-projects, and the master node stores a first correspondence relationship and a second correspondence relationship, wherein the first correspondence relationship is the correspondence relationship between the block identifier and the sub-project, and the second correspondence relationship is the correspondence relationship between the blockchain node and the sub-project. Figure 3 As shown, the process of querying project data may include S301 to S305, wherein the execution order of S302 and S303 may be interchangeable.
[0081] S301, receiving a query request from any blockchain node among the blockchain nodes of the multiple objects, where the query request includes a query identifier, and the query identifier is an identifier of any block.
[0082] The embodiment of the present application does not limit which information of the block the query identifier is specifically. For example, the query identifier can be the block number of the block, or the hash value of the block, or the hash value of the previous block, etc.
[0083] Any blockchain node can initiate a query request to the master node.
[0084] S302: Determine the sub-project to which any blockchain node belongs based on the second corresponding relationship.
[0085] The embodiment of the present application does not limit how the second corresponding relationship specifically reflects the corresponding relationship between the blockchain node and the sub-project. In one embodiment, the second corresponding relationship includes the corresponding relationship between the identifier of each sub-project and the identifier of the blockchain node belonging to the sub-project.
[0086] like Figure 4As shown, taking the example that the construction project includes 2 sub-projects and the multiple blockchain nodes include 5 blockchain nodes, the blockchain nodes corresponding to sub-project 1 are node 1, node 2 and node 4, and the blockchain nodes corresponding to sub-project 2 are node 1, node 2, node 3 and node 5.
[0087] In one embodiment, the query request includes an identifier of any blockchain node. Based on the identifier, the second corresponding relationship is queried to obtain identifiers of one or more sub-projects, thereby determining the sub-project to which the blockchain node belongs.
[0088] like Figure 4 As shown, the sub-projects to which node 1 belongs are: sub-project 1 and sub-project 2.
[0089] S303: Determine the sub-item corresponding to the query identifier according to the first corresponding relationship.
[0090] The embodiment of the present application does not limit how the first corresponding relationship specifically reflects the corresponding relationship between the block and the sub-item. In one embodiment, the first corresponding relationship includes the corresponding relationship between the identifier of the block and the identifier of the sub-item.
[0091] By searching the first corresponding relationship according to the query identifier, the identifier of the sub-item can be obtained, and then the sub-item can be determined.
[0092] It should be noted that the project data stored in a block belongs to the same sub-project.
[0093] S304, when the sub-project to which any blockchain node belongs includes the sub-project corresponding to the query identifier, the project data stored in the block corresponding to the query identifier is fed back to the any blockchain node.
[0094] S305: When the sub-project to which any blockchain node belongs does not include the sub-project corresponding to the query identifier, feedback that there is no query authority is given to any blockchain node.
[0095] By limiting the querying of project data of sub-projects to nodes belonging to the sub-projects, it can not only ensure that the nodes corresponding to the sub-projects can obtain project data related to themselves, but also reduce the joint tampering and falsification of project data required by different sub-projects before uploading to the blockchain, thereby improving the authenticity and credibility of project data of construction projects and reducing the difficulty of construction project management.
[0096] Based on the same inventive concept, the present application also provides a construction project management device in the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.
[0097] Figure 5 A schematic diagram of a construction project management device in an embodiment of the present application is shown. Figure 5 As shown, the device is applied to a master node in a blockchain network, and the blockchain network includes blockchain nodes of multiple objects related to the construction project, including: a first acquisition module 51, used to acquire a first transaction carrying project data of the construction project; a second acquisition module 52, used to acquire a second transaction carrying an inspection report obtained by inspecting the project data, the inspection report including inspection details and inspection conclusions, the inspection details are used to indicate detailed information on the inspection of the project data, and the inspection conclusion is used to indicate whether the project data is abnormal or not; a consensus module 53, used to package the first transaction and the second transaction into a block for consensus; an adding module 54, used to add the block to the blockchain when the consensus is passed.
[0098] In some embodiments, the second acquisition module 52 is used to send the project data to a supervisory agency for inspection; receive an inspection report sent by the supervisory agency for the project data; and create a transaction including the inspection report to obtain the second transaction.
[0099] In some embodiments, the device further comprises an adding module for adding the identifier of the block to the project data anomaly table when the inspection conclusion indicates that the project data is abnormal, so as to query the block.
[0100] In some embodiments, the construction project includes multiple sub-projects; the consensus module 53 is used to package the first transaction and the second transaction into a block; determine the sub-project to which the project data belongs; select the blockchain node of the object corresponding to the sub-project from the blockchain nodes of the multiple objects to obtain multiple sub-project nodes; and use the multiple sub-project nodes as consensus nodes to reach consensus on the block.
[0101] In some embodiments, the consensus module 53 is used to determine the weight scores of the multiple sub-project nodes in this round of consensus and the consensus threshold of this round; broadcast the block to the multiple sub-project nodes; accumulate the weight scores of the target sub-project nodes, which are the sub-project nodes among the multiple sub-project nodes that have fed back verification to the main node for the block; in response to the accumulated weight scores of the target sub-project nodes exceeding the consensus threshold of this round, the block consensus is passed.
[0102] In some embodiments, the construction project includes multiple sub-projects, and the master node stores a first correspondence and a second correspondence, the first correspondence is the correspondence between the block identifier and the sub-project, and the second correspondence is the correspondence between the blockchain node and the sub-project. The device also includes: a query module, used to receive a query request from any blockchain node among the blockchain nodes of the multiple objects, the query request includes a query identifier, and the query identifier is an identifier of any block; according to the second correspondence, determine the sub-project to which the any blockchain node belongs; according to the first correspondence, determine the sub-project corresponding to the query identifier; when the sub-project to which the any blockchain node belongs includes the sub-project corresponding to the query identifier, feedback the project data stored in the block corresponding to the query identifier to the any blockchain node; when the sub-project to which the any blockchain node belongs does not include the sub-project corresponding to the query identifier, feedback to the any blockchain node that there is no query authority.
[0103] The technical solution provided in the embodiment of the present application can avoid the problem of project data being tampered with or lost by storing the project data in the construction project as the first transaction on the blockchain, and the blocks are arranged in chronological order on the blockchain, and the blocks store data, so that querying project data from the blockchain is simpler, more convenient and faster than flipping through paper or electronic files. By obtaining a second transaction including an inspection report obtained by inspecting the project data, and the inspection report including the inspection conclusion, and packaging the first transaction and the second transaction into one block, anomalies in the project data can be discovered more quickly when the project data is subsequently queried.
[0104] Furthermore, since the blocks are arranged in chronological order when they are uploaded to the chain, it is easier to trace the abnormal project data when anomalies are found, so as to better manage the construction projects.
[0105] It should be noted that the first acquisition module 51, the second acquisition module 52, the consensus module 53 and the adding module 54 correspond to S201 to S204 in the method embodiment, and the examples and application scenarios implemented by the above modules and the corresponding steps are the same, but are not limited to the contents disclosed in the above method embodiment. It should be noted that the above modules as part of the device can be executed in a computer system such as a set of computer executable instructions.
[0106] Those skilled in the art will appreciate that various aspects of the present application may be implemented as a system, method or program product. Therefore, various aspects of the present application may be specifically implemented in the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to as "circuit", "module" or "system" herein.
[0107] Refer to the following Figure 6 The electronic device 600 according to this embodiment of the present application is described. Figure 6 The electronic device 600 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0108] like Figure 6 As shown, the electronic device 600 is in the form of a general computing device. The components of the electronic device 600 may include but are not limited to: at least one processing unit 610, at least one storage unit 620, and a bus 630 connecting different system components (including the storage unit 620 and the processing unit 610).
[0109] The storage unit stores program codes, which can be executed by the processing unit 610, so that the processing unit 610 executes the steps of various exemplary embodiments of the present application described in the above "Exemplary Method" section of this specification. For example, the processing unit 610 can execute the following steps of the above method embodiment: S201~S204, S301~S305.
[0110] The storage unit 620 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 6201 and / or a cache memory unit 6202 , and may further include a read-only memory unit (ROM) 6203 .
[0111] The storage unit 620 may also include a program / utility 6204 having a set (at least one) of program modules 6205, such program modules 6205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.
[0112] Bus 630 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
[0113] The electronic device 600 may also communicate with one or more external devices 640 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 600, and / or communicate with any device that enables the electronic device 600 to communicate with one or more other computing devices (e.g., routers, modems, etc.). This communication may be performed through an input / output (I / O) interface 650. In addition, the electronic device 600 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) through a network adapter 660. As shown, the network adapter 660 communicates with other modules of the electronic device 600 through a bus 630. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 600, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.
[0114] Through the description of the above implementation methods, it is easy for those skilled in the art to understand that the example implementation methods described here can be implemented by software, or by combining software with necessary hardware. Therefore, the technical solution according to the implementation method of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the implementation method of the present application.
[0115] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart may be implemented as a computer program product, which includes: a computer program, which implements the above-mentioned construction project management method when executed by a processor.
[0116] In an exemplary embodiment of the present application, a computer-readable storage medium is also provided, which may be a readable signal medium or a readable storage medium. The computer-readable storage medium stores a program product capable of implementing the above method of the present application.
[0117] In some possible implementations, various aspects of the present application may also be implemented in the form of a program product, which includes a program code. When the program product is run on a terminal device, the program code is used to enable the terminal device to execute the steps of various exemplary implementations of the present application described in the above “Exemplary Method” section of this specification.
[0118] More specific examples of computer-readable storage media in the present application may include, but are not limited to, an electrical connection having one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0119] In the present application, a computer readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, wherein a readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A readable signal medium may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0120] Alternatively, the program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.
[0121] In specific implementation, the program code for performing the operation of the present application can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, etc., and also conventional procedural programming languages such as "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, as an independent software package, partially on the user computing device and partially on the remote computing device, or completely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).
[0122] It should be noted that, although several modules or units of the equipment for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into being embodied by multiple modules or units.
[0123] In addition, although the steps of the method in the present application are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.
[0124] Through the description of the above implementation methods, it is easy for those skilled in the art to understand that the example implementation methods described here can be implemented by software, or by combining software with necessary hardware. Therefore, the technical solution according to the implementation method of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes a number of instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the implementation method of the present application.
[0125] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. The present application is intended to cover any modification, use or adaptation of the present application, which follows the general principles of the present application and includes common knowledge or customary techniques in the art that are not disclosed in the present application. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present application are indicated by the appended claims.
Claims
1. A construction project management method, characterized in that: A master node applied to a blockchain network, wherein the blockchain network includes blockchain nodes of multiple objects related to the construction project, including: obtaining a first transaction carrying project data for the construction project; obtaining a second transaction carrying an inspection report obtained by inspecting the project data, wherein the inspection report includes inspection details and inspection conclusions, wherein the inspection details are used to indicate detailed information of the inspection of the project data, and the inspection conclusions are used to indicate whether the project data is abnormal or not; Packing the first transaction and the second transaction into a block for consensus; If consensus is reached, the block is added to the blockchain; The construction project includes multiple sub-projects, and the master node stores a first corresponding relationship and a second corresponding relationship, the first corresponding relationship is the corresponding relationship between the block identifier and the sub-project, and the second corresponding relationship is the corresponding relationship between the blockchain node and the sub-project. The method also includes: receiving a query request from any blockchain node among the blockchain nodes of the multiple objects, the query request includes a query identifier, and the query identifier is an identifier of any block; according to the second corresponding relationship, determining the sub-project to which the any blockchain node belongs; according to the first corresponding relationship, determining the sub-project corresponding to the query identifier; when the sub-project to which the any blockchain node belongs includes the sub-project corresponding to the query identifier, feeding back to the any blockchain node the project data stored in the block corresponding to the query identifier; when the sub-project to which the any blockchain node belongs does not include the sub-project corresponding to the query identifier, feeding back to the any blockchain node that there is no query authority; When the inspection conclusion indicates that the project data is abnormal, the identifier of the block is added to the project data abnormality table to facilitate querying the block.
2. The construction project management method according to claim 1, characterized in that: The obtaining of a second transaction carrying an inspection report obtained by inspecting the project data comprises: Send said project data to a supervisory authority for inspection; Receiving an inspection report sent by the supervisory agency for inspecting the project data; A transaction including the inspection report is created to obtain the second transaction.
3. The construction project management method according to claim 1, characterized in that: The construction project includes a plurality of sub-projects; The step of packaging the first transaction and the second transaction into a block for consensus includes: Packing the first transaction and the second transaction into a block; Determining the subproject to which the project data belongs; Selecting a blockchain node of an object corresponding to the sub-project from the blockchain nodes of the multiple objects to obtain multiple sub-project nodes; The multiple sub-project nodes are used as consensus nodes to reach consensus on the block.
4. The construction project management method according to claim 3, characterized in that: The using the multiple sub-project nodes as consensus nodes to reach consensus on the block includes: Determine the weights of the multiple sub-project nodes in this round of consensus and the consensus threshold for this round; Broadcasting the block to the multiple sub-project nodes; Accumulate the weight points of the target sub-project nodes, where the target sub-project nodes are the sub-project nodes that have passed the verification feedback to the master node for the block among the multiple sub-project nodes; In response to the accumulated weight score of the target sub-project node exceeding the consensus threshold of this round, the block consensus is passed.
5. A construction project management device, characterized in that: A master node applied to a blockchain network, wherein the blockchain network includes blockchain nodes of multiple objects related to the construction project, including: A first acquisition module, configured to acquire a first transaction carrying project data of the construction project; a second acquisition module, configured to acquire a second transaction carrying an inspection report obtained by inspecting the project data, wherein the inspection report includes inspection details and inspection conclusions, wherein the inspection details are used to indicate detailed information of the inspection of the project data, and the inspection conclusions are used to indicate whether the project data is abnormal or not; A consensus module, used to package the first transaction and the second transaction into a block for consensus; An adding module is used to add the block to the blockchain when consensus is passed; The construction project includes multiple sub-projects, and the master node stores a first corresponding relationship and a second corresponding relationship, wherein the first corresponding relationship is a corresponding relationship between a block identifier and a sub-project, and the second corresponding relationship is a corresponding relationship between a blockchain node and a sub-project. The device further includes: a query module, configured to receive a query request from any blockchain node among the blockchain nodes of the multiple objects, wherein the query request includes a query identifier, and the query identifier is an identifier of any block; according to the second corresponding relationship, determining the sub-project to which the any blockchain node belongs; according to the first corresponding relationship, determining the sub-project to which the query identifier corresponds; when the sub-project to which the any blockchain node belongs includes the sub-project to which the query identifier corresponds, feeding back to the any blockchain node the project data stored in the block to which the query identifier corresponds; when the sub-project to which the any blockchain node belongs does not include the sub-project to which the query identifier corresponds, feeding back to the any blockchain node that there is no query authority; The adding module is used to add the identifier of the block to the project data anomaly table when the inspection conclusion indicates that the project data is abnormal, so as to query the block.
6. An electronic device, characterized in that: include: processor; as well as A memory, configured to store executable instructions of the processor; The processor is configured to execute the construction project management method according to any one of claims 1 to 4 by executing the executable instructions.
7. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the construction project management method according to any one of claims 1 to 4 is implemented.
8. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the construction project management method according to any one of claims 1 to 4 is implemented.
Citation Information
Patent Citations
Weight-based block chain consensus method and system, storage medium and electronic equipment
CN109559120A
Block chain-based agritainment supervision system and method
CN114091115A