CN111736807A - Tenant function customizing method and device and office system based on tenant - Google Patents
Tenant function customizing method and device and office system based on tenant Download PDFInfo
- Publication number
- CN111736807A CN111736807A CN202010540872.2A CN202010540872A CN111736807A CN 111736807 A CN111736807 A CN 111736807A CN 202010540872 A CN202010540872 A CN 202010540872A CN 111736807 A CN111736807 A CN 111736807A
- Authority
- CN
- China
- Prior art keywords
- function
- tenant
- default
- customizing
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000006870 function Effects 0.000 claims description 466
- 238000002955 isolation Methods 0.000 claims description 30
- 230000015654 memory Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 12
- 238000011161 development Methods 0.000 abstract description 8
- 238000012423 maintenance Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 9
- 238000012216 screening Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a tenant function customizing method, a device and a tenant-based office system, wherein the tenant function customizing method comprises the following steps: acquiring a default function issued by an office subsystem; customizing the function of the default function according to a customized instruction of a tenant, and generating a tenant customized function corresponding to the default function, wherein the function customization comprises customizing at least one of a default menu, a default service and a default flow in the default function; storing the tenant customization functionality and the default functionality separately. The invention meets the requirement of customization of the tenant, and the development, operation and maintenance cost of the office system is reduced by giving the customization to the tenant.
Description
Technical Field
The invention relates to the field of computer application, in particular to a tenant function customizing method and device and a tenant-based office system.
Background
The existing office system mostly adopts a multi-tenant SaaS architecture, and the multi-tenant refers to a single instance which can serve multiple tenants. The multi-tenant architecture operates, manages and maintains resources through resource multiplexing among a plurality of users, and effectively saves the cost of development and application. However, since multiple tenants share the core code of the same system, if the function customization is performed for each user, the complexity and difficulty of software design will be greatly increased, and thus the multi-tenant architecture is difficult to meet the requirement of tenant function customization.
Disclosure of Invention
The invention provides a tenant function customizing method and device and a tenant-based office system, aiming at solving the technical problem that the prior art is difficult to meet the combined function self-defining requirement.
In order to achieve the above object, according to an aspect of the present invention, there is provided a tenant function customizing method, including:
acquiring a default function issued by an office subsystem;
customizing the function of the default function according to a customized instruction of a tenant, and generating a tenant customized function corresponding to the default function, wherein the function customization comprises customizing at least one of a default menu, a default service and a default flow in the default function;
storing the tenant customization functionality and the default functionality separately.
In order to achieve the above object, according to another aspect of the present invention, there is provided a tenant function customizing apparatus including:
the default function acquisition unit is used for acquiring default functions issued by the office subsystem;
the function customizing unit is used for customizing the function of the default function according to a customizing instruction of a tenant and generating a tenant customizing function corresponding to the default function, wherein the function customizing comprises customizing at least one of a default menu, a default service and a default flow in the default function;
a storage unit for separately storing the tenant customizing function and the default function.
In order to achieve the above object, according to another aspect of the present invention, there is also provided a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor implements the above tenant function customizing method when executing the computer program.
In order to achieve the above object, according to another aspect of the present invention, there is also provided a computer-readable storage medium storing a computer program which, when executed in a computer processor, implements the above tenant function customizing method.
In order to achieve the above object, according to another aspect of the present invention, there is also provided a tenant-based office system including: the office subsystem and each tenant system corresponding to each tenant; the office subsystem issues a plurality of default functions to the tenant system;
each tenant system includes: an application service unit and a database; the application service unit includes: a function customizing module; the database includes: a data sharing region and a data isolation region;
the function customizing module is used for customizing the function of the default function according to a customizing instruction of a tenant and generating a tenant customizing function corresponding to the default function, wherein the function customizing comprises customizing at least one of a default menu, a default service and a default flow in the default function;
the data sharing area is used for storing the default function; the data isolation area is used for storing the tenant customization function.
The invention has the beneficial effects that: the method and the device have the advantages that the function customization is carried out on the default function issued by the office subsystem according to the requirement of the tenant, and the tenant customization function corresponding to the default function is generated, wherein the function customization comprises the step of customizing at least one of a default menu, a default service and a default flow in the default function, and the tenant customization function and the default function are stored in an isolated mode, so that the technical problem that the user-defined requirement of the tenant function is difficult to meet in the prior art is solved, the requirement of the tenant customization is met, and in addition, the development, operation and maintenance cost of the office system is reduced by handing the customization to the tenant.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts. In the drawings:
FIG. 1 is a first flowchart of a tenant function customization method according to an embodiment of the present invention;
FIG. 2 is a second flowchart of a tenant function customization method according to an embodiment of the present invention;
FIG. 3 is a third flowchart of a tenant function customizing method according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a tenant system according to an embodiment of the invention;
FIG. 5 is a schematic view of a tenant-based office system according to an embodiment of the present invention;
FIG. 6 is a functional customization block diagram according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of an underlying functionality customization unit according to an embodiment of the present invention;
FIG. 8 is a first structural diagram of a tenant function customizing apparatus according to an embodiment of the present invention;
fig. 9 is a second structural diagram of a tenant function customizing apparatus according to an embodiment of the present invention;
FIG. 10 is a schematic diagram of a computer apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the technical solutions of the present invention better understood, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
It should be noted that the terms "comprises" and "comprising," and any variations thereof, in the description and claims of the present invention and the above-described drawings, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be noted that the embodiments and features of the embodiments may be combined with each other without conflict. The present invention will be described in detail below with reference to the embodiments with reference to the attached drawings.
The embodiment of the invention designs a tenant-based office system by combining concepts of single-tenant and multi-tenant architectures, an independent tenant system is set for each tenant by a mode of independent service deployment under the single-tenant architecture, the data isolation and the safety are improved, meanwhile, a set of office subsystem development modes are designed according to system characteristics of office application by combining a multi-tenant technology, a simple system autonomous customization unit is designed on the premise of only maintaining a set of core programs to meet requirements of tenant customization, the customization unit provides a visual interface and simple operation steps to facilitate the tenants to customize default functions, the tenants are customized, and the development, operation and maintenance costs are reduced. In addition, through the tenant customization function, each tenant can select whether to perform function splitting and data isolation through the user type, and the selection range of the tenant is more flexible. As shown in fig. 5, the tenant-based office system according to the embodiment of the present invention includes: the office subsystem and each tenant system corresponding to each tenant are connected with the office subsystem. The office subsystem may publish the same default functionality, which may be of multiple kinds, to each tenant system. And each tenant can perform function customization in a respective tenant system.
Fig. 1 is a first flowchart of a tenant function customizing method according to an embodiment of the present invention, and as shown in fig. 1, the tenant function customizing method according to an embodiment of the present invention includes steps S101 to S103.
And step S101, acquiring a default function issued by the office subsystem.
In an alternative embodiment of the present invention, as shown in fig. 5, the office subsystem publishes the same default functionality, which may be of various kinds, to the tenant system of each tenant. In an alternative embodiment, the default function may be an application, such as an approval process. Each default function may contain one or more of a default menu, a default service, and a default procedure, depending on its type.
Step S102, customizing the function of the default function according to a customization instruction of a tenant, and generating a tenant customization function corresponding to the default function, wherein the function customization comprises customizing at least one of a default menu, a default service and a default flow in the default function.
In the embodiment of the present invention, each tenant may customize a function of the default function according to its own requirement, and when the function of the default function is specifically customized, one or more of a default menu, a default service, and a default flow in the default function may be customized. In an optional embodiment, the tenant's customization instruction includes a customized target default function and specific customized content, wherein the customized content includes a customized menu, service or flow.
Fig. 4 is a schematic diagram of a tenant system according to an embodiment of the present invention, in the embodiment shown in fig. 4, each tenant system includes a function customizing module 2, and each tenant can perform function customization of this step according to the function customizing module 2.
Step S103, storing the tenant customizing function and the default function separately.
In the embodiment of the invention, the tenant performs data isolation on the default function and the tenant customized function. In the embodiment shown in fig. 4, each tenant system includes a database, where the database is divided into a data sharing area 6 and a data isolation area 7, and the embodiment of the present invention stores the tenant customized function in the data isolation area 7, stores the default function in the data sharing area 6, and implements data isolation of the default function and the tenant customized function.
In the embodiment shown in fig. 4, each tenant system contains a DAO module 5; the function customizing module 2 stores the generated tenant customizing function to the DAO module 5, and finally stores the tenant customizing function to the data isolation area 7 of the database.
Fig. 2 is a second flowchart of the tenant function customizing method according to the embodiment of the present invention, and as shown in fig. 2, in an embodiment of the present invention, the tenant function customizing method according to the present invention includes step S201 and step S202.
Step S201, acquiring the unique identifier of the default function and the unique identifier of the tenant.
In the embodiment of the invention, each default function corresponds to a unique identifier, and the unique identifier of the default function is stored in a tenant system. In the embodiment of the present invention, the unique identifier of the tenant is stored in the tenant system, and the unique identifier of the tenant may be an enterprise unique identifier of an enterprise in which the tenant is located.
In the embodiment shown in fig. 4, each tenant system includes a SESSION module 4 and a DAO module 5, the SESSION module 4 stores a unique identifier of a tenant, and the DAO module 5 stores a unique identifier of each default function in a data structure. The step specifically includes extracting a unique identifier of the tenant from the SESSION module 4 corresponding to the tenant, and extracting a unique identifier of the default function from the DAO module 5 corresponding to the tenant.
Step S202, generating the unique identifier of the tenant customized function according to the unique identifier of the default function, the unique identifier of the tenant and a preset identifier generation rule.
In the embodiment of the present invention, in this step, a corresponding unique identifier is generated for each tenant customizing function, and the unique identifier is recorded in the corresponding tenant customizing function. Optionally, the preset identifier generation rule is to splice the unique identifier of the default function with the unique identifier of the tenant.
In the embodiment shown in fig. 4, the function customizing module 2 generates the unique identifier of the tenant customizing function according to the unique identifier of the default function in the DAO module 5, the unique identifier of the tenant in the SESSION module 4, and a preset identifier generating rule, and finally stores the generated tenant customizing function and the unique identifier thereof in the data structure of the DAO module 5.
In the embodiment shown in fig. 5, the DAO module 5 is a module for the application service unit to interact with the database, and is responsible for data reading and storing. The data structure of the invention is stored in the application service unit in JSON format, and the DAO module 5 interacts with the database through the JSON data format. The JSON data structure is mainly divided into two categories of basic function information and detailed function information, wherein the basic function information comprises basic elements such as a unique function identifier, a function name, a function associated service and a function associated menu, and the detailed function information comprises detailed contents such as a function associated data table field and a function style. When interacting with the function customizing module 2, the DAO module 5 mainly processes the unique identifier of the tenant customizing function in the basic information of the tenant customizing function, so that data can be stored in a data isolation area in preparation when the tenant customizing function is saved.
Fig. 3 is a third flowchart of the tenant function customizing method according to the embodiment of the present invention, and as shown in fig. 3, in an embodiment of the present invention, the tenant function customizing method further includes step S301 to step S303.
Step S301, acquiring a service function use request sent by the tenant to the office subsystem, where the service function use request includes default function information.
In the embodiment of the invention, when a tenant uses a service function, the tenant system sends a service function use request to the office subsystem, and as each tenant system performs function customization, the customized tenant customization function is stored in each tenant system, and the office subsystem does not record the tenant customization function information customized by each tenant, the service function use request records default function information, and the subsequent tenant system judges whether a corresponding tenant customization function exists according to the default function information.
In the embodiment shown in fig. 4, the functional business logic processing module 1 in the tenant system interacts with the office subsystem for sending business function usage requests to the office subsystem. The step is specifically that the acquisition function service logic processing module 1 sends a service function use request to the office subsystem. In the embodiment shown in fig. 4, the function selecting module 3 in the tenant system is configured to determine whether the tenant uses the default function or the tenant customized function when using the office subsystem, and acquire corresponding data.
Step S302, determining the default function corresponding to the default function information, and generating identification information according to the unique identification of the corresponding default function, the unique identification of the tenant and the identification generation rule.
In the embodiment shown in fig. 4, the step may specifically be:
the function selecting module 3 firstly obtains the JSON data structure of the tenant use function from the DAO module 5 through a reflection mechanism, and obtains the unique identifier of the function used by the tenant from the JSON data structure, specifically, the function selecting module 3 obtains the unique default function identifier corresponding to the default function information from the DAO module 5;
the function selecting module 3 acquires the unique identifier of the tenant from the SESSION module 4, and optionally, the unique identifier of the tenant may be the enterprise unique identifier of an enterprise in which the tenant is located;
the function selecting module 3 generates identification information according to the default function unique identification, the unique identification of the tenant and a preset identification generating rule, and specifically, the function selecting module 3 splices the default function unique identification and the unique identification of the tenant to generate the identification information.
Step S303, querying the tenant customizing function corresponding to the identification information from the storage space for storing the tenant customizing function, and sending the queried data of the tenant customizing function to the office subsystem.
In the embodiment shown in fig. 4, the step may specifically be: and the function selecting module 3 uses the query conditions spliced by the identification information from the data isolation area 7 of the database to query whether the tenant customizing function corresponding to the identification information exists. If the tenant customized function exists in the data isolation area 7, the function selection module 3 returns the data of the tenant customized function stored in the data isolation area to the function service logic processing module 1, and the data is sent to the office subsystem through the function service logic processing module 1.
In an optional embodiment, in this step, the identification information is queried from the data isolation area, it is determined whether the tenant customization function corresponding to the identification information exists in the data isolation area, and if so, the data of the tenant customization function is sent to the office subsystem for function use.
In an embodiment of the present invention, if the tenant customized function corresponding to the identification information cannot be queried, the present invention further queries the corresponding default function from the storage space storing the default function, and sends the queried data of the default function to the office subsystem.
In the embodiment shown in fig. 4, if the function selecting module 3 cannot query the corresponding tenant customization function from the data isolation region 7 by using the query condition spliced by the identification information, the default function corresponding to the default function unique identification is queried from the data sharing region 6, and the queried data of the default function is returned to the function service logic processing module 1 and finally sent to the office subsystem through the function service logic processing module 1.
In the embodiment of the present invention, if the tenant customization function corresponding to the identification information cannot be queried from the data isolation region, which indicates that the default function does not have tenant customization, the data of the default function in the data sharing region is sent to the office subsystem for function use.
Therefore, the embodiment of the invention can customize the functions of the default functions issued by the office subsystem according to the requirements, generate the tenant customized functions corresponding to the default functions, and store the tenant customized functions and the default functions separately, thereby solving the technical problem that the prior art is difficult to meet the requirements of tenant function customization, meeting the requirements of tenant customization, and reducing the development, operation and maintenance costs of the office system by handing the customization to the tenant.
Based on the same inventive concept, the embodiment of the present invention further provides a tenant function customizing device, which is used for implementing the tenant function customizing method, as described in the following embodiments. Because the principle of the tenant function customizing device for solving the problem is similar to that of the tenant function customizing method, embodiments of the tenant function customizing device can refer to embodiments of the tenant function customizing method, and repeated parts are not described again.
Fig. 8 is a schematic view of a first structure of a tenant function customizing apparatus according to an embodiment of the present invention, as shown in fig. 8, in an alternative embodiment of the present invention, the tenant function customizing apparatus includes:
the default function acquisition unit is used for acquiring default functions issued by the office subsystem;
the function customizing unit is used for customizing the function of the default function according to a customizing instruction of a tenant and generating a tenant customizing function corresponding to the default function, wherein the function customizing comprises customizing at least one of a default menu, a default service and a default flow in the default function;
a storage unit for separately storing the tenant customizing function and the default function.
Fig. 9 is a second schematic structural diagram of a tenant function customizing apparatus according to an embodiment of the present invention, and as shown in fig. 9, in an alternative embodiment of the present invention, the tenant function customizing apparatus further includes:
an identification information obtaining unit, configured to obtain a unique identification of the default function and a unique identification of the tenant;
and the unique identification generating unit of the tenant customizing function is used for generating the unique identification of the tenant customizing function according to the unique identification of the default function, the unique identification of the tenant and a preset identification generating rule.
In other optional embodiments of the present invention, the tenant function customizing apparatus of the present invention further includes:
a service function use request acquiring unit, configured to acquire a service function use request sent by the tenant to the office subsystem, where the service function use request includes default function information;
the identification information generating unit is used for determining the default function corresponding to the default function information and generating identification information according to the unique identification of the corresponding default function, the unique identification of the tenant and the identification generating rule;
the first query unit is used for querying the tenant customizing function corresponding to the identification information from a storage space for storing the tenant customizing function and sending the queried data of the tenant customizing function to the office subsystem;
and the second query unit is used for querying the corresponding default function from the storage space for storing the default function and sending the queried data of the default function to the office subsystem if the tenant customized function corresponding to the identification information cannot be queried.
Based on the same inventive concept, the embodiment of the invention also provides a tenant-based office system, as described in the following embodiments. Because the principle of solving the problems of the office system based on the tenant is similar to that of the tenant function customizing method, the embodiment of the office system based on the tenant can be referred to as the embodiment of the tenant function customizing method, and repeated parts are not repeated.
As shown in fig. 5, the tenant-based office system of the present embodiment includes: the office subsystem and each tenant system corresponding to each tenant are connected with the office subsystem. The office subsystem may publish the same default functionality, which may be of multiple kinds, to each tenant system.
As shown in fig. 4, in the present invention, in combination with the design concepts of single tenant and multi-tenant, the same program (i.e. tenant system) is provided for each tenant when the office subsystem is deployed, and each tenant system deploys an application service unit and a database which are independent of each other. And carrying out data isolation on each tenant individual through an independent application service unit and a database. When the office subsystem publishes the program, the unified program package is published to each tenant, only one program needs to be exported, the maintainability of the whole system is improved, and a large amount of development cost is saved. The program provides a plurality of default functions and function customizing modules, provides complete office management functions for each tenant firstly, and supports the personalized requirements of users through the function customizing modules.
Fig. 5 is a schematic diagram of a tenant system according to an embodiment of the present invention, and as shown in fig. 5, the tenant system according to an embodiment of the present invention includes an application service unit and a database. The application service unit mainly comprises: the system comprises a function service logic processing module 1, a function customizing module 2, a function selecting module 3, a SESSION module 4 and a DAO module 5, wherein the database mainly comprises: a data-sharing region 6 and a data-isolating region 7.
In the embodiment of the present invention, the data sharing area 6 is used for storing default functions published by the office subsystem. The function customizing module 2 is configured to perform function customizing based on a default function, and generate a tenant customizing function corresponding to the default function, where the function customizing includes customizing at least one of a default menu, a default service, and a default flow in the default function, and generating a corresponding customizing menu, a customizing service, and a customizing flow. The generated tenant customized function is stored in the data quarantine area 7.
In an embodiment of the present invention, when the tenant uses the office subsystem, if the default function cannot meet the actual requirement, the tenant may customize the function through the function customizing module 2. In an embodiment of the present invention, an internal structure of the function customizing module 2 is as shown in fig. 6, and mainly includes a basic function customizing unit 201, a flow customizing unit 202, and a customizing function storing unit 203.
Wherein the default menu and default service in the default function will use the basic function customizing unit 201 for function customization, and the default flow in the default function will use both the basic function customizing unit 201 and the flow customizing unit 202 for flow customization. After the customization is completed, the generated tenant customization function is stored in the DAO module 5 through the customization function storage unit 203, and is finally stored in the data isolation area 7 of the database.
In the embodiment of the invention, the customizable functions of the function customizing modules 2 are mutually independent, the customization or default functions of other modules are not influenced after one module is customized, the customized service can be only selected when a certain default service comprises a menu, a service and a flow, other functions still use the default functions of the system, for example, when an office subsystem asks for a leave flow, a page asking for a leave is customized, but the flow still can use the default approval flow, and the menu also automatically opens the customized page asking for a leave after entering from an original leave asking inlet.
In an embodiment of the present invention, an internal structure of the basic function customizing unit 201 is shown in fig. 7, and mainly includes: a function list 20101, a style list 20102, a customized function screening unit 20103, a customized style screening unit 20104, and a customized function generating unit 20105. According to the invention, firstly, a function list 20101 and a style list 20102 are maintained through a program, then contents meeting the requirements of tenants are screened out through a customized function screening unit 20103 and a customized style screening unit 20104, and finally, a function capable of interacting with the tenants is combined through a customized function generating unit 20105.
For example, when the tenant uses the "add" function, the default "add" cannot meet the requirement of the user, the user may customize the "add" by using the basic function customizing unit, first select the "add" function to be customized from the function list 20101, then obtain the style of the "add" function from the style list 20102, such as display icon, position, color, display condition, and the like, and finally set a proper style according to the requirement to form the customized function.
In an embodiment of the present invention, the function list 20101 includes common office functions such as add, delete, modify, import, export, and the like, and a service function list initialized by database table fields. The style list 20102 includes page styles for various dimensions, such as icons, displays, hides, length, width, date, and so on. The style list 20102 may provide different styles of content according to different selection functions.
In an embodiment of the present invention, the customized function screening unit 20103 and the customized style screening unit 20104 are mainly used for selecting a function and a style to be customized. The customized function generation unit 20105 separates the customization from the program development, and the tenant customizes the selected functions and units. The tenant can generate the tenant customization function by using a visual customization operation interface provided by the system.
In an embodiment of the present invention, the flow customization unit 202 is configured to provide a visual flow customization interface, so that the tenant customizes the flow chart. The flow customization unit 202 essentially provides a combination of nodes and links to form a completed business flow link. The tenant can customize the process node and the process connecting line according to the requirement through the basic function customizing unit, and then uses the connecting line to connect the nodes through the visual operation interface.
In an embodiment of the present invention, the customizing function storing unit 203 stores the tenant customizing function after the completion of the customization to the DAO module 5.
In a specific embodiment of the present invention, the SESSION module 4 is configured to store unique identifiers of tenants, and the DAO module 5 is configured to store unique identifiers of default functions. The function customizing module 2 is further configured to generate a unique identifier of the tenant customizing function according to the unique identifier of the default function, the unique identifier of the tenant, and a preset identifier generating rule, and optionally, the preset identifier generating rule is to splice the unique identifier of the default function and the unique identifier of the tenant. Optionally, the unique identifier of the tenant may be a unique enterprise identifier of an enterprise in which the tenant is located.
In a specific embodiment of the present invention, after the tenant customizing function is generated, the customizing function storing unit 203 first obtains the current office access subsystem from the SESSION module 4 and customizes the tenant information of the function, extracts the enterprise unique identifier of the enterprise where the tenant is located, forms the unique identifier of the customized function by splicing the unique identifier of the default function with the unique identifier of the enterprise, and finally stores the generated tenant customizing function and the unique identifier thereof in the data structure of the DAO module 5.
In an embodiment of the present invention, the functional service logic processing module 1 interacts with an office subsystem, and is configured to implement a corresponding function according to a tenant requirement. Optionally, the functional service logic processing module 1 is formed by combining a plurality of default functions or tenant customized functions to form office subsystem service functions that can be used by the tenant.
In an embodiment of the present invention, the function selecting module 3 is configured to determine whether a tenant uses a default function or a tenant customized function when using an office subsystem, and acquire corresponding data. When a tenant uses a service function, the functional service logic processing module 1 sends a service function use request to the office subsystem, wherein the service function use request contains default function information. At this time, the function selecting module 3 intercepts all the outlets for acquiring the function data, and first determines whether to select the tenant customized function or the default function. The selection process is as follows:
step 1: the tenant accesses the office subsystem and uses the business functions.
Step 2: the function selecting module 3 firstly obtains the JSON data structure of the function used by the tenant from the DAO module 5 through a reflection mechanism, and obtains the unique identification of the function used by the tenant from the JSON data structure. Specifically, the function selecting module 3 obtains the default function unique identifier corresponding to the default function information from the DAO module 5.
And step 3: the function selecting module 3 obtains the unique identifier of the tenant from the SESSION module 4, and optionally, the unique identifier of the tenant may be the enterprise unique identifier of the enterprise where the tenant is located.
And 4, step 4: and the function selecting module 3 generates identification information according to the default function unique identification, the unique identification of the tenant and a preset identification generating rule. Specifically, the function selecting module 3 concatenates the default function unique identifier and the tenant unique identifier to generate identifier information.
And 5: and the function selecting module 3 uses the query conditions spliced by the identification information from the data isolation area 7 of the database to query whether the tenant customizing function corresponding to the identification information exists.
Step 6: if the tenant customized function exists in the data isolation area 7, the function selection module 3 returns the data of the tenant customized function stored in the data isolation area to the function service logic processing module 1, and the data is sent to the office subsystem through the function service logic processing module 1. When a plurality of enterprise information exists in the basic data in the data sharing area 6 of the database and the tenant customizes different functions for different enterprise information, the step returns the tenant customization function of the enterprise where the current system access tenant is located.
And 7: if the default function does not exist, the function selection module 3 queries the default function corresponding to the unique default function identifier from the data sharing area 6, returns the queried data of the default function to the function service logic processing module 1, and finally sends the queried data of the default function to the office subsystem through the function service logic processing module 1.
In an embodiment of the present invention, the SESSION module 4 is configured to store basic information of the tenant, including personal information of the tenant and enterprise information of the tenant. The personal information and the enterprise information are respectively provided with a unique identifier to determine the tenant individuals and the enterprise individuals.
In an embodiment of the present invention, the DAO module 5 is a module for interaction between the application service unit and the database, and is responsible for data reading and storing. The data structure of the invention is stored in the application service unit in JSON format, and the DAO module 5 interacts with the database through the JSON data format. The JSON data structure is mainly divided into two categories of basic function information and detailed function information, wherein the basic function information comprises basic elements such as a unique function identifier, a function name, a function associated service and a function associated menu, and the detailed function information comprises detailed contents such as a function associated data table field and a function style. When interacting with the customized function storage unit 203, the DAO module 5 mainly processes the unique identifier of the tenant customized function in the basic information of the tenant customized function, so that data can be stored in the data isolation area in preparation when the tenant customized function is saved.
In an embodiment of the present invention, the data sharing area 6 mainly stores default function data and basic data, including a default menu, a default service, a default process, and basic data. According to the characteristics of the office subsystem, the functional module of the office subsystem is roughly divided into three functional modules from the aspect of software development, including menu authority, process management and service management. The menu authority mainly refers to a menu list provided by the office subsystem and whether a user has authority to display a menu when using the office subsystem, the process management mainly refers to a business process existing in the office subsystem, and the service management mainly refers to a functional service displayed to the user by each business module of the office subsystem. According to the invention, after the office requirements of commonality and universality are found out through investigation and analysis of requirements, the default functions of the three functional modules are firstly developed to form a default menu, default services and a default flow and are stored in the data sharing area. The default function data is provided to the DAO module 5 in a read-only mode for reading, so that a uniform program distribution package is formed in cooperation with program distribution, and the office subsystem also provides a whole set of office service functions for each tenant through the default functions. The basic data includes the client information, the enterprise information, the authority information of the tenant, the function list and the style list provided by the system, and the like, and provides basic service for the system.
In an embodiment of the present invention, the data isolation area 7 stores tenant customization function data, including customization menus, customization services and customization processes, which need to be isolated from the data sharing area 6. Each tenant can customize the function according to the required tenant and then generates tenant customization function data in the database data isolation area 7, and enterprise information unique identification in the unique identification of the tenant customization function is isolated from default functions in the data sharing area 6. Usually, each tenant has one piece of enterprise information, so that the isolated tenant customized function data is only one piece in total, and when the tenant has special requirements and needs to split a smaller-granularity customer group, multi-division customized data can be repeatedly stored and isolated through the unique function identifier. The invention does not limit the unique enterprise information identification of the office subsystem, so that the tenant can create the enterprise information without limit and customize the function for the client tenant of different enterprise information.
According to the embodiment, the office system based on the tenants is designed by combining the concepts of single-tenant architecture and multi-tenant architecture. Different from a single-tenant architecture, the invention designs a simple visual tenant customization function through a non-complex program structure, and customizes customized individual requirements by the tenants, thereby avoiding high development cost and operation and maintenance cost caused by requirements under the single-tenant architecture, and only maintaining one program to meet the requirements of various tenants. Meanwhile, the method is different from a multi-tenant architecture, and the system of each tenant is physically isolated, so that the safety of data isolation among tenants is improved.
To achieve the above object, according to another aspect of the present application, there is also provided a computer apparatus. As shown in fig. 10, the computer device comprises a memory, a processor, a communication interface and a communication bus, wherein a computer program that can be run on the processor is stored in the memory, and the steps of the method of the embodiment are realized when the computer program is executed by the processor.
The processor may be a Central Processing Unit (CPU). The Processor may also be other general purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components, or a combination thereof.
The memory, which is a non-transitory computer readable storage medium, may be used to store non-transitory software programs, non-transitory computer executable programs, and units, such as the corresponding program units in the above-described method embodiments of the present invention. The processor executes various functional applications of the processor and the processing of the work data by executing the non-transitory software programs, instructions and modules stored in the memory, that is, the method in the above method embodiment is realized.
The memory may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created by the processor, and the like. Further, the memory may include high speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory optionally includes memory located remotely from the processor, and such remote memory may be coupled to the processor via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The one or more units are stored in the memory and when executed by the processor perform the method of the above embodiments.
The specific details of the computer device may be understood by referring to the corresponding related descriptions and effects in the above embodiments, and are not described herein again.
In order to achieve the above object, according to another aspect of the present application, there is also provided a computer-readable storage medium storing a computer program, which when executed in a computer processor implements the steps in the tenant function customizing method described above. It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. The storage medium may be a magnetic Disk, an optical Disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a Flash Memory (Flash Memory), a Hard Disk (Hard Disk Drive, abbreviated as HDD) or a Solid State Drive (SSD), etc.; the storage medium may also comprise a combination of memories of the kind described above.
It will be apparent to those skilled in the art that the modules or steps of the present invention described above may be implemented by a general purpose computing device, they may be centralized on a single computing device or distributed across a network of multiple computing devices, and they may alternatively be implemented by program code executable by a computing device, such that they may be stored in a storage device and executed by a computing device, or fabricated separately as individual integrated circuit modules, or fabricated as a single integrated circuit module from multiple modules or steps. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (13)
1. A tenant function customizing method is characterized by comprising the following steps:
acquiring a default function issued by an office subsystem;
customizing the function of the default function according to a customized instruction of a tenant, and generating a tenant customized function corresponding to the default function, wherein the function customization comprises customizing at least one of a default menu, a default service and a default flow in the default function;
storing the tenant customization functionality and the default functionality separately.
2. The tenant function customization method according to claim 1, further comprising:
acquiring a unique identifier of the default function and a unique identifier of the tenant;
and generating the unique identifier of the tenant customized function according to the unique identifier of the default function, the unique identifier of the tenant and a preset identifier generation rule.
3. The tenant function customizing method according to claim 2, further comprising:
acquiring a service function use request sent by the tenant to the office subsystem, wherein the service function use request contains default function information;
determining a default function corresponding to the default function information, and generating identification information according to a unique identification of the corresponding default function, a unique identification of the tenant and the identification generation rule;
and inquiring the tenant customizing function corresponding to the identification information from a storage space for storing the tenant customizing function, and sending the inquired data of the tenant customizing function to the office subsystem.
4. The tenant function customization method according to claim 3, further comprising:
and if the tenant customizing function corresponding to the identification information cannot be inquired, inquiring the corresponding default function from the storage space for storing the default function, and sending the data of the inquired default function to the office subsystem.
5. A tenant function customizing apparatus, comprising:
the default function acquisition unit is used for acquiring default functions issued by the office subsystem;
the function customizing unit is used for customizing the function of the default function according to a customizing instruction of a tenant and generating a tenant customizing function corresponding to the default function, wherein the function customizing comprises customizing at least one of a default menu, a default service and a default flow in the default function;
a storage unit for separately storing the tenant customizing function and the default function.
6. The tenant function customizing apparatus according to claim 5, further comprising:
an identification information obtaining unit, configured to obtain a unique identification of the default function and a unique identification of the tenant;
and the unique identification generating unit of the tenant customizing function is used for generating the unique identification of the tenant customizing function according to the unique identification of the default function, the unique identification of the tenant and a preset identification generating rule.
7. The tenant function customizing apparatus of claim 6, further comprising:
a service function use request acquiring unit, configured to acquire a service function use request sent by the tenant to the office subsystem, where the service function use request includes default function information;
the identification information generating unit is used for determining the default function corresponding to the default function information and generating identification information according to the unique identification of the corresponding default function, the unique identification of the tenant and the identification generating rule;
and the first query unit is used for querying the tenant customization function corresponding to the identification information from a storage space for storing the tenant customization function, and sending the queried data of the tenant customization function to the office subsystem.
8. The tenant function customizing apparatus according to claim 7, further comprising:
and the second query unit is used for querying the corresponding default function from the storage space for storing the default function and sending the queried data of the default function to the office subsystem if the tenant customized function corresponding to the identification information cannot be queried.
9. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method of any of claims 1 to 4 when executing the computer program.
10. A computer-readable storage medium, in which a computer program is stored which, when executed in a computer processor, implements the method of any one of claims 1 to 4.
11. A tenant-based office system, comprising: the office subsystem and each tenant system corresponding to each tenant; the office subsystem issues a plurality of default functions to the tenant system;
each tenant system includes: an application service unit and a database; the application service unit includes: a function customizing module; the database includes: a data sharing region and a data isolation region;
the function customizing module is used for customizing the function of the default function according to a customizing instruction of a tenant and generating a tenant customizing function corresponding to the default function, wherein the function customizing comprises customizing at least one of a default menu, a default service and a default flow in the default function;
the data sharing area is used for storing the default function; the data isolation area is used for storing the tenant customization function.
12. The tenant-based office system of claim 11, wherein the application service unit further comprises: a DAO module and a SESSION module;
the SESSION module is used for storing the unique identification of the tenant; the DAO module is used for storing the unique identifier of the default function;
the function customizing module is further configured to generate a unique identifier of the tenant customizing function according to the unique identifier of the default function, the unique identifier of the tenant and a preset identifier generating rule, and send the tenant customizing function to the DAO module for storage.
13. The tenant-based office system of claim 12, wherein the application service unit further comprises: the system comprises a function service logic processing module and a function selecting module;
the functional service logic processing module is used for sending a service function using request to the office subsystem, wherein the service function using request contains default function information;
the function selecting module is used for acquiring the unique identifier of the default function corresponding to the default function information from the DAO module, generating identifier information according to the unique identifier of the corresponding default function, the unique identifier of the tenant and the identifier generating rule, inquiring the tenant customizing function corresponding to the identifier information from the data isolation area, and sending the inquired data of the tenant customizing function to the office subsystem;
the function selecting module is further configured to, when the tenant customizing function corresponding to the identification information cannot be queried from the data isolation region, query the corresponding default function from the data sharing region, and send the queried data of the default function to the office subsystem.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010540872.2A CN111736807B (en) | 2020-06-15 | 2020-06-15 | Tenant function customization method and device and tenant-based office system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010540872.2A CN111736807B (en) | 2020-06-15 | 2020-06-15 | Tenant function customization method and device and tenant-based office system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111736807A true CN111736807A (en) | 2020-10-02 |
CN111736807B CN111736807B (en) | 2024-01-30 |
Family
ID=72649084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010540872.2A Active CN111736807B (en) | 2020-06-15 | 2020-06-15 | Tenant function customization method and device and tenant-based office system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111736807B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7402290B1 (en) | 2022-09-29 | 2023-12-20 | サイボウズ株式会社 | Multi-tenant system, service provision method, and program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639770A (en) * | 2008-07-30 | 2010-02-03 | 国际商业机器公司 | System and method for supporting multi-tenant separation/multi-tenant customization in JVM |
CN102609271A (en) * | 2012-02-20 | 2012-07-25 | 山东大学 | Metadata-driven visual SaaS (Software as a Service) application customizing method and metadata-driven visual SaaS application customizing system |
CN103955384A (en) * | 2014-04-15 | 2014-07-30 | 南威软件股份有限公司 | Individual customization supporting method based on multi-tenant mode |
CN103984600A (en) * | 2014-05-07 | 2014-08-13 | 丽水桉阳生物科技有限公司 | Financial data processing method based on cloud computing |
CN105786474A (en) * | 2014-12-25 | 2016-07-20 | 北京仿真中心 | Multi-tenant-supporting collaborative business flow customizing system and method |
-
2020
- 2020-06-15 CN CN202010540872.2A patent/CN111736807B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639770A (en) * | 2008-07-30 | 2010-02-03 | 国际商业机器公司 | System and method for supporting multi-tenant separation/multi-tenant customization in JVM |
CN102609271A (en) * | 2012-02-20 | 2012-07-25 | 山东大学 | Metadata-driven visual SaaS (Software as a Service) application customizing method and metadata-driven visual SaaS application customizing system |
CN103955384A (en) * | 2014-04-15 | 2014-07-30 | 南威软件股份有限公司 | Individual customization supporting method based on multi-tenant mode |
CN103984600A (en) * | 2014-05-07 | 2014-08-13 | 丽水桉阳生物科技有限公司 | Financial data processing method based on cloud computing |
CN105786474A (en) * | 2014-12-25 | 2016-07-20 | 北京仿真中心 | Multi-tenant-supporting collaborative business flow customizing system and method |
Non-Patent Citations (1)
Title |
---|
叶振岳;冯志勇;饶国政;: "基于多租户模式的节能检测及监控系统", 计算机工程与科学, no. 09 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7402290B1 (en) | 2022-09-29 | 2023-12-20 | サイボウズ株式会社 | Multi-tenant system, service provision method, and program |
JP2024049736A (en) * | 2022-09-29 | 2024-04-10 | サイボウズ株式会社 | Multi-tenant system, service provision method, and program |
Also Published As
Publication number | Publication date |
---|---|
CN111736807B (en) | 2024-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112118565B (en) | Multi-tenant service gray level publishing method, device, computer equipment and storage medium | |
CN110310034B (en) | Service arrangement and business flow processing method and device applied to SaaS | |
US11580179B2 (en) | Method and system for service agent assistance of article recommendations to a customer in an app session | |
US8356274B2 (en) | System and methods to create a multi-tenancy software as a service application | |
US10089082B2 (en) | Visual devops systems and methods | |
CN114115852A (en) | Visual service arranging method, device, equipment and medium | |
CN103077024B (en) | A kind of device and method supporting the on-demand customization of SaaS application flow and operation | |
US10262155B1 (en) | Disabling features using feature toggle | |
US9210098B2 (en) | Enhanced command selection in a networked computing environment | |
US9225662B2 (en) | Command management in a networked computing environment | |
US20160259795A1 (en) | Distributed version control of orchestration templates | |
US11847509B2 (en) | Infrastructure base model API | |
US12032991B2 (en) | Continuous liveness and integrity of applications during migration | |
US20200302350A1 (en) | Natural language processing based business domain modeling | |
CN110764769A (en) | Method and device for processing user request | |
US10776180B1 (en) | Expression-based feature toggle in an application programming interface (API) | |
CN111736807A (en) | Tenant function customizing method and device and office system based on tenant | |
CN110807535A (en) | Construction method and construction device of unified reservation platform and unified reservation platform system | |
US10778805B2 (en) | Identifying application preemptive requests | |
US11949761B2 (en) | Techniques for distributed interface component generation | |
CN115269090A (en) | Marketing page generation method and device, terminal and storage medium | |
US11782971B2 (en) | Static and dynamic NBMP function image retrieval and scale ranking | |
CN113821430A (en) | Multi-service testing method and device | |
US9742852B2 (en) | Switchable business feature with prices and sales integration | |
CN114090083A (en) | Visual component configuration method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |