Multi-tenant page configuration method and device, equipment and storage medium
By using a multi-tenant page configuration method, menu page information is determined based on tenant and page identifiers, and personalized configuration is performed using a preset rendering engine. This solves the problem of limited page configuration in enterprise data asset management systems and improves data management efficiency.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-05
- Publication Date
- 2026-03-10
AI Technical Summary
The current enterprise data asset management system's page configuration cannot be customized according to enterprise users, resulting in limitations in data management and affecting management efficiency.
The multi-tenant page configuration method determines the menu page information based on the tenant identifier and page identifier carried in the user request initiated by the tenant, and uses a preset rendering engine to perform personalized menu configuration, including flexible adjustment of menus, forms and fields, and supports tenants to customize menu order, aliases and visibility and other attributes.
It enables flexible menu configuration for different tenants, improves data update and management efficiency, and meets the personalized needs of enterprise users.
Smart Images

Figure CN121636031A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a multi-tenant page configuration method, device, storage medium and apparatus. Background Technology
[0002] With economic development, data assets have become an important resource for enterprise competitiveness. Unlike traditional asset forms, data assets are characterized by immateriality, replicability, value volatility, and high dependence. Therefore, systematic management of data assets has become a primary goal for enterprises. However, the current data asset management system cannot customize the page settings according to enterprise users, which limits data management, makes it difficult to update data effectively, and thus affects management efficiency. Summary of the Invention
[0003] The main purpose of this application is to provide a multi-tenant page configuration method, device, storage medium and apparatus, which aims to solve the technical problem that the page configuration of current data asset management systems for different enterprises cannot be customized according to enterprise users, resulting in limitations in data management.
[0004] To achieve the above objectives, this application proposes a multi-tenant page configuration method, which includes: The menu page information is determined based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant. The target page is rendered and configured based on the preset rendering engine and the menu page information to obtain the target page information.
[0005] Optionally, the step of determining the menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant includes: Based on the tenant identifier and page identifier in the user request initiated by the multi-tenant, obtain the menu list of the current page, the default menu configuration, and the tenant's personalized menu configuration; If at least one of the following personalized configurations exists: order, alias, or visibility, the personalized configuration will override the default menu configuration, and menus with a visibility attribute value of "no" will be removed. Sort the visible menus according to their order attribute values to obtain a sorted list of visible menus; The menu page information is determined based on the sorted list of visible menus.
[0006] Optionally, the step of determining the menu page information based on the sorted list of visible menus includes: Based on the menu identifier contained in the user request and the tenant identifier, the current form list, the default form configuration, and the tenant form personalized configuration are obtained from the visible menu list; If at least one of the following tenant form personalization configurations exists: order, alias, or visibility, then the tenant form personalization configuration will override the default form configuration, and forms with a visibility attribute of "no" will be removed. The form list is reordered according to the order attribute value in the tenant form personalization configuration to obtain a sorted list of visible forms; The menu page information is determined based on the sorted list of visible forms.
[0007] Optionally, the step of determining the menu page information based on the sorted list of visible forms includes: Query the default configuration and personalized configuration of fields in the sorted visible form list; A list of configurable fields is generated based on the default configuration and the personalized configuration of the fields. The menu page information is determined based on the list of configurable fields.
[0008] Optionally, the step of generating a list of configurable fields based on the default field configuration and the personalized field configuration includes: If the field personalization configuration has at least one of the following: alias, visibility, or required field, then the field personalization configuration will override the field default configuration, and fields with a visibility attribute of "no" will be removed, generating a list of configurable fields. Accordingly, the step of determining the menu page information based on the configurable field list includes: Perform attribute validation on the personalized fields added by the tenant in the user request and the list of configurable fields to obtain the field attribute validation results; The menu page information is determined based on the validation results of the field attributes.
[0009] Optionally, the step of performing attribute validation on the personalized fields added by the tenant in the user request and the list of configurable fields to obtain the field attribute validation results further includes: The personalized fields added by the tenant in the user request are validated for data type, length, required fields, uniqueness, format compliance, and security to obtain the validation result of the first field attribute. The configurable field list is validated for data type, length, required fields, uniqueness, format compliance, and security to obtain the validation result of the second field attribute. Accordingly, the step of determining the menu page information based on the field attribute validation result includes: If both the first field attribute validation result and the second field attribute validation result pass, the fields that pass the validation are merged to generate a list of fields to be rendered. The menu page information is determined based on the list of fields to be rendered.
[0010] Optionally, the step of configuring the rendering of the target page based on the preset rendering engine and the menu page information to obtain the target page information includes: Target configuration information is generated based on the sorted list of visible menus, the sorted list of visible forms, and the list of fields to be rendered in the menu page information. The rendering configuration is performed based on the preset rendering engine and the target page configuration information to obtain the target page information.
[0011] Furthermore, to achieve the above objectives, this application also proposes a multi-tenant page configuration device, which includes: The page loading module is used to determine the menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant. The page rendering module is used to configure the rendering of the target page based on the preset rendering engine and the menu page information, and to obtain the target page information.
[0012] In addition, to achieve the above objectives, this application also proposes a multi-tenant page configuration device, the device comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor, the computer program being configured to implement the steps of the multi-tenant page configuration method described above.
[0013] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the multi-tenant page configuration method described above.
[0014] One or more technical solutions proposed in this application have at least the following technical effects: This application determines menu page information by using the tenant identifier and page identifier carried in user requests initiated by multiple tenants; it then renders and configures the target page based on a preset rendering engine and the menu page information to obtain the target page information. Compared to the current page configuration of different enterprise data asset management systems, which cannot be customized according to enterprise users and thus limits data management, this application determines the menu page that the tenant needs to configure by using the tenant identifier and page identifier carried in the request triggered by the tenant to complete personalized menu configuration. This allows for flexible adjustment of the menu order for different tenants, effectively improving data update efficiency and data management efficiency. Attached Figure Description
[0015] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0016] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0017] Figure 1 This is a flowchart illustrating an embodiment of the multi-tenant page configuration method in this application. Figure 2 This is a general page diagram provided for Embodiment 1 of the multi-tenant page configuration method of this application; Figure 3 This is a system diagram provided for Embodiment 1 of the multi-tenant page configuration method of this application; Figure 4 A schematic diagram of the validator provided in Embodiment 1 of the multi-tenant page configuration method of this application; Figure 5 This is a schematic diagram of field validation provided in Embodiment 2 of the multi-tenant page configuration method of this application; Figure 6 This is a schematic diagram of the field validation process provided in Embodiment 2 of the multi-tenant page configuration method of this application; Figure 7 This is a schematic diagram of the module structure of the multi-tenant page configuration device according to an embodiment of this application; Figure 8 This is a schematic diagram of the device structure of the hardware operating environment involved in the multi-tenant page configuration method in this application embodiment.
[0018] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0019] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.
[0020] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.
[0021] The main solution of this application embodiment is: to determine the menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant; to perform attribute verification on the personalized fields added by the tenant in the user request and the field configuration in the menu page information to obtain the field attribute verification result; and to adjust the menu configuration corresponding to the menu page information based on the field attribute verification result to obtain the target page information.
[0022] In this embodiment, for ease of description, the following description uses a computing service device as the execution subject.
[0023] The current page configurations of different enterprise data asset management systems cannot be customized according to enterprise users, resulting in limitations in data management.
[0024] This application provides a solution that determines the menu page that a tenant needs to configure based on a request triggered by the tenant and completes the personalized menu configuration based on the personalized fields added by the tenant. This enables flexible adjustment of the menu order for different tenants, effectively improving data update efficiency and data management efficiency.
[0025] As can be seen from the above embodiments, this application determines the menu page information based on the tenant identifier and page identifier carried in the user request initiated by multiple tenants; performs attribute verification on the personalized fields added by the tenant in the user request and the field configuration in the menu page information to obtain the field attribute verification result; and adjusts the menu configuration corresponding to the menu page information based on the field attribute verification result to obtain the target page information. Compared with the current page configuration of different enterprise data asset management systems, which cannot be customized according to enterprise users, resulting in limitations in data management, this application determines the menu page that the tenant needs to configure through the request triggered by the tenant and completes the personalized menu configuration according to the personalized fields added by the tenant, thereby realizing flexible adjustment of the menu order for different tenants and effectively improving the data update efficiency and data management efficiency.
[0026] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device capable of implementing the above functions, including a multi-tenant page configuration system. The following description uses a computer as an example to illustrate this embodiment and the subsequent embodiments.
[0027] Based on this, embodiments of this application provide a multi-tenant page configuration method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the multi-tenant page configuration method of this application.
[0028] In this embodiment, the multi-tenant page configuration method includes steps S10 to S30: Step S10: Determine the menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant. It should be noted that, for further explanation of the custom configuration page of this solution, please refer to [link / reference]. Figure 2 The diagram illustrates a general page layout. This solution uses a general details page for a single business entity, divided into a sidebar displaying menus and a form content display area. Each menu contains multiple forms, and each form contains multiple fields. Not all menus, forms, and fields are necessary for the tenant, or existing fields may not meet customer requirements. Furthermore, the system's default menu names, form names, and field names may differ from those used by the customer in their business activities. Therefore, there is a need to hide menus, forms, and fields, adjust required fields, modify menu, form, and field names, and add personalized fields.
[0029] Understandably, for further explanation of the overall system of this solution, you may refer to... Figure 3The system diagram shown illustrates a solution comprising a presentation layer, a service layer, and a storage layer. The presentation layer includes a header, sidebar menu, tabs, forms, fields, a configuration parsing engine, a UI rendering engine, a data management module, and an interaction logic processing module. The storage layer includes a basic service database and a business database. This solution uses metadata management to store tenant customization information for menus, forms, and fields. Specifically, it supports flexible configuration of attributes such as menu and form order, aliases, and visibility. For fields, it allows tenants to flexibly configure aliases, required fields, and visibility, and supports adding personalized fields. This solution pre-configures menu, form, and field configuration rules in the system backend. Menu configuration rules include default configuration rules and personalized configuration rules. The default configuration rules refer to pre-saving the default menu configuration in the database's menu configuration table. The default menu configuration includes menu ID, parent menu ID, menu name, menu visibility, menu order, and business stage identifier. The menu personalization configuration rules refer to the process of accessing the menu configuration page by clicking the menu configuration button on the configuration page. On the menu configuration page, users can drag and drop to adjust the menu order, enter menu aliases, and set menu visibility. After setting, the backend interface saves the menu alias, sequence number, visibility, tenant ID, and other attributes to the menu personalization configuration table in the database. Form configuration rules include default form configuration rules and personalized form configuration rules. The default form configuration rules refer to the pre-saving of the form's default configuration in the form configuration table in the database. The default form configuration includes form ID, form name, form visibility, form order, menu ID, etc. Personalized form configuration rules refer to the process of accessing the form's configuration page by clicking the menu to which the form belongs on the configuration page. On the form configuration page, users can drag and drop to adjust the form order, enter form aliases, and set form visibility. After setting, the backend interface saves the form alias, sequence number, visibility, and other attributes to the personalized form configuration table in the database. Field configuration rules include default field configuration rules and personalized field configuration rules. Default field configuration rules refer to pre-saving the default configurations of fields in a field configuration table in the database. These default configurations include field ID, field name, field visibility, field requirement, and form ID. Personalized field configuration rules are accessed by clicking the menu associated with the form on the configuration page, then clicking the form itself to access the form field configuration page. The field configuration page supports drag-and-drop adjustments to field order, inputting field aliases, setting field requirement, and setting field visibility. After setting these parameters, the backend API will save the field alias, requirement, and visibility attributes to the personalized field configuration table in the database. Personalized field configuration rules are accessed by clicking the menu associated with the form on the configuration page, then clicking the form itself to access the form field configuration page.Click on "Add New Field" to enter the personalized field configuration page, set attributes such as field type, length, required or not, name, field identifier, value range, etc., and click "Save" to save the personalized field to the personalized field table in the database.
[0030] It should be understood that the menu configuration determines the page to which the menu belongs by recording the business stage identifier, determines the parent menu of the current menu through the parent menu ID, thus realizing the hierarchical relationship of the menu, determines the display order of the menu through the sequence number, and determines the tenant to which the current personalized configuration belongs through the tenant ID. The menu configuration determines the menu to which the current form belongs through the menu ID, determines the display order of the form through the sequence number, and determines the tenant to which the current personalized configuration belongs through the tenant ID. The field configuration can determine the form to which the menu field belongs through the form ID, determines the display order of the field through the sequence number, and determines the tenant to which the current personalized configuration belongs through the tenant ID. The联动 of field visibility is achieved by associating the field identifier of visibility, that is, when the associated field is invisible, the current field is also invisible. The personalized field configuration determines the form to which the menu field belongs through the form ID. The front end renders the field into the corresponding field element according to the field type, limits the length of the input content according to the length value, and renders whether the input box is required according to the required or not flag. The value of each personalized field is saved as a row of data in the personalized field value table. In addition to the field value, this row of data also contains the field ID and the record ID. It is associated with the field configuration through the field ID. If the record IDs of multiple fields are the same, it means that the fields belong to the same row of records or the same form. This solution completes the page configuration through the above configuration rules and the identification information in the received tenant request, thus realizing the provision of properties such as the order, alias, visibility, etc. that can support the tenant to flexibly configure the menu and the form, support the tenant to flexibly configure the alias, required or not, visibility, etc. of the field, and support the tenant to add personalized fields.
[0031] In the specific implementation, this solution receives the user request of the tenant, analyzes the identification information contained in the user request, and then determines the user's page configuration requirements. The user request may include information such as the page identifier, menu identifier, or personalized field that the user needs to configure, and determines the menu page information that needs to be configured according to the page identifier, menu identifier, or personalized field, and then completes the page configuration according to the above configuration rules.
[0032] Furthermore, step S10 also includes: obtaining the menu list, default menu configuration, and tenant menu personalized configuration of the current page based on the tenant identifier and page identifier in the user request initiated by the multi-tenant; if there is at least one personalized configuration among order, alias, and visibility, then the personalized configuration overrides the default menu configuration, and menus with a visibility attribute value of no are removed; sorting the visible menus according to the order attribute value to obtain a sorted visible menu list; and determining the menu page information based on the sorted visible menu list.
[0033] It should be noted that upon receiving a user request, the system uses a pre-configured parsing engine to identify the page and tenant identifiers in the request. This allows it to obtain the current page's menu list, default menu configuration, and tenant menu customization configuration. The system then displays the configurable menu list, supporting drag-and-drop sorting, aliasing, and visibility adjustments. The customization configuration is saved. If at least one of the following customization options exists—order, alias, or visibility—the customization will override the default menu configuration, and menus with a "no" visibility attribute will be removed. The visible menus are sorted according to their order attribute values to obtain a sorted list of visible menus. The system then updates the page configuration information in the menu page information based on this sorted list.
[0034] In the specific implementation, after determining the page configuration information, a preset rendering engine can be used to render the obtained menu list of the current page, along with the default menu configuration and the tenant's personalized menu configuration. If personalized configurations exist, such as order, aliases, or visibility, these personalized configurations will override the default configurations. Menus with a "no" visibility attribute value are removed, and the menus are reordered according to their order attribute values. The reordered list of visible menus is then rendered. After the menu rendering is complete, if a tenant clicks a menu item, a form list needs to be further loaded.
[0035] Further, the step of determining the menu page information based on the sorted visible menu list includes: obtaining the current form list, the default form configuration, and the tenant form personalized configuration from the visible menu list based on the menu identifier contained in the user request and the tenant identifier; if there is at least one tenant form personalized configuration among order, alias, and visibility, then the tenant form personalized configuration overrides the default form configuration, and forms with a visibility attribute of no are removed; reordering the form list according to the order attribute value in the tenant form personalized configuration to obtain a sorted visible form list; and determining the menu page information based on the sorted visible form list.
[0036] It should be noted that when a menu item is clicked, the system retrieves the current menu's form list, default form configurations, and tenant-specific form configurations from the backend based on the menu identifier and tenant identifier. It then displays a list of configurable forms, supporting drag-and-drop sorting, setting aliases, and adjusting visibility. The system saves the personalized form configurations; if personalized configurations exist for order, aliases, or visibility, they override the default configurations. Forms with a "no" visibility attribute are removed, and the system re-sorts and renders the re-sorted list of visible forms based on their order attribute values. The system also updates the form configuration information in the menu page based on this list.
[0037] In the specific implementation, after determining the form configuration information, a preset rendering engine can be used to render the current menu's form list, default form configurations, and tenant's personalized form configurations from the obtained form configuration information. If personalized configurations exist, such as order, aliases, or visibility, these personalized configurations will override the default configurations. Forms with a "no" visibility attribute value are removed, and the forms are reordered according to their order attribute values. The reordered list of visible forms is then rendered. If a tenant clicks on a form, a further list of fields needs to be loaded.
[0038] Furthermore, the step of determining the menu page information based on the sorted list of visible forms includes: querying the default configuration and personalized configuration of fields in the sorted list of visible forms; generating a list of configurable fields based on the default configuration and personalized configuration; and determining the menu page information based on the list of configurable fields.
[0039] It should be noted that when a user clicks on a form, the system queries the sorted list of visible form fields, including both default and personalized field configurations. The system loads the default and personalized field configurations, generates a list of configurable fields based on them, and updates the field configuration information in the menu page based on this list.
[0040] Step S20: Configure the rendering of the target page based on the preset rendering engine and the menu page information to obtain the target page information.
[0041] It should be noted that the preset rendering engine is a pre-configured UI rendering engine for page rendering. The UI rendering engine works by automatically generating page elements through the `valueType` field configured in the JSON. Currently, it supports rendering rules for over ten page elements, including `text`, `money`, `select`, `date`, `dateTime`, `dateWeek`, `dateMonth`, `dateQuarter`, `dateYear`, `dateRange`, `dateTimeRange`, `percent`, `index`, and `inputNumberRange`. For more complex business scenarios where existing rules cannot be directly matched, the rendering engine supports passing in custom business components defined by the developer through the `component` field. The rendering engine supports both data display and data editing modes. Built-in rules allow developers to focus more on the interaction logic between data and the server. For displayed information modules, the rendering engine has the ability to automatically parse and render according to UI specifications. The two modes can be used in parallel or independently.
[0042] Furthermore, step S20 also includes: generating target configuration information based on the sorted list of visible menus, the sorted list of visible forms, and the list of fields to be rendered in the menu page information; and performing rendering configuration based on the preset rendering engine and the target page of the target configuration information to obtain target page information.
[0043] It should be noted that target configuration information is generated by sorting the visible menu list, sorting the visible form list, and the field list to be rendered in the menu page information. The target configuration information refers to configuring the rendering of the target page based on the visible menu list, sorting the visible form list, and the field list to be rendered contained in the menu page information, and then rendering step by step according to the configured rendering information to present the final page.
[0044] In its specific implementation, this application loads the aforementioned configuration information upon completion of rendering, queries the default and personalized configurations, merges the data, and categorizes it into menu data processing, form data processing, and field data processing according to configuration type. It then links the menu, form, and field data for processing. For menu data processing, it can group data according to business stages, construct menu hierarchy relationships, and perform operations such as visibility filtering and sequential sorting to obtain menu rendering configuration information. For form data processing, it can group data by menu ID, perform visibility filtering and sequential sorting to obtain form rendering configuration information. For field data processing, it can include handling field visibility linkage, performing visibility filtering and merging personalized fields, dynamically rendering field components to obtain field rendering configuration information, and then using the menu rendering configuration information, form rendering configuration information, and field rendering configuration information to configure the rendering of the target page, thereby obtaining the target page information and completing the front-end rendering based on the target page information.
[0045] This embodiment provides a multi-tenant page configuration method. It determines menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant. The target page is then rendered and configured based on a preset rendering engine and the menu page information to obtain the target page information. Compared to current page configurations for different enterprise data asset management systems, which cannot be customized according to enterprise users and thus limit data management, this application determines the menu page that a tenant needs to configure by using the tenant identifier and page identifier carried in the tenant-triggered request to complete personalized menu configuration. This allows for flexible adjustment of the menu order for different tenants, effectively improving data update efficiency and data management efficiency.
[0046] Based on the above Figure 1 The first embodiment shown presents a second embodiment of the multi-tenant page configuration method of this application; based on the first embodiment of this application, the same or similar content as the first embodiment above can be referred to the above description, and will not be repeated hereafter.
[0047] In this embodiment, the step of generating a configurable field list based on the default field configuration and the personalized field configuration includes: if the personalized field configuration has at least one of the following: alias, visibility, or required field, then the personalized field configuration overrides the default field configuration, and fields with a visibility attribute of "no" are removed, thus generating a configurable field list; correspondingly, the step of determining menu page information based on the configurable field list includes: performing attribute validation on the personalized fields added by the tenant in the user request and the configurable field list to obtain field attribute validation results; and determining menu page information based on the field attribute validation results.
[0048] It should be noted that when configuring existing fields, at least one personalized configuration option is supported, such as drag-and-drop sorting, setting aliases, whether a field is required, and whether it is visible. The default configuration is overridden based on the personalized field configuration, fields with a "no" visibility attribute value are removed, and the fields are reordered according to their sequential attribute values, rendering the reordered list of configurable fields. When configuring user-added personalized fields, at least one personalized field configuration option is supported, such as field type, name, identifier, and whether a field is required. The field configuration information in the menu page is updated based on the personalized fields and their personalized configurations. If the general field list corresponding to the visible form list in the menu page information has at least one personalized field configuration option (alias, visibility, or required), the personalized field configuration overrides the default configuration, and fields with a "no" visibility attribute are removed, resulting in a list of configurable fields. Attribute validation is performed on the personalized fields added by the tenant in the user request and the visible general field list to obtain the field attribute validation results.
[0049] Understandably, during form initialization, the system retrieves the current form's general field list (i.e., configurable field list), default field configurations, tenant-specific field configurations, and tenant-added personalized fields from the backend based on the form identifier and tenant identifier. If a general field has personalized configurations such as aliases, visibility, or required fields, these personalized configurations override the default configurations, and fields with a "no" visibility attribute are removed. Visible fields and their required fields are then rendered. Tenant-added personalized fields are rendered based on their names, types, and required fields. When updating field configurations, attribute validation is also performed on the tenant-added personalized fields and the configurable field list in the user request, obtaining the field attribute validation results. These results are used to verify whether the fields conform to preset configuration rules, thus enabling rendering.
[0050] For a more detailed explanation of the field validator in this solution, please refer to [link / reference]. Figure 4The diagram illustrates a validator that defines a unified field validation interface, which all field validators must implement. An abstract implementation class for field validators is defined, unifying the field validation process and abstracting the validation logic into abstract methods; the specific validation logic is implemented by subclasses. For fields requiring special validation, custom validation logic is implemented by inheriting from the abstract class, creating custom validators. A default field validator is provided; fields without special validation can be validated using the default validator. This solution uses pre-set field validators to validate personalized fields added by tenants in user requests, determining whether they conform to field configuration rules. It performs null value checks and type checks based on the abstract validator, and validates the field configuration according to the validation rules after determining that the field conforms to the validator type. The default field validator supports all field types, including length validation, type validation, and parsing date strings. Special validators can be used for numeric range validation, regular expression expression validation, field association validation, etc. This solution allows for the allocation of appropriate validators based on field configuration, and when fields already exist on the menu page, the validation of newly added fields can be completed by selecting the field association validation validator.
[0051] For further explanation of the verification process of this scheme, please refer to [link / reference]. Figure 5 The diagram illustrates field validation. When the business workbench renders the page, it calls the basic service interface to query configuration information and render the page. When editing form business data, it queries the current form's field configuration information to validate whether the current form's field values conform to the field configuration. Before receiving a user request, this solution loads and renders the page menu, form, and fields using a preset rendering engine after configuring the default settings. This yields a general sidebar menu, general form, and general fields. Based on the personalized settings included in the user request, the solution personalizes the general sidebar menu, general form, and general fields, thus completing the initial personalized configuration. Since this solution allows tenant-defined fields, custom fields in the business data submitted by the tenant are validated using a field validator to ensure that the fields can be added to the page.
[0052] Furthermore, the step of performing attribute validation on the personalized fields added by the tenant in the user request and the configurable field list to obtain field attribute validation results further includes: validating the data type, length, mandatory content, uniqueness, format compliance, and security of the personalized fields added by the tenant in the user request to obtain a first field attribute validation result; validating the data type, length, mandatory content, uniqueness, format compliance, and security of the configurable field list to obtain a second field attribute validation result; correspondingly, the step of determining the menu page information based on the field attribute validation results includes: if both the first field attribute validation result and the second field attribute validation result are passed, merging the validated fields to generate a field list to be rendered; and determining the menu page information based on the field list to be rendered.
[0053] It should be noted that the personalized fields added by the tenant in the user request are validated for data type, length, required field, uniqueness, format compliance, and security to obtain the first field attribute validation result; the list of configurable fields is validated for data type, length, required field, uniqueness, format compliance, and security to obtain the second field attribute validation result, and the decision on whether to render the menu is based on the first and second field attribute validation results.
[0054] Understandably, personalized fields added by users in addition to the system's built-in general fields require attribute validation. The validation results are used to determine the newly added field information, thus enabling custom menu configuration. Since this solution allows for custom configuration of fields within the menu page structure in addition to tenant-customized input fields, attribute validation of tenant-added fields is necessary to confirm compliance with field configuration rules. This ensures page flexibility and allows for customization based on tenant needs. Validation includes basic field attributes such as field type, length, required field, and format. If both the first and second field attribute validation results pass, the personalized fields added by the tenant and the validated fields in the configurable field list are merged to determine the field list to be rendered. The menu page information is then determined based on this field list.
[0055] It should be understood that this solution supports multi-tenant field validation. Field validation is performed by combining personalized configurations. The validation logic involves retrieving the personalized field configurations, constructing a validation context, obtaining all field configurations for the form, performing validation, and returning the validation result. Field attribute validation is implemented through a field validator. The validator's validation rules can include whether the field type is within the allowed range, whether the field length is reasonable, whether the required field settings conflict with the field type (e.g., a default value is set for a non-required field), and whether the regular expression format is correct. The field attribute validation result can be returned based on the validation rules mentioned above, such as validation passed or validation failed. If at least one of the first and second field attribute validation results fails, an alert list is generated based on the fields that failed validation.
[0056] In this implementation, if both the first and second field attribute validation results pass, the validated fields are merged to generate a list of fields to be rendered. If validation fails, subsequent validations are stopped, and an alarm message is returned. For further explanation of the field validation process in this solution, please refer to [reference needed]. Figure 6 The diagram illustrating the field validation process shows that when a request is received from a custom field interface, the current form configuration is obtained, and the parameter fields are iterated through. The corresponding field configuration is retrieved from the form configuration, and the appropriate field validator is selected based on the field type. Field validators include default field validators and custom field validators. Custom field validators can include default field validators and special validators. The appropriate validator can be selected to perform validation based on the custom field type. If the validation passes, business logic processing is performed. If the validation fails, an alarm list is generated based on the fields that failed the validation, and alarm information is issued.
[0057] This embodiment provides a multi-tenant page configuration method. It determines menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant. The target page is then rendered and configured based on a preset rendering engine and the menu page information to obtain the target page information. Compared to current page configurations for different enterprise data asset management systems, which cannot be customized according to enterprise users and thus limit data management, this application determines the menu page that a tenant needs to configure by using the tenant identifier and page identifier carried in the tenant-triggered request to complete personalized menu configuration. This allows for flexible adjustment of the menu order for different tenants, effectively improving data update efficiency and data management efficiency.
[0058] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the multi-tenant page configuration method of this application. Any simple modifications based on this technical concept are within the protection scope of this application.
[0059] This application also provides a multi-tenant page configuration device, please refer to... Figure 7 The multi-tenant page configuration device includes: Page loading module 10 is used to determine menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant. The page rendering module 20 is used to configure the rendering of the target page based on the preset rendering engine and the menu page information, and obtain the target page information.
[0060] Furthermore, the page loading module 10 is also used to obtain the menu list of the current page and the default menu configuration and the tenant menu personalized configuration based on the tenant identifier and page identifier in the user request initiated by the multi-tenant; if there is at least one personalized configuration among order, alias, and visibility, the personalized configuration will override the default menu configuration and the menu with the visibility attribute value of no will be removed; the visible menus will be sorted according to the order attribute value to obtain a sorted visible menu list; and the menu page information will be determined based on the sorted visible menu list.
[0061] Furthermore, the page loading module 10 is also used to obtain the current form list, the default form configuration, and the tenant form personalized configuration from the visible menu list based on the menu identifier contained in the user request and the tenant identifier; if there is at least one tenant form personalized configuration among order, alias, and visibility, then the tenant form personalized configuration overwrites the default form configuration, and forms with a visibility attribute of no are removed; the form list is reordered according to the order attribute value in the tenant form personalized configuration to obtain a sorted visible form list; and the menu page information is determined based on the sorted visible form list.
[0062] Furthermore, the page loading module 10 is also used to query the default configuration and personalized configuration of fields in the sorted visible form list; generate a list of configurable fields based on the default configuration and personalized configuration; and determine the menu page information based on the list of configurable fields.
[0063] Furthermore, the page loading module 10 is also used to, if the field personalization configuration has at least one of the following: alias, visibility, or required field, then overwrite the field default configuration with the field personalization configuration, remove fields with the visibility attribute of "no", and generate a list of configurable fields. The page loading module 10 is also used to perform attribute verification on the personalized fields added by the tenant in the user request and the list of configurable fields, and obtain the field attribute verification results; and determine the menu page information based on the field attribute verification results.
[0064] Furthermore, the page loading module 10 is also used to verify the data type, length, requiredness, uniqueness, format compliance, and security of the personalized fields added by the tenant in the user request, and obtain the first field attribute verification result; and to verify the data type, length, requiredness, uniqueness, format compliance, and security of the configurable field list, and obtain the second field attribute verification result. The page loading module 10 is further configured to, if both the first field attribute verification result and the second field attribute verification result are passed, merge the fields that have passed the verification to generate a list of fields to be rendered; and determine the menu page information based on the list of fields to be rendered.
[0065] Furthermore, the page rendering module 20 is also used to generate target configuration information based on the sorted list of visible menus, the sorted list of visible forms, and the list of fields to be rendered in the menu page information; and to perform rendering configuration based on the preset rendering engine and the target page of the target configuration information to obtain the target page information.
[0066] The multi-tenant page configuration device provided in this application, employing the multi-tenant page configuration method described in the above embodiments, can solve the technical problem that current page configurations for different enterprise data asset management systems cannot be customized according to enterprise users, resulting in limitations in data management. Compared with the prior art, the beneficial effects of the multi-tenant page configuration device provided in this application are the same as those of the multi-tenant page configuration method provided in the above embodiments, and other technical features in the multi-tenant page configuration device are the same as those disclosed in the methods of the above embodiments, and will not be elaborated here.
[0067] This application provides a multi-tenant page configuration device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which are executed by the at least one processor to enable the at least one processor to perform the multi-tenant page configuration method described in the first embodiment above.
[0068] The following is for reference. Figure 8This document illustrates a structural diagram of a multi-tenant page configuration device suitable for implementing embodiments of this application. The multi-tenant page configuration device in embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 4 The multi-tenant page configuration device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0069] like Figure 8 As shown, the multitenant page configuration device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.) that can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 1002 or a program loaded from storage device 1003 into random access memory (RAM) 1004. RAM 1004 also stores various programs and data required for the operation of the multitenant page configuration device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via bus 1005. Input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to I / O interface 1006: input devices 1007 including, for example, touchscreens, touchpads, keyboards, mice, image sensors, microphones, accelerometers, gyroscopes, etc.; output devices 1008 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 1003 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1009. Communication device 1009 allows the multi-tenant page configuration device to communicate wirelessly or wiredly with other devices to exchange data. While the figure shows a multi-tenant page configuration device with various systems, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.
[0070] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.
[0071] The multi-tenant page configuration device provided in this application, employing the multi-tenant page configuration method described in the above embodiments, can solve the technical problem that current page configurations for different enterprise data asset management systems cannot be customized according to enterprise users, resulting in limitations in data management. Compared with the prior art, the beneficial effects of the multi-tenant page configuration device provided in this application are the same as those of the multi-tenant page configuration method provided in the above embodiments, and other technical features in this multi-tenant page configuration device are the same as those disclosed in the previous embodiment method, and will not be repeated here.
[0072] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.
[0073] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0074] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, which are used to execute the multi-tenant page configuration method described in the above embodiments.
[0075] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.
[0076] The aforementioned computer-readable storage medium may be included in a multitenant page configuration device; or it may exist independently and not assembled into a multitenant page configuration device.
[0077] The aforementioned computer-readable storage medium carries one or more programs that, when executed by a multi-tenant page configuration device, cause the multi-tenant page configuration device to: determine menu page information based on the tenant identifier and page identifier carried in the user request initiated by the multi-tenant; and perform rendering configuration on the target page based on a preset rendering engine and the menu page information to obtain the target page information.
[0078] Computer program code for performing the operations of this application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0079] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0080] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.
[0081] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described multi-tenant page configuration method, thereby solving the technical problem of multi-tenant page configuration. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as the beneficial effects of the multi-tenant page configuration method provided in the above embodiments, and will not be repeated here.
[0082] The above are only some embodiments of this application and do not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.
Claims
1. A multi-tenant page configuration method, characterized by, The multi-tenant page configuration method comprises: Determine menu page information based on tenant identification and page identification carried in a user request initiated by a multi-tenant; Render and configure a target page based on a preset rendering engine and the menu page information to obtain target page information.
2. The multi-tenant page configuration method of claim 1, wherein, The step of determining menu page information based on tenant identification and page identification carried in a user request initiated by a multi-tenant comprises: Obtain a menu list, menu default configuration and tenant menu individualization configuration of a current page based on tenant identification and page identification in a user request initiated by a multi-tenant; If there is at least one individualization configuration of sequence, alias, and whether visible, then cover the individualization configuration with the default menu configuration, and remove menus with a visible attribute value of no; Sort visible menus according to a sequence attribute value to obtain a sorted visible menu list; Determine menu page information based on the sorted visible menu list.
3. The multi-tenant page configuration method of claim 2, wherein, The step of determining menu page information based on the sorted visible menu list comprises: Obtain a current form list, form default configuration and tenant form individualization configuration from the visible menu list based on menu identification and tenant identification contained in the user request; If there is at least one tenant form individualization configuration of sequence, alias, and whether visible, then cover the tenant form individualization configuration with the form default configuration, and remove forms with a visible attribute value of no; Re-sort the form list according to a sequence attribute value in the tenant form individualization configuration to obtain a sorted visible form list; Determine menu page information according to the sorted visible form list.
4. The multi-tenant page configuration method of claim 3, wherein, The step of determining menu page information according to the sorted visible form list comprises: Query field default configuration and field individualization configuration in the sorted visible form list; Generate a configurable field list according to the field default configuration and the field individualization configuration; Determine menu page information based on the configurable field list.
5. The multi-tenant page configuration method of claim 4, wherein, The step of generating a configurable field list according to the field default configuration and the field individualization configuration comprises: If the field individualization configuration has at least one field individualization configuration of alias, whether visible, and whether required, then cover the field individualization configuration with the field default configuration, and remove fields with a visible attribute value of no to generate a configurable field list. Correspondingly, the step of determining menu page information based on the configurable field list comprises: Attribute check tenant-added individualization fields in the user request and the configurable field list to obtain a field attribute check result; Determine menu page information according to the field attribute check result.
6. The multi-tenant page configuration method of claim 5, wherein, The step of attribute checking tenant-added individualization fields in the user request and the configurable field list to obtain a field attribute check result further comprises: Check data type, length, requiredness, uniqueness, format compliance, and security of tenant-added individualization fields in the user request to obtain a first field attribute check result; The configurable field list is checked for data type, length, mandatory, uniqueness, format compliance and security to obtain a second field attribute check result; Correspondingly, the step of determining menu page information according to the field attribute check result comprises: If the first field attribute check result and the second field attribute check result are both passed, the fields that pass the check are merged to generate a field list to be rendered; Determine menu page information based on the field list to be rendered.
7. The multi-tenant page configuration method of claim 6, wherein, The step of rendering and configuring a target page based on a preset rendering engine and the menu page information to obtain target page information comprises: Generate target configuration information according to the visible menu list sorted in the menu page information, the visible form list sorted and the field list to be rendered; Render and configure a target page based on a preset rendering engine and target configuration information to obtain target page information.
8. A multi-tenant page configuration device, comprising: The device comprises a memory, a processor and a computer program stored on the memory and executable on the processor, and the computer program is configured to implement the steps of the multi-tenant page configuration method according to any one of claims 1 to 7.
9. A storage medium, characterized by The storage medium is a computer readable storage medium, and the storage medium stores a computer program, and the computer program is executed by the processor to implement the steps of the multi-tenant page configuration method according to any one of claims 1 to 7.
10. A multi-tenant page configuration apparatus, comprising: The multi-tenant page configuration apparatus comprises: A page loading module configured to determine menu page information based on a tenant identifier and a page identifier carried in a user request initiated by a multi-tenant; A page rendering module configured to render and configure a target page based on a preset rendering engine and the menu page information to obtain target page information.