CN111736807B - Tenant function customization method and device and tenant-based office system - Google Patents

Tenant function customization method and device and tenant-based office system Download PDF

Info

Publication number
CN111736807B
CN111736807B CN202010540872.2A CN202010540872A CN111736807B CN 111736807 B CN111736807 B CN 111736807B CN 202010540872 A CN202010540872 A CN 202010540872A CN 111736807 B CN111736807 B CN 111736807B
Authority
CN
China
Prior art keywords
function
tenant
default
module
customizing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010540872.2A
Other languages
Chinese (zh)
Other versions
CN111736807A (en
Inventor
徐赟佳
谢思尧
康融洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010540872.2A priority Critical patent/CN111736807B/en
Publication of CN111736807A publication Critical patent/CN111736807A/en
Application granted granted Critical
Publication of CN111736807B publication Critical patent/CN111736807B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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 tenant function customizing 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; performing function customization on 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; and storing the tenant customizing function and the default function separately. The invention meets the requirement of tenant customization, and gives customization to the tenant, thereby reducing the development and operation cost of the office system.

Description

Tenant function customization method and device and tenant-based office system
Technical Field
The present invention relates to the field of computer applications, and in particular, to a tenant function customization method and apparatus, and a tenant-based office system.
Background
Currently, the office system mostly adopts a multi-tenant SaaS architecture, and multi-tenant means that a single instance can serve multiple tenants. The multi-tenant architecture effectively saves the cost of developing applications by multiplexing resources among a plurality of users, managing and maintaining the resources. However, since the multiple tenants share the core code of the same system, the complexity and difficulty of software design will be greatly increased if the function customization is performed for each user, so 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, and aims to solve the technical problem that the prior art is difficult to meet the requirement of combined function customization.
In order to achieve the above object, according to one aspect of the present invention, there is provided a tenant function customizing method, including:
acquiring a default function issued by an office subsystem;
performing function customization on 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;
and storing the tenant customizing function and the default function separately.
In order to achieve the above object, according to another aspect of the present invention, there is provided a tenant function customizing apparatus, comprising:
the default function acquisition unit is used for acquiring default functions issued by the office subsystem;
a function customizing unit, configured to perform function customization on the default function according to a customization instruction of a tenant, and generate a tenant customizing function corresponding to the default function, where the function customization includes customizing at least one of a default menu, a default service, and a default flow in the default function;
And the storage unit is used for storing the tenant customizing function and the default function separately.
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 tenant function customizing method described above when executing the computer program.
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 that implements the tenant function customizing method described above when executed in a computer processor.
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 correspond to the tenant system respectively; the office subsystem issues a plurality of default functions to the tenant system;
each tenant system comprises: an application service unit and a database; the application service unit includes: a function customizing module; the database comprises: a data sharing area and a data isolation area;
The function customizing module is used for carrying out function customization on 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 customization 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 customizing function.
The beneficial effects of the invention are as follows: according to the embodiment of the invention, the function customization is carried out on the default function issued by the office subsystem according to the needs of the tenant, and the tenant customization function corresponding to the default function is generated, wherein the function customization comprises the customization of at least one of a default menu, a default service and a default flow in the default function, and the isolation storage of the tenant customization function and the default function, so that the technical problem that the prior art is difficult to meet the requirement of the tenant function customization is solved, the requirement of the tenant customization is met, and in addition, the customization is given to the tenant, so that the development and operation cost of the office system is reduced.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, and it is obvious that the drawings in the following description are some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art. In the drawings:
FIG. 1 is a first flow chart of a tenant functional customization method in accordance with an embodiment of the present invention;
FIG. 2 is a second flowchart of a tenant functional customization method in accordance with an embodiment of the present invention;
FIG. 3 is a third flowchart of a tenant functional customization method according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a tenant system in an embodiment of the present invention;
FIG. 5 is a schematic diagram of a tenant-based office system in accordance with an embodiment of the present invention;
FIG. 6 is a schematic diagram illustrating the operation of a function customization module according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of a basic function customization unit according to an embodiment of the present invention;
FIG. 8 is a schematic diagram of a first architecture of a tenant functional customization device according to an embodiment of the present invention;
FIG. 9 is a schematic diagram of a second architecture of a tenant functional customization mechanism according to an embodiment of the present invention;
FIG. 10 is a schematic diagram of a computer device according to an embodiment of the invention.
Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It will be appreciated by those skilled in the art that 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 is noted that the terms "comprises" and "comprising," and any variations thereof, in the description and claims of the present invention and in the foregoing figures, 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 or inherent to such process, method, article, or apparatus.
It should be noted that, without conflict, the embodiments of the present invention and features of the embodiments may be combined with each other. The invention will be described in detail below with reference to the drawings in connection with embodiments.
According to the embodiment of the invention, the office system based on the tenants is designed by combining the concepts of single tenants and multi-tenant architecture, an independent tenant system is arranged for each tenant through an independent service deployment mode under the single tenant architecture, the data isolation and the safety are improved, meanwhile, a set of office subsystem development mode is designed by combining a multi-tenant technology according to the system characteristics of office application, and a simple system independent customizing unit is designed to meet the requirement of tenant customization on the premise of only maintaining a set of core programs. In addition, through the customized function of the tenant, whether each tenant can split the function and isolate the data through the user type can be selected, and the selection range of the tenant is more flexible. As shown in fig. 5, the tenant-based office system of the embodiment of the present invention includes: the office subsystem and the tenant system corresponding to each tenant are connected with the office subsystem. The office subsystem may issue the same default functionality to each tenant system, which may be multiple. And each tenant can perform function customization in the respective tenant system.
Fig. 1 is a first flowchart of a tenant function customization method according to an embodiment of the present invention, as shown in fig. 1, in an embodiment of the present invention, the tenant function customization method includes steps S101 to S103.
Step S101, obtaining a default function issued by an office subsystem.
In an alternative embodiment of the present invention, as shown in fig. 5, the office subsystem issues the same default function to the tenant system of each tenant, which may be multiple. In an alternative embodiment, the default function may be an application program, such as an approval program. Each default function may contain one or more of a default menu, a default service, and a default flow, depending on its type.
Step S102, performing function customization on the default function according to a customization instruction of the tenant, and generating a tenant customization function corresponding to the default function, where the function customization includes customizing at least one of a default menu, a default service and a default flow in the default function.
In the embodiment of the invention, each tenant can perform function customization on the default function according to own requirements, and one or more of a default menu, a default service and a default flow in the default function can be customized when the function customization is performed on the default function. In an alternative embodiment, the customized instruction of the tenant includes a customized target default function and specific customized content, where the customized content includes a customized menu, service, or flow.
Fig. 4 is a schematic diagram of tenant systems according to an embodiment of the present invention, where in the embodiment shown in fig. 4, each tenant system includes a function customization module 2, and each tenant may perform the function customization of this step according to the function customization 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 contains a database, wherein the database is divided into a data sharing area 6 and a data isolation area 7, and the embodiment of the present invention stores tenant customizing functions in the data isolation area 7 and stores default functions in the data sharing area 6, so as to realize data isolation of the default functions and the tenant customizing functions.
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 first, 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, as shown in fig. 2, in one embodiment of the present invention, the tenant function customizing method of the present invention includes step S201 and step S202.
Step S201, obtaining a unique identifier of the default function and a 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 the tenant system. In the embodiment of the invention, the unique identifier of the tenant is stored in the tenant system, and the unique identifier of the tenant can be the unique identifier of the enterprise where the tenant is located.
In the embodiment shown in fig. 4, each tenant system includes a SESSION module 4 and a DAO module 5, where the SESSION module 4 stores a unique identifier of the tenant, and the DAO module 5 stores a unique identifier of each default function in a data structure. The step specifically extracts the unique identifier of the tenant from the SESSION module 4 corresponding to the tenant, and extracts the unique identifier of the default function from the DAO module 5 corresponding to the tenant.
Step S202, generating the 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.
In the embodiment of the invention, the step generates a corresponding unique identifier for each tenant customizing function, and records the unique identifier 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 a 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 the preset identifier generating rule, and finally stores the generated tenant customizing function and the unique identifier thereof into the data structure of the DAO module 5.
In the embodiment shown in fig. 5, the DAO module 5 is a module for interaction between the application service unit and the database, and is responsible for data reading and storage. The data structure of the invention is stored in the application service unit in JSON format, and DAO module 5 interacts with the database via JSON data format. The JSON data structure is mainly divided into two major categories, namely, function basic information and function detailed information, wherein the function basic information comprises basic elements such as a function unique identifier, a function name, a function association service, a function association menu and the like, and the function detailed information comprises detailed contents such as a function association data table field, a function style and the like. The DAO module 5, when interacting with the function customizing module 2, mainly processes the unique identifier of the tenant customizing function in the tenant customizing function basic information, so that data can be stored in the data isolation area in preparation when storing the tenant customizing function.
Fig. 3 is a third flowchart of the tenant function customization method according to an embodiment of the present invention, as shown in fig. 3, in an embodiment of the present invention, the tenant function customization method further includes steps S301 to S303.
Step S301, obtaining that the tenant sends a service function usage request to the office subsystem, where the service function usage 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 because 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 customized tenant customization function information of each tenant, so that the service function use request records default function information, and the subsequent tenant system judges whether the 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 a business function usage request 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 a default function or a tenant customizing function when using the office subsystem, and obtain corresponding data.
Step S302, determining a default function corresponding to the default function information, and generating identification information according to the unique identifier of the corresponding default function, the unique identifier of the tenant, and the identifier generation rule.
In the embodiment shown in fig. 4, this step may specifically be:
the function selecting module 3 firstly obtains a JSON data structure of a tenant using function from the DAO module 5 through a reflection mechanism, and obtains a unique identifier of the tenant using function from the JSON data structure, and specifically, the function selecting module 3 obtains a default function unique identifier corresponding to the default function information from the DAO module 5;
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 can be the unique identifier of the enterprise where the tenant is located;
the function selecting module 3 generates identification information according to the unique default function identification, the unique identification of the tenant and a preset identification generation rule, and specifically, the function selecting module 3 splices the unique default function identification and the unique identification of the tenant to generate the identification information.
Step S303, inquiring the tenant customizing function corresponding to the identification information from a storage space storing the tenant customizing function, and sending the data of the inquired tenant customizing function to the office subsystem.
In the embodiment shown in fig. 4, this step may specifically be: the function selecting module 3 uses the query condition 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 so, the function selection module 3 returns the tenant customized function data stored in the data isolation area 7 to the function business logic processing module 1 and sends the tenant customized function data to the office subsystem through the function business logic processing module 1.
In an alternative embodiment, the step queries the identification information from the data isolation area, confirms whether the tenant customizing function corresponding to the identification information exists in the data isolation area, and if so, sends the data of the tenant customizing function to the office subsystem for function use.
In one embodiment of the present invention, if the tenant customized function corresponding to the identification information cannot be queried, the present invention queries the corresponding default function from the storage space storing the default function, and sends the queried default function data to the office subsystem.
In the embodiment shown in fig. 4, if the function selection module 3 cannot query the corresponding tenant customized function from the data isolation area 7 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 area 6, and the queried default function data is returned to the functional business logic processing module 1 and finally sent to the office subsystem through the functional business logic processing module 1.
In the embodiment of the invention, if the tenant customizing function corresponding to the identification information cannot be queried from the data isolation area, and the fact that tenant customizing does not exist in the default function is indicated, the data of the default function in the data sharing area is sent to the office subsystem for function use.
Therefore, the embodiment of the invention can perform function customization on the default function issued by the office subsystem according to the requirement, generate the tenant customization function corresponding to the default function, and store the tenant customization function and the default function separately, thereby solving the technical problem that the prior art is difficult to meet the requirement of tenant function customization, meeting the requirement of tenant customization, and in addition, giving customization to the tenant also reduces the development and operation cost of the office system.
Based on the same inventive concept, the embodiment of the present invention further provides a tenant function customization device, which is configured to implement the tenant function customization method, as described in the following embodiments. Since the principle of the tenant function customizing device for solving the problem is similar to that of the tenant function customizing method, the embodiment of the tenant function customizing device can refer to the embodiment of the tenant function customizing method, and the repetition is not repeated.
Fig. 8 is a first schematic structural diagram 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 of the present invention includes:
the default function acquisition unit is used for acquiring default functions issued by the office subsystem;
a function customizing unit, configured to perform function customization on the default function according to a customization instruction of a tenant, and generate a tenant customizing function corresponding to the default function, where the function customization includes customizing at least one of a default menu, a default service, and a default flow in the default function;
and the storage unit is used for storing the tenant customizing function and the default function separately.
Fig. 9 is a second schematic structural diagram of a tenant function customizing apparatus according to an embodiment of the present invention, as shown in fig. 9, in an alternative embodiment of the present invention, the tenant function customizing apparatus further includes:
the identification information acquisition unit is used for acquiring the unique identification of the default function and the unique identification of the tenant;
the tenant customized function unique identification generating unit is used for generating the unique identification of the tenant customized 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 obtaining unit, configured to obtain that the tenant sends a service function use request to the office subsystem, where the service function use request includes default function information;
the identification information generation unit is used for determining a 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;
the first query unit is used for querying the tenant customizing function corresponding to the identification information from a storage space storing the tenant customizing function, and sending the queried tenant customizing function data to the office subsystem;
and the second query unit is used for querying the corresponding default function from the storage space storing the default function if the tenant customized function corresponding to the identification information cannot be queried, and sending the queried data of the default function to the office subsystem.
Based on the same inventive concept, the embodiment of the invention also provides a tenant-based office system, as described in the following embodiment. Since the principle of solving the problem of the tenant-based office system is similar to that of the tenant function customizing method, the embodiment of the tenant-based office system can refer to the embodiment of the tenant function customizing method, and the repetition is omitted.
As shown in fig. 5, the tenant-based office system of the present embodiment includes: the office subsystem and the tenant system corresponding to each tenant are connected with the office subsystem. The office subsystem may issue the same default functionality to each tenant system, which may be multiple.
As shown in fig. 4, the present invention combines the design concepts of single tenant and multi-tenant, and the office subsystem provides the same set of programs (i.e., tenant systems) for each tenant during deployment, and each tenant system deploys an independent application service unit and database. And data isolation is carried out on each tenant individual through an independent application service unit and a database. When the office subsystem issues the program, the unified program package is issued to each tenant, and only one part of program is required to be exported, so that 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 customization modules, and provides a complete office management function for each tenant, and in addition, the function customization modules support the personalized demands of users.
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 database mainly comprises a functional service logic processing module 1, a functional customization module 2, a functional selection module 3, a SESSION module 4 and a DAO module 5, wherein the database comprises: a data sharing zone 6 and a data isolation zone 7.
In the embodiment of the present invention, the data sharing area 6 is used to store default functions issued by the office subsystem. The function customization module 2 is configured to perform function customization based on a default function, and generate a tenant customization function corresponding to the default function, where the function customization includes customizing at least one of a default menu, a default service, and a default flow in the default function, and generating a corresponding customization menu, customization service, and customization flow. The generated tenant customizing function is stored in the data isolation 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 function can be customized by the function customization module 2 tenant. In an embodiment of the present invention, the internal structure of the function customizing module 2 is shown in fig. 6, and mainly comprises a basic function customizing unit 201, a flow customizing unit 202 and a customizing function storing unit 203.
Wherein a default menu and default services in the default functions will be function customized using the basic function customization unit 201, and a default flow in the default functions will be flow customized using both the basic function customization unit 201 and the flow customization unit 202. After customization is completed, the customized function of the tenant is stored in the DAO module 5 through the customized 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 module 2 are mutually independent, after the customization of a certain module, the use of the customized or default functions of other modules is not influenced, when a certain default service comprises a menu, service and flow, only the customized service can be selected, and other functions still use the default functions of the system, for example, when the office subsystem asks for a false, the page of the asking for a false is customized, but the flow still can use the default approval flow, and the menu also enters from the original asking for a false and can automatically open the page of the asking for a false after the customization.
In an embodiment of the present invention, the basic function customizing unit 201 mainly includes: a function list 20101, a style list 20102, a custom function filter unit 20103, a custom style filter unit 20104, and a custom function generation unit 20105. According to the method, firstly, a function list 20101 and a style list 20102 are maintained through a program, then contents meeting the needs of tenants are screened out through a customized function screening unit 20103 and a customized style screening unit 20104, and finally, the functions capable of interacting with the tenants are combined through a customized function generating unit 20105.
For example, when the tenant uses the "newly added" function, the default "newly added" cannot meet the requirement of the user, the user can customize the "newly added" by using the basic function customizing unit, firstly select the function "newly added" to be customized from the function list 20101, then obtain the style of the "newly added" function, such as display icon, position, color, display condition, etc., from the style list 20102, 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 office functions such as adding, deleting, modifying, importing, exporting, etc., and a service function list initialized by database table fields. Style list 20102 includes page styles of various dimensions of icons, displays, hides, length, width, date, and the like. The style sheets 20102 may provide styles of different contents according to different selection functions.
In an embodiment of the present invention, the custom function filtering unit 20103 and the custom style filtering unit 20104 are mainly used for selecting functions and styles that need to be customized. The customization function generating unit 20105 develops the customization off-program, and mainly customizes the selected functions and units by the tenant itself. The tenant may generate tenant customization functionality using a system-provided visual customization operation interface.
In an embodiment of the present invention, the process customization unit 202 is configured to provide a visual process customization interface, and the tenant itself customizes the process diagram. The flow customization unit 202 primarily provides a combination of nodes and wires to form a completed business flow link. The tenant can customize the flow nodes and the flow connecting lines according to the requirements through the basic function customizing unit, and then uses the connecting lines to connect the nodes through the visual operation interface.
In an embodiment of the present invention, the customization function storage unit 203 stores the customized tenant customization function to the DAO module 5.
In a specific embodiment of the present invention, the SESSION module 4 is configured to store a unique identifier of a tenant, 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, where the preset identifier generating rule is optional, and the unique identifier of the default function and the unique identifier of the tenant are spliced. Optionally, the unique identifier of the tenant may be an enterprise unique identifier of an enterprise in which the tenant is located.
In a specific embodiment of the present invention, after generating the customized function of the tenant, the customized function storage unit 203 first obtains the currently accessed office subsystem from the SESSION module 4 and customizes the tenant information of the function, extracts the unique identifier of the enterprise where the tenant is located, splices the unique identifier of the default function with the unique identifier of the enterprise to form the unique identifier of the customized function, and finally stores the generated customized function of the tenant and the unique identifier thereof in the data structure of the DAO module 5.
In an embodiment of the present invention, the functional business logic processing module 1 interacts with the office subsystem to implement a corresponding function according to the needs of the tenant. Optionally, the functional service logic processing module 1 is formed by combining a plurality of default functions or tenant customized functions to form an office subsystem service function that can be used by a tenant.
In an embodiment of the present invention, the function selecting module 3 is configured to determine whether a default function or a tenant customized function is used by a tenant when using the office subsystem, and obtain corresponding data. When a tenant uses a service function, the functional service logic processing module 1 sends a service function use request to an office subsystem, wherein the service function use request contains default function information. At this time, the function selecting module 3 intercepts all the outlets from which the function data is acquired, and first determines whether to select the customized function or the default function of the tenant. The selection process comprises the following steps:
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 tenant use function from the DAO module 5 through a reflection mechanism, and obtains the unique identifier of the tenant use function 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.
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 unique identifier of the enterprise where the tenant is located.
Step 4: the function selecting module 3 generates identification information according to the unique identification of the default function, the unique identification of the tenant and the preset identification generating rule. Specifically, the function selecting module 3 concatenates the default function unique identifier and the unique identifier of the tenant to generate the identification information.
Step 5: the function selecting module 3 uses the query condition 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 so, the function selection module 3 returns the tenant customized function data stored in the data isolation area 7 to the function business logic processing module 1 and sends the tenant customized function data to the office subsystem through the function business logic processing module 1. When there are multiple pieces of enterprise information in the base data in the data sharing area 6 of the database and the tenant customizes different functions for different pieces of enterprise information, this step returns to the current system to access the tenant customization function of the enterprise where the tenant is located.
Step 7: if the default function is not found, the function selecting module 3 queries the default function corresponding to the default function unique identifier from the data sharing area 6, returns the queried default function data to the function business logic processing module 1, and finally sends the default function data to the office subsystem through the function business logic processing module 1.
In an embodiment of the present invention, the SESSION module 4 is configured to store basic information of a tenant, including personal information of the tenant and enterprise information where the tenant is located. The personal information and the enterprise information are provided with unique identifiers to determine tenant individuals and 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 storage. The data structure of the invention is stored in the application service unit in JSON format, and DAO module 5 interacts with the database via JSON data format. The JSON data structure is mainly divided into two major categories, namely, function basic information and function detailed information, wherein the function basic information comprises basic elements such as a function unique identifier, a function name, a function association service, a function association menu and the like, and the function detailed information comprises detailed contents such as a function association data table field, a function style and the like. The DAO module 5 mainly processes the unique identifier of the tenant custom function in the tenant custom function basic information when interacting with the custom function storage unit 203, so that data can be stored in the data isolation area in preparation when storing the tenant custom function.
In one embodiment of the present invention, the data sharing area 6 mainly stores default function data and basic data, including default menu, default service, default procedure, and basic data. According to the characteristics of the office subsystem, the invention divides the functional modules of the office subsystem into three functional modules from the software development perspective, including menu authority, flow management and service management. The menu authority mainly refers to a menu list provided by the office subsystem and whether the user has authority to display the menu when using the office subsystem, the flow management mainly refers to a business flow existing in the office subsystem, and the service management mainly refers to the function 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 the research and analysis of requirements, the default functions of the three functional modules are preferably developed, a default menu, default service and default flow are formed, and the default menu, default service and default flow are stored in a data sharing area. The default function data is provided to the DAO module 5 for reading in a read-only mode, so that a unified program release package is formed when the program release is matched, and the office subsystem also provides a whole set of office service functions for each tenant through the default function of the part. The basic data is basic information including customer information, enterprise information, new authority, function list and style list provided by the system, and the like, and provides basic services for the system.
In an embodiment of the present invention, the data isolation area 7 stores tenant customized function data, including customized menus, customized services, and customized flows, that need to be isolated from the data sharing area 6. Each tenant can generate tenant customized function data in the database data isolation area 7 after customizing functions according to requirements of the tenant, and the tenant customized function data is isolated from the default functions in the data sharing area 6 through the enterprise information unique identification in the unique identification of the tenant customized function. Typically, there is one piece of enterprise information for each tenant, so there is only one piece of isolated tenant customized function data in total, and when a tenant has a special requirement and needs to split a customer group with smaller granularity, multiple pieces of customized data can be repeatedly stored and isolated by a function unique identifier. The invention does not limit the unique identification of the enterprise information of the office subsystem, so that the tenant can create the enterprise information without limit and customize functions for the client tenants of different enterprise information.
From the above embodiments, it can be seen that the present invention combines the concepts of single tenant and multi-tenant architecture, and designs an office system based on tenants. Different from a single-tenant architecture, the invention designs a simple visual tenant customization function through a non-complex program structure, a mode of customizing customized individual demands by tenants, avoids high development cost and operation and maintenance cost caused by demands under the single-tenant architecture, and only maintains one set of program to meet the demands of various tenants. Meanwhile, the system is different from a multi-tenant architecture, and the system of each tenant is physically subjected to data isolation, so that the security of data isolation among the 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 includes a memory, a processor, a communication interface, and a communication bus, where a computer program executable on the processor is stored on the memory, and the processor implements the steps of the method of the above embodiment when executing the computer program.
The processor may be a central processing unit (Central Processing Unit, CPU). The processor may also be any other general purpose processor, digital signal processor (Digital Signal Processor, DSP), application specific integrated circuit (Application Specific Integrated Circuit, ASIC), field programmable gate array (Field-Programmable Gate Array, FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof.
The memory is used as a non-transitory computer readable storage medium for storing non-transitory software programs, non-transitory computer executable programs, and units, such as corresponding program units in the above-described method embodiments of the invention. The processor executes the various functional applications of the processor and the processing of the composition data by running non-transitory software programs, instructions and modules stored in the memory, i.e., implementing the methods of the method embodiments described above.
The memory may include a memory program area and a memory data area, wherein the memory program area may store an operating system, at least one application program required for a function; the storage data area may store data created by the processor, etc. In addition, the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory may optionally include memory located remotely from the processor, the remote memory being connectable to the processor through 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, which when executed by the processor, performs the method in the above embodiments.
The details of the computer device may be correspondingly understood by referring to the corresponding relevant descriptions and effects in the above embodiments, and will not be repeated here.
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 implements the steps in the tenant function customizing method described above when executed in a computer processor. It will be appreciated by those skilled in the art that implementing all or part of the above-described embodiment method may be implemented by a computer program to instruct related hardware, where the program may be stored in a computer readable storage medium, and the program may include the above-described embodiment method when executed. Wherein the storage medium may be a magnetic Disk, an optical Disk, a Read-Only Memory (ROM), a random access Memory (RandomAccessMemory, RAM), a Flash Memory (Flash Memory), a Hard Disk (HDD), a Solid State Drive (SSD), or the like; 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 invention described above may be implemented in a general purpose computing device, they may be concentrated on a single computing device, or distributed across a network of computing devices, or they may alternatively be implemented in program code executable by computing devices, such that they may be stored in a memory device for execution by the computing devices, or they may be separately fabricated into individual integrated circuit modules, or multiple modules or steps within them may be fabricated into a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only of the preferred embodiments of the present invention and is not intended to limit the present invention, but various modifications and variations can be made to the present invention by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (8)

1. A tenant function customization method, characterized by being applied to a tenant system, the tenant system comprising: an application service unit and a database; the application service unit includes: the system comprises a function customization module, a DAO module, a SESSION module, a function service logic processing module and a function selection module; the database comprises: a data sharing zone and a data isolation zone, the method comprising:
Acquiring a default function issued by an office subsystem;
the function customization module performs function customization on the default function according to a customization instruction of a tenant, and generates a tenant customization function corresponding to the default function, wherein the function customization comprises customization on at least one of a default menu, a default service and a default flow in the default function;
separately storing the tenant customizing function and the default function, wherein the data sharing area stores the default function, and the data isolating area stores the tenant customizing function;
the function customizing module obtains the unique identifier of the tenant from the SESSION module, obtains the unique identifier of the default function from the DAO module, and generates the 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;
the function service logic processing module sends a service function use request to the office subsystem when a tenant uses a service function, wherein the service function use request contains default function information;
the function selecting module intercepts the service function using request, acquires the unique identifier of the default function corresponding to the default function information from the DAO module, acquires the unique identifier of the tenant from the SESSION module, generates identification information according to the unique identifier of the corresponding default function, the unique identifier of the tenant and the identification generating rule, inquires the tenant customizing function corresponding to the identification information from the data isolation area, and sends the data of the inquired tenant customizing function to the office subsystem for function use.
2. The tenant function customization method of claim 1, further comprising:
if the tenant customized function corresponding to the identification information cannot be queried, querying the corresponding default function from a storage space storing the default function, and sending the queried default function data to the office subsystem.
3. A tenant function customizing apparatus, applied to a tenant system, the tenant system comprising: an application service unit and a database; the application service unit includes: the system comprises a function customization module, a DAO module, a SESSION module, a function service logic processing module and a function selection module; the database comprises: a data sharing zone and a data isolation zone, the apparatus comprising:
the default function acquisition unit is used for acquiring default functions issued by the office subsystem;
a function customizing unit, configured to perform function customization on the default function according to a customization instruction of a tenant by using the function customizing module, and generate a tenant customizing function corresponding to the default function, where the function customization includes customizing at least one of a default menu, a default service and a default flow in the default function;
A storage unit, configured to store the tenant customizing function and the default function separately, where the data sharing area stores the default function, and the data isolating area stores the tenant customizing function;
the identification information acquisition unit is used for acquiring the unique identification of the tenant from the SESSION module through the function customization module and acquiring the unique identification of the default function from the DAO module;
the tenant customized function unique identification generating unit is used for generating the unique identification of the tenant customized function according to the unique identification of the default function, the unique identification of the tenant and a preset identification generating rule through the function customized module;
a service function use request obtaining unit, configured to send a service function use request to the office subsystem through the functional service logic processing module when a tenant uses a service function, where the service function use request includes default function information;
an identification information generating unit, configured to intercept the service function usage request through the function selection module, then obtain a unique identifier of a default function corresponding to the default function information from the DAO module, obtain a unique identifier of a tenant from the SESSION module, generate identification information according to the corresponding unique identifier of the default function, the unique identifier of the tenant, and the identifier generation rule,
The first query unit is used for querying the tenant customizing function corresponding to the identification information from the data isolation area through the function selection module, and sending the queried tenant customizing function data to the office subsystem for function use.
4. The tenant function customization apparatus of claim 3, further comprising:
and the second query unit is used for querying the corresponding default function from the storage space storing the default function if the tenant customized function corresponding to the identification information cannot be queried, and sending the queried data of the default function to the office subsystem.
5. 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 2 when executing the computer program.
6. A computer readable storage medium storing a computer program, characterized in that the computer program when executed in a computer processor implements the method of any one of claims 1 to 2.
7. A tenant-based office system, comprising: the office subsystem and each tenant correspond to the tenant system respectively; the office subsystem issues a plurality of default functions to the tenant system;
each tenant system comprises: an application service unit and a database; the application service unit includes: a function customizing module; the database comprises: a data sharing area and a data isolation area;
the function customizing module is used for carrying out function customization on 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 customization 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 customizing function;
the application service unit further includes: a DAO module and a SESSION module;
the SESSION module is configured to store a unique identifier of a tenant; the DAO module is used for storing the unique identification of the default function;
the function customizing module is further used for generating the 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 sending the tenant customizing function to the DAO module for storage;
The application service unit further includes: the function service logic processing module and the function selecting module;
the function service logic processing module is used for sending a service function use request to the office subsystem when a tenant uses a service function, wherein the service function use request contains default function information;
the function selecting module is used for intercepting the service function using request, then acquiring the unique identifier of the default function corresponding to the default function information from the DAO module, acquiring the unique identifier of the tenant from the SESSION module, generating identification 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 identification information from the data isolation area, and transmitting the data of the inquired tenant customizing function to the office subsystem for function use.
8. The tenant-based office system of claim 7, wherein the function selection module is further configured to, when a tenant customized function corresponding to the identification information cannot be queried from the data isolation area, query the corresponding default function from the data sharing area, and send data of the queried default function to the office subsystem.
CN202010540872.2A 2020-06-15 2020-06-15 Tenant function customization method and device and tenant-based office system Active CN111736807B (en)

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 CN111736807A (en) 2020-10-02
CN111736807B true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
叶振岳 ; 冯志勇 ; 饶国政 ; .基于多租户模式的节能检测及监控系统.计算机工程与科学.2013,(09),全文. *

Also Published As

Publication number Publication date
CN111736807A (en) 2020-10-02

Similar Documents

Publication Publication Date Title
US20200090172A1 (en) Containerization of network services
CN110310034B (en) Service arrangement and business flow processing method and device applied to SaaS
US8356274B2 (en) System and methods to create a multi-tenancy software as a service application
US9043445B2 (en) Linking instances within a cloud computing environment
US10996997B2 (en) API-based service command invocation
CN109683892B (en) Page display method and device, computer equipment and storage medium
US9736272B2 (en) Generation and distribution of named, definable, serialized tokens
CN109391676A (en) Terminal equipment control method, terminal device and computer readable storage medium
US10262155B1 (en) Disabling features using feature toggle
CN109981322A (en) The method and apparatus of cloud resource management based on label
US20140325077A1 (en) Command management in a networked computing environment
US11689636B2 (en) Delegating network data exchange
CN111736807B (en) Tenant function customization method and device and tenant-based office system
CN104461893B (en) Data processing method and data processing equipment
US10082933B2 (en) Context sensitive active fields in user interface
CN110807535A (en) Construction method and construction device of unified reservation platform and unified reservation platform system
CN108370329B (en) Management method and device for management function object
CN110798504A (en) Method, device, management equipment and storage medium for cross-region sharing service
US10223463B2 (en) Node controllers for hierarchical data structures
US11438398B2 (en) 3rd generation partnership project (3gpp) framework for live uplink streaming (flus) sink capabilities determination
US20170195433A1 (en) Switchable business feature with prices and sales integration
Juuti Definition and implementation of general-purpose iot cloud backend
CN114666388B (en) Micro-service development method, device and storage medium for organization service
US20230217471A1 (en) Media sink capabilities description
CN115842721A (en) Network deployment method, device and related equipment

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