Document storage method and device, computer equipment and storage medium
By generating the target identifier of the target document and saving it in association with multiple directories, the storage and management of the same document in multiple directories is solved, efficient storage and permission control of the document library is realized, and document updates and authorization management is simplified.
Patent Information
- Application Number
- CN202310723566.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-16
- Publication Date
- 2024-12-17
AI Technical Summary
When the existing document management system needs to be owned by multiple directories at the same time in the case of multiple shared access, the document storage space is increased and the update and authorization management is complicated, so it is impossible to achieve unified management of the same document in multiple directories. and personalized permission control.
By generating the target identifier of the target document and associating it with multiple directories, the same document can be achieved coexistence and update in multiple directories, and the directory label is used for permission control, supporting document upload, download, update and authorization management.
It realizes unified storage and management of the same document in multiple directories, avoids waste of storage space caused by document copying, simplifies update and authorization management, and improves the management efficiency and security of the document library.
Smart Images

Figure CN119149486A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of document storage technology, and more particularly to a document storage method, apparatus, computer equipment, and storage medium. Background Art
[0002] In the related art, the document library directory structure of a document management system for shared access by multiple people generally exists in the form of folders, and a document can be uploaded to one of the folders.
[0003] However, with the development of modern society, enterprises or projects (hereinafter referred to as "organizations") have multiple cross-business extensions and organizational structure matrix management. The documents output by the organization will also have multiple characteristics and need to be divided according to different dimensions (such as by responsible team, business stage, document type, etc.). The same document may belong to multiple directories. The method used in related technologies is to copy the document into multiple copies and store them in different directories. This method will increase the space for document storage. Summary of the invention
[0004] The embodiments of the present application provide a document storage method, apparatus, device and storage medium, which can solve the problem that the same document belongs to multiple directories, resulting in an increase in the document storage space.
[0005] In order to solve the above technical problems, this application is implemented as follows:
[0006] In a first aspect, a document storage method is provided, comprising: receiving a document upload request sent by a first client logged in with a first account, wherein the document upload request carries an uploaded target document and multiple directory tags of the target document; generating a target identifier of the target document; saving the target document to a document library, and associating the target identifier with multiple first document directories in the document library directory for storage, wherein the first document directory is a document directory corresponding to the directory tag, and each subdirectory in the document library directory has only one parent directory.
[0007] In a second aspect, a document storage device is provided, comprising: a receiving module, used to receive a document upload request sent by a first client logged in with a first account, wherein the document upload request carries an uploaded target document and multiple directory tags of the target document; a generating module, used to generate a target identifier of the target document; a storage module, used to save the target document to a document library, and associate the target identifier with multiple first document directories in the document library directory for storage, wherein the first document directory is a document directory corresponding to the directory tag, and each subdirectory in the document library directory has only one parent directory.
[0008] According to a third aspect, an electronic device is provided, comprising a processor and a memory, wherein the memory stores programs or instructions that can be run on the processor, and when the programs or instructions are executed by the processor, the steps of the method described in the first aspect are implemented.
[0009] In a fourth aspect, a readable storage medium is provided, wherein at least one program or instruction is stored in the readable storage medium, and the program or instruction is loaded and executed by a processor to implement the steps of the method described in the first aspect.
[0010] In the technical solution provided by the embodiment of the present application, after receiving a document upload request carrying a target document and multiple directory tags of the target document sent by a first client logged in with a first account, a target identifier of the target document is generated, and then the target document is saved to a document library, and the target identifier is associated with a first document directory corresponding to the multiple directory tags and saved. Therefore, when the uploaded target document belongs to multiple directories, only one copy of the target document needs to be saved to the document library, and the target identifier of the target document is associated with the first document directory corresponding to the multiple directory tags and saved. This allows the target document to be found from multiple directories, thereby achieving the simultaneous association of the same document with multiple directories without increasing the space for storing documents.
[0011] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0013] Figure 1 A flowchart of a document storage method provided by an exemplary embodiment of the present application is shown;
[0014] Figure 2 A schematic diagram showing the correspondence between documents and directories provided by an exemplary embodiment of the present application is shown;
[0015] Figure 3 A schematic diagram showing the association relationship between a document identifier and a directory provided by an exemplary embodiment of the present application is shown;
[0016] Figure 4 A schematic diagram showing a directory structure provided by an exemplary embodiment of the present application is shown;
[0017] Figure 5 A schematic diagram showing directory creation / deletion / renaming provided by an exemplary embodiment of the present application is shown;
[0018] Figure 6 A schematic diagram of directory authorization provided by an exemplary embodiment of the present application is shown;
[0019] Figure 7 A schematic diagram of a document upload / modification process provided by an exemplary embodiment of the present application is shown;
[0020] Figure 8 A schematic diagram of document authority management provided by an exemplary embodiment of the present application is shown;
[0021] Fig. 9 A schematic diagram of the structure of a document storage device provided by an exemplary embodiment of the present application is shown;
[0022] Fig.10 It is a structural block diagram of an electronic device according to an exemplary embodiment. DETAILED DESCRIPTION
[0023] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0024] Documents generated during the operation of an organization are important process assets of the organization. They carry records of the business activities of the organization's operations and accumulate experience and knowledge. Some documents are even an integral part of the organization's delivery of products or services to external customers, affecting whether the organization can collect payments from customers in a timely manner. In today's digital context, the organization's documents are often output as electronic documents (including originals and scanned copies) and uploaded and stored in the document library of the information system for shared access by multiple people.
[0025] The documents of an organization generally have the following characteristics: 1) they are generated in different business fields; 2) they are output at different business stages; 3) they are output by different business departments / individuals; 4) they have different purposes; 5) they contain different levels of confidentiality of information; 6) they are distributed to different scopes. In view of the above characteristics, the documents of an organization have different classification methods according to different dimensions. Generally, when designing the directory structure of an electronic document library, an organization selects one or several dimensions that are of key significance to it and designs the directory based on these dimensions. Whether the designed directory structure is reasonable, scientific and easy to use can generally be judged according to the following principles: 1) Whether the directory of the document library is complete, that is, whether the directory covers all document categories that the organization needs to store; 2) Whether the document directory is easy for users to understand and is mutually exclusive, that is, whether the document uploader can determine where to upload the document he output through the document library directory, or whether the document downloader can accurately and quickly locate where the document he wants to find is stored through the document library directory; 3) Organization members (including document uploaders and downloaders) who use the document library can easily reach a consensus on the understanding of the document library directory without obvious ambiguity; 4) The document categories referred to in the directory have moderate granularity, which will not cover a wide range that makes it difficult for users to find the required documents in the directory, nor will it be too fine-grained to cause the directory hierarchy to be too deep.
[0026] Even if an organization designs a relatively perfect document library directory according to the above principles, there are still some problems and requirements that are inevitable. For example, when designing a document library directory for an engineering project, the following scenarios are often encountered:
[0027] Scenario 1: Documents belong to multiple directories at the same time. If L2 directories such as "Project System" and "Meeting Minutes" are designed based on document types under the L1 directory of "Project Management", and L2 directories such as "Survey and Design", "Equipment Installation", and "Project Acceptance" are designed based on business stages under the L1 directory of "Project Implementation", then the meeting minutes documents of the survey and design team, equipment installation team, and customers belong to both "Meeting Minutes" and "Survey and Design" and "Equipment Installation" businesses, and the project acceptance process system documents belong to both "Project System" and "Project Acceptance".
[0028] Scenario 2: The document contains document contents from multiple directories. Under the L2 directory of "Survey and Design", two L3 directories, "Survey Report" and "Design Drawings", are designed based on document categories. However, in some organizations, due to customer preferences and requirements, the survey report and design drawings need to be integrated into one document for delivery to customers. In this case, these two documents have both "Survey Report" attributes and "Design Drawings" attributes. When users view the "Survey Report" or "Design Drawings" directories, they hope to be able to view the document.
[0029] Scenario 3: Document upload needs to be controlled based on the directory. The organization's users include internal and external users from various teams, and the number of people may be very large. In order to ensure that the person responsible for the document uploads the document to the designated directory, to prevent irrelevant personnel from uploading documents that do not meet the directory requirements in the directory, and to ensure that the document uploads to the document library are orderly and not messy, it is necessary to be able to control the upload group based on the directory.
[0030] Scenario 4: Document download permissions need to be controlled based on a single document. Although the documents are in the same directory, different people need to be granted different download permissions because of the different levels of confidentiality of the information they contain. Therefore, the document management system needs to be able to control document download permissions based on documents, rather than based on directories.
[0031] Scenario 5: Document updates and authorization permissions need to be controlled based on a single document and must meet the needs of collaborative updates and authorization by multiple people.
[0032] Scenario 6: Some document uploaders are Party B, whose main responsibility is to upload documents to the designated directory, but they do not pay attention to or do not have the ability and necessary information to decide which groups of people should be authorized to download the document. Therefore, it is necessary to provide such groups with convenient document authorization channels and tools to simplify the document upload operation.
[0033] Traditional information systems provide document library directory creation and directory-based permission control functions, but each directory created by these systems exists in the form of an "entity" folder, and documents uploaded by users cannot have multiple directory attributes at the same time, or appear in multiple directories at the same time; in addition, these information systems mostly control the permission of documents based on directory granularity, which cannot meet the scenario of personalized authorization for different documents in the same directory. In response to this problem, the embodiment of the present application provides a document storage method to solve this technical problem. The technical solution provided by the embodiment of the present application is described below in conjunction with the accompanying drawings.
[0034] Figure 1 A schematic diagram of a document storage method provided by an exemplary embodiment of the present application is shown. Figure 1 As shown, the method mainly includes the following steps.
[0035] Step 101: receiving a document upload request sent by a first client logged in with a first account.
[0036] The document upload request carries the uploaded target document and multiple directory tags of the target document.
[0037] The document storage method provided in the embodiment of the present application can be applied to a document management system with shared access by multiple people, and is particularly suitable for a document management system with strict control requirements on permissions such as document upload, download, update, and deletion.
[0038] For example, a user (who may be referred to as a document creator) may upload a local document (i.e., the target document) on a first client logged in with a first account. For example, the first client may display a directory in a document library in which the first account has the authority to upload documents, and the user may upload one or more local documents by clicking an "Upload Document" button.
[0039] Optionally, the user can also set the directory tag attribute of the target document to be uploaded. For example, if the user has selected a directory before clicking the "Upload Document" button, the directory will automatically appear in the directory tag attribute; if the user has not selected any directory before clicking the "Upload Document" button, the directory tag attribute of the file will be empty. The document creator can set one or more directory tags for the document, but can only select directories for which he has been granted upload permissions as tags.
[0040] After the user clicks "Upload Document", the first client sends the document upload request to the server. The document upload request carries the target document selected by the user to upload and multiple directory tags set by the user for the target document.
[0041] It should be noted that, although the embodiment of the present application is described by taking the target document having multiple directory tags as an example, it is not limited to this, and the target document may also have only one directory tag.
[0042] In one implementation, the first client may also authorize the target document. Therefore, in this implementation, the method may also include the following steps:
[0043] Step 1, receiving a second permission setting request sent by a first client, wherein the second permission setting request is used to authorize a target document;
[0044] Step 2: based on the second permission setting request, obtain and store an account with a second permission for the target document, wherein the second permission includes at least one of the following: update permission for the target document, download permission for the target document.
[0045] The target document update permission may include permission to update the target document's directory tag. For example, permission to add the target document's directory tag. Alternatively, the target document update permission may also include permission to update an account with a second permission for the target document, for example, adding or deleting an account with a second permission for the target document. Alternatively, the target document update permission may also include permission to update the target document's content, for example, updating the target document from a first version to a second version.
[0046] In the embodiment of the present application, an account with update authority for a target document may also be referred to as a co-maintainer of the target document.
[0047] In the above implementation, the second permission setting request can also be used to indicate that the target document has the same authorization as the first document directory, that is, the target document can inherit the permissions of the first document directory, and when the permissions of the first document directory change, the permissions of the target document also change accordingly.
[0048] In the above implementation, the above second permission setting request may be sent together with the above document upload request, or may be sent after the above document upload request.
[0049] For example, the document creator can set the co-maintainer (i.e., account with update permission of the target document) and downloader group (i.e., account with download permission of the target document) of the target document on the first client, and then send it to the server through the second permission setting request. Among them, the document creator can choose to "inherit" the co-maintainer and downloader group of this directory, or choose to "customize" the co-maintainer and downloader group. If the former is selected, as long as the co-maintainer and downloader group of the directory where the document is located changes, the co-maintainer and downloader group of the document will also be automatically adjusted accordingly; if the latter is selected, no matter how the co-maintainer and downloader group of the directory where the document is located changes, the co-maintainer and downloader group of the document will remain unchanged.
[0050] Optionally, the download permissions of the target document may include three types: read-only, editable, and uncontrolled. After downloading a document, an account with read-only permissions needs to install a specific document security tool on the local computer to open and view the document content, but cannot edit or print it; after downloading a document, an account with editable permissions needs to install a specific document security tool on the local computer to open and view the document content, but can also edit and print it; and after downloading a document, an account with uncontrolled permissions does not need to install a document security tool on the local computer, and can freely open, view, edit, print, and forward the document.
[0051] In the above implementation, after the target document is authorized, the permission information of the target document can be stored in the document permission control device. When granting update and download permissions to the document, it is necessary to query the permission information in the document permission control device to determine whether the user can authorize the document; after successful authorization, the latest directory permissions are stored in the document permission control device.
[0052] Through the above implementation, personalized authorization can be achieved for different documents in the same directory.
[0053] Step 102: Generate a target identifier for the target document.
[0054] In an embodiment of the present application, after receiving the target document uploaded by the first client, a target identifier is generated for the target document, and the target identifier is unique in the document management system.
[0055] Step 103, save the target document to the document library, and associate the target identifier with a plurality of first document directories in the document library directory for storage, wherein the first document directory is a document directory corresponding to the directory tag, and each subdirectory in the document library directory has only one parent directory.
[0056] In an embodiment of the present application, if the first client sets multiple directory tags for the target document, what is stored in the document library is still one document, and the document ID is also the same. The document ID is just associated with different multiple directories and saved, so that the document can be viewed in multiple different directories. Instead of uploading multiple copies of the document to different directories, the storage space of the document can be avoided.
[0057] In addition, if a document is copied into multiple copies and stored in multiple directories, when the document needs to be updated later, the user needs to go to multiple directories to update it, so that the document with the same name can always be the latest no matter which directory the user searches for. This leads to higher requirements for document updaters and a large workload; if the user only updates one of the documents, it may be difficult for the downloading user to identify which document is the truly usable document. However, with the technical solution provided in the embodiment of the present application, a document is still stored in the document library, and each time a document is updated, only the document needs to be updated, without having to update it separately in each directory, which saves the user's workload and reduces errors.
[0058] In the embodiment of the present application, a tabbed document library directory may be used, such as Figure 2As shown, a document entity and a label-based directory have a 1:1 or 1:n relationship, and documents with the same ID in different directories are stored in the same source. The above-mentioned documents of customers can be stored in the document cloud (i.e., document library). Each document entity has a unique document ID. When each document is uploaded to the document cloud, the "document directory" attribute needs to be set for it, and at least one directory must be set for it, and the maximum number of directories created by this system cannot exceed. If multiple "document directories" are set for a document entity, the document will appear in multiple directories of the document library at the same time.
[0059] One implementation method of associating the target identifier with multiple first document directories may be: storing the target identifier in the first document directories corresponding to the multiple directory tags. In this implementation method, the target identifier of the target document may be stored in each first document directory, so that the document in the first document directory may be known through the document identifier stored in the first document directory.
[0060] Another implementation of associating and storing the target identifier with the multiple first document directories may be: storing the association relationship between the target identifier of the target document and the multiple directory tags. Figure 3 As shown in the association relationship, in this implementation, each document has one or more directory tags, that is, a document can appear in multiple directories; multiple documents can have the same directory tag, that is, multiple documents can be displayed in the same directory. The storage relationship between documents and directories is an n:n relationship. Optionally, the association relationship between document identifiers and directory tags can be stored in the document directory.
[0061] In one implementation, before step 101, the method may further include the following steps:
[0062] Step 1: receiving a creation request sent by a second client logged in with a second account, wherein the creation request is used to request creation of a first document directory of a document library;
[0063] Step 2: When it is determined that the second account has the directory creation permission, create a first document directory according to the creation request, and store the directory relationship between the first document directory and the parent document directory of the first document directory.
[0064] In an embodiment of the present application, a second account with directory creation permission can send a creation request to create a first document directory through a second client. The creation request can carry the name of the first document directory and the parent directory of the first document directory. After receiving the creation request, the server creates the first document directory and stores the directory relationship between the first document directory and the parent document directory of the first document directory.
[0065] In the embodiment of the present application, a document directory can only have one parent directory, and the directory system is a tree structure relationship. Figure 4 Optionally, the directory relationship may be stored in a directory relationship storage device.
[0066] The second account with the directory creation permission may be a library administrator, and the library administrator may be set by the system administrator for the document library.
[0067] In one implementation, after creating the first document directory, permissions may be set for the first document directory. Therefore, in this implementation, after storing the directory relationship between the first document directory and the parent document directory of the first document directory, the method may further include the following steps:
[0068] Step 1: receiving a first permission setting request sent by a third client logged in with a third account, wherein the first permission setting request is used to authorize a first document directory;
[0069] Step 2: When it is determined that the third account has the authority to authorize the first document directory, based on the first authority setting request, obtain and store an account with the first authority for the first document directory.
[0070] In this implementation, the first permission includes at least one of the following:
[0071] (1) Management authority of the first document directory.
[0072] The management authority of the first document directory refers to the authority to create subdirectories for the first document directory, rename the first document directory, authorize the first document directory, remove documents under the first document directory, etc. An account with management authority for the first document directory may also be called a directory administrator.
[0073] (2) Document upload permission for the first document directory.
[0074] That is, only an account with the permission to upload documents to the first document directory can set a directory tag corresponding to the first document directory for the uploaded document when uploading the document. Optionally, after the above step 101, the method may further include: determining that the first account is an account with the permission to upload documents to the first document directory, that is, only when it is determined that the first account is an account with the permission to upload documents to the first document directory, step 102 is performed.
[0075] like Figure 5As shown, when executing document upload and selecting document directory tags, the permissions stored in the directory permission storage module and the library permission storage module can be queried to determine whether the user has the authority to upload documents and select document directories; after the document is successfully uploaded or the document directory tag is successfully selected, the latest directory tag of the document is stored in the document directory tag storage module.
[0076] (3) Document update permission for the first document directory (also called maintenance permission). The document update permission for the first document directory refers to the permission to update the documents under the first document directory, for example, the permission to update the directory associated with the documents under the first document directory, or to update the documents under the first document directory.
[0077] (4) Download permissions for the first document directory.
[0078] Optionally, the download permissions for the first document directory may include three types: read-only, editable, and uncontrolled. After downloading the documents in the first document directory, an account with read-only permissions needs to install a specific document security tool on the local computer to open and view the document content, but cannot edit or print; after downloading the documents in the first document directory, an account with editable permissions needs to install a specific document security tool on the local computer to open and view the document content, but can also edit and print; and after downloading the documents in the first document directory, an account with uncontrolled permissions does not need to install a document security tool on the local computer, and can freely open, view, edit, print, and forward the documents.
[0079] In an embodiment of the present application, the second account with directory creation permission can be a library administrator or a directory administrator, and the library administrator can be set by a system administrator for a document library, and the directory administrator can be set by a library administrator or a system administrator for a directory of the document library, and the library administrator can create a tree directory structure for the document library, and the directory administrator can create subdirectories on the corresponding directories.
[0080] In the above implementation, the first permission setting request can also be used to indicate that the first document directory has the same authorization as the parent directory of the first document directory. That is, the first permission setting request can also set the first document directory to inherit the permissions of the parent directory, that is, when authorizing the directory, you can customize it or choose to inherit the permissions of its parent directory. In the case of choosing to inherit the parent directory, when the parent directory permissions change, the first document directory permissions will also change accordingly.
[0081] In the above implementation, the user of the third account can grant the first document directory a directory administrator (i.e., an account with maintenance and management authority for the first document directory), a directory document upload group (i.e., an account with document upload authority for the first document directory), a directory document co-maintainer (i.e., an account with document update authority for the first document directory), and a directory document download group (i.e., an account with download authority for the first document directory) through the third client. The user can choose to "inherit" the authority of the parent directory by default, or can choose to "customize" the authority. If "inherit" the authority of the parent directory is selected, when the directory document upload group, co-maintainer, or download group of the parent directory is modified, the directory document upload group, co-maintainer, and download group of the sub-directory are also automatically adjusted accordingly; if "customize" authority is selected, no matter how the directory document upload group, co-maintainer, and download group of the parent directory change, the directory administrator and document upload group of the sub-directory remain unchanged.
[0082] It should be noted that the permissions granted to directory administrators and document uploaders for a directory will take effect directly, and the relevant personnel can manage the directory or upload documents under the directory after authorization; however, the permissions granted to co-maintainers and document downloaders for a directory will not take effect directly on the documents under the directory. Ultimately, who can download which documents will be determined by the authorization of the document creator or co-maintainer of the document. Therefore, the co-maintainers and document downloaders set for a directory are actually for the convenience of the document creator / co-maintainer under the directory to inherit and use when authorizing documents, so as to improve authorization efficiency and reduce subsequent maintenance costs.
[0083] In the embodiment of the present application, the account with directory management (including but not limited to creation, deletion, renaming, etc.) rights and the account with directory authorization rights under the document library can be stored through the library rights storage module, and the rights of each directory can be stored through the directory rights storage module. Figure 6 As shown in the figure, when creating, deleting or renaming a directory, the permission information in the library permission storage module and the directory permission storage module can be queried to determine whether the user has the permission to create, delete or rename the directory; after successfully creating, deleting or renaming the directory, the storage relationship between the updated directory and its parent directory is stored in the directory relationship storage module. Figure 7 As shown, the permission information in the library permission storage module and the directory permission storage module can be queried to determine whether the user has permission authorization; after the directory authorization is successful, the latest directory permission is stored in the directory permission storage module.
[0084] In one implementation, after step 103, the method may further include the following steps:
[0085] Step 1: receiving a document update request sent by a fourth client logged in with a fourth account, wherein the document update request is used to request to update a directory tag of a target document or an account with a second permission of the target document;
[0086] Step 2: When it is determined that the fourth account has the update permission for the target document, the first document directory associated with the target identifier is updated or the account with the second permission for the target document is updated according to the document update request.
[0087] In one implementation, the user may also query the documents in the document library. Therefore, in this implementation, the method may also include the following steps:
[0088] Step 1, receiving a first query request sent by a fifth client logged in with a fifth account, wherein the first query request is used to request to query documents in a second document directory for which the fifth account has download permission;
[0089] Step 2, obtaining an identifier of a first document in the second document directory for which the fifth account has download permission;
[0090] Step 3: Return the identifier of the first document to the fifth client.
[0091] For example, a user can click on a directory on the fifth client to send a query request to view a list of all documents in the directory that he has viewing permissions and has set a label for the directory. After receiving the query request, the server returns the corresponding document list to the fifth client for display.
[0092] In another implementation, the user may also perform a query by setting a query condition. Therefore, in this implementation, the method may further include the following steps:
[0093] Step 1, receiving a second query request sent by a fifth client logged in with a fifth account, wherein the second query request is used to request to query documents that meet the query conditions, and the query conditions include at least one of the following: a directory range to be queried (for example, the entire library, or the indicated directory and all subdirectories, or only the currently selected directory), a directory (for example, the name of the directory), a document uploader, and an upload time;
[0094] Step 2, obtaining an identifier of a second document that meets the query condition;
[0095] Step 3: Return the identifier of the second document to the fifth client.
[0096] For example, users can use the advanced query function in the fifth client to enter query conditions according to the query scope (whole library / directory and all sub-directories / current directory only), directory, document creator, upload time, etc. to find documents that meet the conditions.
[0097] In an embodiment of the present application, document upload operations can be performed by the upload group specified by the directory, document update and authorization operations are performed by the document creator and co-maintainers, and permission control can be performed based on a single document, and document downloads are performed by the downloading group specified by the document creator or co-maintainer, and different types of document download permissions (read-only, editable, uncontrolled) can be used to control the operations that users can perform on the document after downloading it locally, thereby better ensuring document security.
[0098] Figure 8 A schematic diagram of a document rights management process in an embodiment of the present application is shown. Figure 8 As shown, in the embodiment of the present application, document permission management may mainly include the following steps:
[0099] Step 801, the system authority administrator authorizes the library and grants library administrator authority and library document upload authority to one or more accounts. The library administrator authority has directory administrator authority for all directories, and can view and delete all document lists under the library and change the creator. The library document upload authority has the authority to upload documents in all directories of the library.
[0100] Step 802: a library administrator or a directory administrator (equivalent to the second client logged in with the second account mentioned above) customizes the directory as needed and creates a tree-like directory structure.
[0101] In step 803, the library administrator or directory administrator (equivalent to the third client logged in with the third account mentioned above) authorizes the directory and grants directory administrator privileges, directory document upload privileges, document co-maintainer, and document download privileges to one or more accounts. The directory administrator has directory administrator privileges for all subordinate directories and can create subdirectories for the directory, rename the directory, delete the directory, authorize the directory, and remove documents under the target. Directory document upload privileges are privileges to upload documents in the directory. Document co-maintainer and document download privileges refer to privileges to update and download documents in the directory.
[0102] It should be noted that the permissions granted to directory administrators and document uploaders for a directory will take effect directly, and the relevant personnel can manage the directory or upload documents under the directory after authorization; however, the permissions granted to co-maintainers and document downloaders for a directory will not take effect directly on the documents under the directory. Who can download which documents will ultimately be subject to the document creator / co-maintainer's authorization of the document. Therefore, the co-maintainers and document downloaders set for a directory are actually for the convenience of the document creator / co-maintainer under the directory to inherit and use when authorizing documents, to improve authorization efficiency and reduce subsequent maintenance costs.
[0103] Step 804: The document creator (equivalent to the first client logged in with the first account mentioned above) uploads the target document and sets one or more directory tags for the target document.
[0104] Optionally, step 804 may include the following steps:
[0105] Step 1: Upload local documents. In the document library, select a directory where you have the authority to upload documents, click the "Upload Documents" button, and upload one or more local documents.
[0106] Step 2: Set the directory tag attributes of the document. If the user has selected a directory before clicking the "Upload Document" button, the directory will automatically appear in the directory tag attributes; if the user has not selected any directory before clicking the "Upload Document" button, the directory tag attributes of the file will be empty. The document creator can set one or more directory tags for the document, but can only select the directories for which he has been granted upload permissions as tags.
[0107] Step 3: Set the co-maintainers and downloaders of the document. You can choose to "inherit" the co-maintainers and downloaders of this directory, or you can choose to "customize" the co-maintainers and downloaders. If you choose the former, as long as the co-maintainers and downloaders of the directory where the document is located change, the co-maintainers and downloaders of the document will also be automatically adjusted accordingly; if you choose the latter, no matter how the co-maintainers and downloaders of the directory where the document is located change, the co-maintainers and downloaders of the document will remain unchanged.
[0108] It should be noted that if multiple directory tags are set for a document, the same document is still stored in the data, and the document ID is also the same. The document can only be viewed in multiple different directories, not multiple copies of the document uploaded to different directories.
[0109] Step 805: The document creator or co-maintainer authorizes the document.
[0110] Step 806: The document downloader (equivalent to the fifth client logged in with the fifth account) searches, downloads and uses the document. The user can click on a directory to view a list of all documents in the directory that he has the authority to view and has set the directory label; he can also use the advanced search function to enter the search conditions according to the search scope (whole library / directory and all sub-directories / current directory only), directory, document creator, upload time, etc. to find documents that meet the conditions. Support single document download and batch download functions.
[0111] In the technical solution provided in the embodiment of the present application, the authorization objects (individual users, user groups, system roles) of various types of document permissions are constrained, with the purpose of controlling the authorization scope of individual more sensitive permission types to avoid users from over-authorizing a large range of users. In fact, which permission type controls the authorization object can be customized and developed according to the needs of the business system. In addition, setting the directory administrator to have the administrator authority of all sub-directories by default is to facilitate authorization. In fact, if you want to set up independent directory administrators for directories at all levels, you can customize and develop according to the needs of the business system. And the "inherit" and "custom" attributes of the directory upload group, directory document co-maintainer, and directory document download group are set together. Once customization is selected, these types of permissions must be customized. In fact, "inherit" and "custom" options can be provided independently for these permission types, which will make user authorization more flexible and can be customized and developed according to the needs of the business system.
[0112] By adopting the technical solution provided in the embodiment of the present application, a label directory can be created for the document library, and the same document can be queried under multiple directories, solving the problem of difficulty in locating the document storage path when a document has multiple directory attributes, so that the document downloader can view and download the documents related to a certain directory as long as he finds a directory, without having to try to find it in other directories that may contain the document. And by setting the directory administrator's authority, the label directory management authority can be decentralized, effectively reducing the directory authority maintenance workload of the document library administrator. It is also possible to control the document upload group under the label directory by setting the document upload authority, and accurately control the document upload authority according to the document category and the user group that uploads the document of this category, ensuring that the document is uploaded in an orderly manner, and avoiding users from uploading documents to the wrong directory. In addition, in the embodiment of the present application, the co-maintainer authority of each document under the label directory can be independently controlled to meet the scenario of multiple people collaboratively updating and maintaining the authority of the same document, and improve communication and collaboration efficiency. In addition, in the embodiment of the present application, the download authority of each document under the label directory can be independently controlled to ensure document security and avoid excessive dissemination of information. In an embodiment of the present application, when authorizing a directory, it can support one-click inheritance of the directory upload group, directory document co-maintainer, and directory document downloader group of the parent directory, significantly reducing the directory authorization burden of the library administrator; when authorizing a document, it can support one-click inheritance of the directory document co-maintainer and directory document downloader group of the directory where the document is located, significantly reducing the document authorization burden of the document creator.
[0113] Fig. 9 A block diagram of a document storage device provided by an exemplary embodiment of the present application is shown. The document storage device can implement the following Figures 2 to 8 All or part of the content of any of the illustrated embodiments, the document storage device 900 mainly includes: a receiving module 901, used to receive a document upload request sent by a first client logged in with a first account, wherein the document upload request carries an uploaded target document and multiple directory tags of the target document; a generating module 902, used to generate a target identifier of the target document; a storage module 903, used to save the target document to a document library, and store the target identifier in association with a first document directory corresponding to the multiple directory tags.
[0114] In a specific application, the storage module 903 may include the above-mentioned directory authority storage module, library authority storage module, document directory tag storage module and directory relationship storage module.
[0115] In one implementation, the associating and saving the target identifier with the first document directories corresponding to the plurality of directory tags includes:
[0116] storing the target identifier in the first document directory corresponding to the plurality of directory tags; or,
[0117] The association relationship between the target identifier and the plurality of directory tags is stored.
[0118] In one implementation, the receiving module 901 is also used to receive a creation request sent by a second client logged in with a second account, wherein the creation request is used to request the creation of a first document directory of the document library; the storage module 903 is also used to, when it is determined that the second account has directory creation authority, create the first document directory in accordance with the creation request, and store the directory relationship between the first document directory and the parent document directory of the first document directory.
[0119] In one implementation, the receiving module 901 is also used to receive a first permission setting request sent by a third client logged in with a third account, wherein the first permission setting request is used to authorize the first document directory; the storage module 903 is also used to, when it is determined that the third account has the authority to authorize the first document directory, obtain and store an account with the first permission for the first document directory based on the first permission setting request, wherein the first permission includes at least one of the following: document upload permission for the first document directory, download permission for the first document directory, management permission for the first document directory, and document update permission for the first document directory.
[0120] In one implementation, the generating module 902 is further configured to determine that the first account is an account having permission to upload documents to the first document directory.
[0121] In one implementation, the receiving module 901 is also used to receive a second permission setting request sent by the first client, wherein the second permission setting request is used to authorize the target document; the storage module 903 is also used to obtain and store an account with a second permission for the target document based on the second permission setting request, wherein the second permission includes at least one of the following: update permission for the target document and download permission for the target document.
[0122] In one implementation, the receiving module 901 is also used to receive a document update request sent by a fourth client logged in with a fourth account, wherein the document update request is used to request an update of a directory tag of the target document or an account with second permission for the target document; the storage module 903 is also used to update the first document directory associated with the target identifier or update the account with second permission for the target document in accordance with the document update request when it is determined that the fourth account has the update permission for the target document.
[0123] In one implementation, the receiving module 901 is also used to receive a first query request sent by a fifth client logged in with a fifth account, wherein the first query request is used to request a query for documents in a second document directory for which the fifth account has download permission; the device also includes: an acquisition module for acquiring an identifier of a first document in the second document directory for which the fifth account has download permission; and a sending module for returning the identifier of the first document to the fifth client.
[0124] In one implementation, the receiving module 901 is also used to receive a second query request sent by a fifth client logged in with a fifth account, wherein the second query request is used to request a query for documents that meet the query conditions, and the query conditions include at least one of the following: the directory range, directory, document uploader, and upload time of the query; the device also includes: an acquisition module, used to obtain the identifier of the second document that meets the query conditions; and a sending module, used to return the identifier of the second document to the fifth client.
[0125] Fig.10 The structural block diagram of an electronic device 1000 shown in an exemplary embodiment of the present application is shown. The electronic device can be implemented as a server of a document management system for shared access by multiple people in the above-mentioned solution of the present application. The electronic device 1000 includes a central processing unit (CPU) 1001, a system memory 1004 including a random access memory (RAM) 1002 and a read-only memory (ROM) 1003, and a system bus 1005 connecting the system memory 1004 and the central processing unit 1001. The electronic device 1000 also includes a large-capacity storage device 1006 for storing an operating system 1009, a client 1010 and other program modules 1011.
[0126] Without loss of generality, the computer-readable medium may include computer storage media and communication media. Computer storage media include volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information such as computer-readable instructions, data structures, program modules or other data. Computer storage media include RAM, ROM, Erasable Programmable Read Only Memory (EPROM), Electronically-Erasable Programmable Read-Only Memory (EEPROM) flash memory or other solid-state storage technology, CD-ROM, Digital Versatile Disc (DVD) or other optical storage, cassettes, tapes, disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that the computer storage medium is not limited to the above. The above-mentioned system memory 1004 and mass storage device 1006 can be collectively referred to as memory.
[0127] According to various embodiments of the present disclosure, the electronic device 1000 can also be connected to a remote computer on the network through a network such as the Internet. That is, the electronic device 1000 can be connected to the network 1008 through the network interface unit 1007 connected to the system bus 1005, or the network interface unit 1007 can be used to connect to other types of networks or remote computer systems (not shown).
[0128] The memory also includes at least one instruction, at least one program, code set or instruction set, and the at least one instruction, at least one program, code set or instruction set is stored in the memory. The central processing unit 901 implements all or part of the steps in the document storage method shown in the above-mentioned embodiments by executing the at least one instruction, at least one program, code set or instruction set.
[0129] Those skilled in the art will understand that Fig.10 The structure shown in the figure does not constitute a limitation on the electronic device 1000, and the electronic device 1000 may include more or less components than those shown in the figure, or combine some components, or adopt a different component arrangement.
[0130] In an exemplary embodiment, a computer-readable storage medium is also provided, in which at least one computer program is stored, and the computer program is loaded and executed by a processor to implement all or part of the steps in the above-mentioned document storage method. For example, the computer-readable storage medium can be a read-only memory (ROM), a random access memory (RAM), a compact disc (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, etc.
[0131] In an exemplary embodiment, a computer program product is also provided. The computer program product includes at least one computer program. The computer program is loaded by a processor and executes all or part of the steps of the above document storage method.
[0132] 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 claims.
[0133] It should be understood that the present application is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.
Claims
1. A document storage method, characterized in that: include: Receiving a document upload request sent by a first client logged in with a first account, wherein the document upload request carries an uploaded target document and multiple directory tags of the target document; generating a target identifier for the target document; The target document is saved to a document library, and the target identifier is associated with a plurality of first document directories in the document library directory and saved, wherein the first document directory is a document directory corresponding to the directory tag, and each subdirectory in the document library directory has only one parent directory.
2. The method according to claim 1, characterized in that The associating and saving the target identifier with the plurality of first document directories includes: The target identifier is stored in a first document directory corresponding to the plurality of directory tags; or, an association relationship between the target identifier and the plurality of directory tags is stored.
3. The method according to claim 1, characterized in that Before receiving the document upload request sent by the first client, the method further includes: Receiving a creation request sent by a second client logged in with a second account, wherein the creation request is used to request creation of a first document directory of the document library; When it is determined that the second account has the directory creation permission, the first document directory is created according to the creation request, and a directory relationship between the first document directory and a parent document directory of the first document directory is stored.
4. The method according to claim 3, characterized in that After storing the directory relationship between the first document directory and the parent document directory of the first document directory, the method further includes: receiving a first permission setting request sent by a third client logged in with a third account, wherein the first permission setting request is used to authorize the first document directory; When it is determined that the third account has the permission to authorize the first document directory, based on the first permission setting request, an account with the first permission for the first document directory is obtained and stored, wherein the first permission includes at least one of the following: document upload permission for the first document directory, download permission for the first document directory, management permission for the first document directory, and document update permission for the first document directory.
5. The method according to claim 4, characterized in that The first permission setting request is also used to indicate that the first document directory and a parent directory of the first document directory have the same authorization.
6. The method according to claim 4, characterized in that After receiving the document upload request sent by the first client logged in with the first account, the method further includes: The first account is determined to be an account having permission to upload documents to the first document directory.
7. The method according to any one of claims 1 to 6, characterized in that: Before saving the target document to the document library and associating the target identifier with a plurality of first document directories in the document library directory for storage, the method further includes: receiving a second permission setting request sent by the first client, wherein the second permission setting request is used to authorize the target document; Based on the second permission setting request, an account with a second permission for the target document is obtained and stored, wherein the second permission includes at least one of the following: an update permission for the target document, and a download permission for the target document.
8. The method according to claim 7, characterized in that The second permission setting request is also used to indicate that the target document and the first document directory have the same authorization.
9. The method according to claim 8, characterized in that After saving the target document to the document library and storing the target identifier in the first document directory corresponding to the plurality of directory tags, the method further includes: Receiving a document update request sent by a fourth client logged in with a fourth account, wherein the document update request is used to request an update of one of the following: a directory tag of the target document, an account with a second permission for the target document, or content of the target document; When it is determined that the fourth account has the update permission for the target document, one of the following is updated according to the document update request: the first document directory associated with the target identifier, the account with the second permission for the target document, and the content of the target document.
10. The method according to claim 8, characterized in that The method further comprises: Receiving a first query request sent by a fifth client logged in with a fifth account, wherein the first query request is used to request to query documents in a second document directory for which the fifth account has download permission; Obtaining an identifier of a first document in the second document directory for which the fifth account has download permission; The identifier of the first document is returned to the fifth client.
11. The method according to claim 8, characterized in that The method further comprises: receiving a second query request sent by a fifth client logged in with a fifth account, wherein the second query request is used to request to query documents that meet a query condition, and the query condition includes at least one of the following: a directory range, a directory, a document uploader, and an upload time to be queried; Obtaining an identifier of a second document that meets the query condition; The identifier of the second document is returned to the fifth client.
12. A document storage device, characterized in that: include: A receiving module, configured to receive a document upload request sent by a first client logged in with a first account, wherein the document upload request carries an uploaded target document and a plurality of directory tags of the target document; A generating module, used for generating a target identifier of the target document; The storage module is used to save the target document to the document library, and associate the target identifier with multiple first document directories in the document library directory for storage, wherein the first document directory is the document directory corresponding to the directory label, and each subdirectory in the document library directory has only one parent directory.
13. An electronic device, characterized in that: The electronic device includes a processor and a memory, wherein the memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the steps of the document storage method according to any one of claims 1 to 11 are implemented.
14. A readable storage medium, characterized in that: The readable storage medium stores a program or an instruction, and when the program or the instruction is executed by a processor, the steps of the document storage method according to any one of claims 1 to 11 are implemented.
