An e-commerce system based on SaaS service

By designing an e-commerce system based on SaaS services, using components such as controller modules, logical business modules and data access modules to generate target pages to meet the personalized display needs of each tenant, the problem of poor personalized customization capabilities of SaaS-based e-commerce systems is solved, and flexibility and scalability are improved.

CN114971791BActive Publication Date: 2025-03-21深圳市飞铭达信息技术有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210582825.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-26
Publication Date
2025-03-21
Estimated Expiration
2042-05-26

AI Technical Summary

Technical Problem

SaaS-based e-commerce systems have poor personalized customization capabilities, resulting in high development, deployment and maintenance costs.

Method used

An e-commerce system based on SaaS service is designed, which receives access requests through the controller module, the logical business module realizes business functions, the data access module performs database operations, and the database stores tenant information, page information, module information, etc. The system generates a target page to meet the personalized display needs of each tenant through submodules such as domain name acquisition, tenant ID acquisition, target page determination, module ID acquisition, module information acquisition, module parameter acquisition, etc.

Benefits of technology

It can meet the personalized display needs of each tenant without customized development, simplifying the page design architecture, reducing the complexity of front and back end interactions, and improving the flexibility and scalability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114971791B_ABST
    Figure CN114971791B_ABST
Patent Text Reader

Abstract

The present invention proposes an e-commerce system based on SaaS service, which obtains domain name information from an access request received from a controller, obtains a tenant ID associated with the domain name from the tenant information table according to the domain name information, determines a target page pointed to by the domain name, obtains multiple module IDs constituting the target page of the tenant from the page information table according to the tenant ID, obtains module type, module size, module coordinates, module data ID and module parameter ID information of each module from the module information table according to the multiple module IDs and the tenant ID, and obtains module data information from the module data table, obtains corresponding module parameter information from the module parameter table according to the module type and the module parameter ID information, generates the target page to provide to the browser that submits the access request, and can meet the personalized display needs of each tenant without customized development.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of e-commerce, and in particular to an e-commerce system based on SaaS service. Background Art

[0002] SaaS (Software as a Service) is a completely innovative software application model that has emerged in the 21st century with the development of Internet technology and the maturity of application software. In the traditional model, manufacturers deploy software products to multiple customer terminals within the enterprise through licenses to achieve delivery. SaaS defines a new delivery method and also makes software return to its service essence. As an Internet service, SaaS services have many characteristics of Internet services, and the multi-tenancy feature is one of the main features that distinguishes SaaS services from traditional software products. SaaS services usually provide services to hundreds or thousands of different customers (also known as tenants) based on a set of standard software systems. This requires SaaS services to support the isolation of data and configurations between different tenants, thereby ensuring the security and privacy of each tenant's data, as well as the user's personalized needs for interfaces, business logic, data structures, etc. Since SaaS supports multiple tenants at the same time, and each tenant has many users, this poses a great challenge to the performance, stability and scalability of the infrastructure platform supporting the software. Since SaaS services have the multi-leasing characteristics, the SaaS service model can be used to provide e-commerce systems to customers with a high degree of homogeneity, so that one set of systems can be deployed and provided to multiple customers, which can greatly save development, deployment and maintenance costs. However, the SaaS-based e-commerce system has a relatively large flaw, which is that its personalization and customization capabilities are very poor. When customers need to make some personalized adjustments to the front-end layout and text, it may affect the page content of other customers. The front-end modules can only be customized and developed for customers with personalized needs. Most customers often have such customization needs, which makes its development, deployment and maintenance costs even higher than non-SaaS-based e-commerce systems. Summary of the invention

[0003] Based on the above problems, the present invention proposes an e-commerce system based on SaaS service, which can meet the personalized display needs of each tenant without customized development.

[0004] In view of this, the present invention proposes an e-commerce system based on SaaS service, comprising: a controller module, used to receive an access request sent by a browser to jump to a page of the e-commerce system specified by the access request; a logic business module, used to implement the business functions of the e-commerce system; a data access module, used to perform database operations on the database of the e-commerce system according to the request of the controller or the logic business module; a database, used to store data of the e-commerce system; the database includes a tenant information table, a page information table, a module information table, a module data table, a module type table and a module parameter table; the logic business module includes:

[0005] A domain name acquisition submodule is used to obtain domain name information from the access request received by the controller;

[0006] A tenant ID acquisition submodule, used to acquire a tenant ID associated with the domain name from the tenant information table according to the domain name information;

[0007] A target page determination submodule is used to determine the target page pointed to by the domain name;

[0008] A module ID acquisition submodule, used for acquiring multiple module IDs constituting the target page of the tenant from the page information table according to the tenant ID;

[0009] A module information acquisition submodule, configured to acquire module type, module size, module coordinates, module data ID, and module parameter ID information of each module from the module information table according to the multiple module IDs and the tenant ID, and to acquire module data information from the module data table;

[0010] A module parameter acquisition submodule, used to acquire corresponding module parameter information from the module parameter table according to the module type and the module parameter ID information;

[0011] The page generation submodule is used to generate the target page to provide to the browser that submits the access request.

[0012] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module ID field of each data record in the page information table contains all module ID information constituting the corresponding page, and the same module ID is reusable under the module ID field of different records in the page information table, and the same module ID is non-repeatable under the module ID field of the same record in the page information table.

[0013] Furthermore, in the above-mentioned e-commerce system based on SaaS services, the module corresponding to the data record whose tenant ID field value in the module information table is a range value or multiple discrete values ​​is effective in the page containing the module of the tenant whose tenant ID falls within the range value.

[0014] Furthermore, in the above-mentioned e-commerce system based on SaaS services, when the tenant ID field value of the module information table is a range value or multiple discrete values, the module data ID field is a single value or a range value or multiple discrete values, and when the module data ID field is a range value or multiple discrete values, the number of values ​​within the range or the number of discrete values ​​is the same as the number of values ​​in the tenant ID field value.

[0015] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module type table includes at least container class modules, text class modules, graphic class modules, audio class modules and video class modules, and the module parameter table in the database includes at least container module parameter table, text module parameter table, graphic module parameter table, audio module parameter table and video module parameter table.

[0016] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module data ID field value of the module corresponding to the data record whose module type field value of the module information table is container type is empty.

[0017] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the model parameter table includes a parameter reference field, and the parameter reference field defaults to an empty value. When the parameter reference field is a non-empty value, the corresponding field value of the record corresponding to the parameter reference field value is referenced as the empty value field value of the current record.

[0018] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the container class module has a nested attribute. When the parameter reference field of the container parameter table is a null value, the corresponding field value of the parent container is referenced as the null value field value of the current record.

[0019] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module corresponding to the data record whose tenant ID field value of the module information table is a single numerical value is effective in the page containing the module of the tenant whose tenant ID is the single numerical value.

[0020] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module information table also includes module size information, module coordinate information and module parameter ID information, the module size information includes the width and height information of the module, and the module coordinate information includes the coordinate mode, horizontal coordinate value, vertical coordinate value and stacking order identification information of the module.

[0021] The present invention proposes an e-commerce system based on SaaS service, which obtains domain name information from an access request received from a controller, obtains a tenant ID associated with the domain name from the tenant information table according to the domain name information, determines a target page pointed to by the domain name, obtains multiple module IDs constituting the target page of the tenant from the page information table according to the tenant ID, obtains module type, module size, module coordinates, module data ID and module parameter ID information of each module from the module information table according to the multiple module IDs and the tenant ID, and obtains module data information from the module data table, obtains corresponding module parameter information from the module parameter table according to the module type and the module parameter ID information, generates the target page to provide to the browser that submits the access request, and can meet the personalized display needs of each tenant without customized development. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 is a schematic block diagram of an e-commerce system based on SaaS service provided by an embodiment of the present invention;

[0023] Figure 2 It is a database relationship diagram of an e-commerce system based on SaaS service provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0024] In order to more clearly understand the above-mentioned purpose, features and advantages of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present application and the features in the embodiments can be combined with each other without conflict.

[0025] In the following description, many specific details are set forth to facilitate a full understanding of the present invention. However, the present invention may also be implemented in other ways different from those described herein. Therefore, the protection scope of the present invention is not limited to the specific embodiments disclosed below.

[0026] In the description of the present invention, the term "multiple" refers to two or more. Unless otherwise clearly defined, the orientation or positional relationship indicated by the terms "upper", "lower", etc. is based on the orientation or positional relationship shown in the drawings. It is only for the convenience of describing the present invention and simplifying the description, and does not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation. Therefore, it cannot be understood as a limitation of the present invention. The terms "connection", "installation", "fixation", etc. should be understood in a broad sense. For example, "connection" can be a fixed connection, a detachable connection, or an integral connection; it can be directly connected or indirectly connected through an intermediate medium. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to the specific circumstances. In addition, the terms "first", "second", etc. are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first", "second", etc. can explicitly or implicitly include one or more of the features. In the description of the present invention, unless otherwise specified, the meaning of "multiple" is two or more.

[0027] In the description of this specification, the description of the terms "one embodiment", "some implementations", "specific embodiments", etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any one or more embodiments or examples in a suitable manner.

[0028] Refer to the following Figures 1 to 2 An e-commerce system based on SaaS service provided according to some embodiments of the present invention is described.

[0029] like Figure 1 As shown, the present invention proposes an e-commerce system based on SaaS service, including: a controller module, used to receive an access request sent by a browser to jump to a page of the e-commerce system specified by the access request; a logic business module, used to implement the business functions of the e-commerce system; a data access module, used to perform database operations on the database of the e-commerce system according to the request of the controller or the logic business module; a database, used to store data of the e-commerce system; the database includes a tenant information table, a page information table, a module information table, a module data table, a module type table and a module parameter table; the logic business module includes:

[0030] A domain name acquisition submodule is used to obtain domain name information from the access request received by the controller;

[0031] A tenant ID acquisition submodule, used to acquire a tenant ID associated with the domain name from the tenant information table according to the domain name information;

[0032] A target page determination submodule is used to determine the target page pointed to by the domain name;

[0033] A module ID acquisition submodule, used for acquiring multiple module IDs constituting the target page of the tenant from the page information table according to the tenant ID;

[0034] A module information acquisition submodule, configured to acquire module type, module size, module coordinates, module data ID, and module parameter ID information of each module from the module information table according to the multiple module IDs and the tenant ID, and to acquire module data information from the module data table;

[0035] A module parameter acquisition submodule, used to acquire corresponding module parameter information from the module parameter table according to the module type and the module parameter ID information;

[0036] The page generation submodule is used to generate the target page to provide to the browser that submits the access request.

[0037] By adopting the technical solution of the above-mentioned implementation method, on the one hand, the logic business module directly obtains the data required to generate the page from the database, which makes the page design architecture simpler, and all interactions are completed in the logic business layer of the back-end, without the need to design complex front-end and back-end interaction methods; all materials and parameters are stored in a unified and efficient manner, so there is no need to design a large number of independent static page templates and style configuration files; on the other hand, all data required to generate the page are bound to the corresponding tenant through the tenant ID, and all elements that make up the page, including the content framework and various materials, are provided in a modular manner. Each page is represented in the database as a combination of multiple module IDs. While the personalized information of different tenants is reflected in different modules, the same module can also be reused in multiple tenants. It is only necessary to adjust the correspondence between the tenant ID and the module in the module information table to dynamically generate the target page pointed to by the user access request.

[0038] Figure 2 The following table is a tenant information table (equivalent to Figure 2 Example of the TENANT_INFO table in :

[0039] ID NAME DOMAIN START_TIME END_TIME 1 TENANT1 TENANT1.COM; WWW.TENANT1.COM XXXX-XX-XX XX:XX:XX XXXX-XX-XX XX:XX:XX 2 TENANT2 TENANT2.COM; WWW.TENANT2.COM XXXX-XX-XX XX:XX:XX XXXX-XX-XX XX:XX:XX 3 TENANT3 TENANT3.COM; WWW.TENANT3.COM XXXX-XX-XX XX:XX:XX XXXX-XX-XX XX:XX:XX

[0040] The ID field is the primary key of the TENANT_INFO table; the DOMAIN field is the tenant's domain name information, which can be separated by semicolons to fill in multiple domain names; the START_TIME field is the tenant's creation date; and the END_TIME field is the tenant's expiration date.

[0041] Specifically, in the above-mentioned e-commerce system based on SaaS service, the module ID field of each data record in the page information table (i.e., the MODULE_ID field in the PAGE_INFO table) contains all the module ID information constituting the corresponding page. The same module ID is reusable under the module ID field of different records in the page information table, and the same module ID is not repeatable under the module ID field of the same record in the page information table. For example, the following table is a page information table (equivalent to Figure 2 Example of the PAGE_INFO table in :

[0042] ID NAME MODULE_ID 1 INDEX 1;2;3;4;5;6;7;8;9;10;30;40 2 REGISTER 1;2;3;11;12;13;14;15;16;30;40 3 INSTRUCTION 1;2;3;17;18;19;20;30;40 4 CONTACT 1;2;3;21;22;23;24;25;30;40 5 PROFILE 1;2;3;26;27;28;29;30;40

[0043] The ID field is the primary key of the PAGE_INFO table; the NAME field is the name of the corresponding page; the MODULE_ID field is the collection of module IDs that make up the corresponding page. It can be seen that the INDEX page is composed of 12 modules, namely 1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 30; 40. In the same page, the same module ID is not allowed to be reused, but in different pages, the same module ID is reusable. For example, in the above table, modules with module IDs of 1, 2, and 3 can be the HEADER part of the page, such as the HEADER container, LOGO, and navigation bar, etc. Modules with module IDs of 30 and 40 can be the FOOTER part of the page, such as the FOOTER container and the corresponding text content, etc.

[0044] The following table is a module information table (equivalent to Figure 2 Example of the MODULE_INFO table:

[0045] ID NAME TENANT_ID MODULE_TYPE_ID MODULE_SIZE MODULE_POSITION DATA_ID STYLE_ID 1 HEADER_FRAME 1-3 1 X; X AB:X; Y; Z-INDEX 1 2 LOGO 1-3 3 X; X RE:X; Y; Z-INDEX 1-3 1 3 SLOGAN 1;3 1 X; X RE:X; Y; Z-INDEX 1;3 1 4 COMPANY_NAME 1 2 X; X RE:X; Y; Z-INDEX 1

[0046] Among them, the ID field is the primary key of the MODULE_INFO table; the NAME field is the name of the corresponding module; the TENANT_ID field is the tenant ID corresponding to the tenant information table; the MODULE_TYPE_ID field is the module type ID corresponding to the module type table; the MODULE_SIZE field is the size of the corresponding module; specifically, it refers to the width and height of the module on the page. The size field can be in the format of [width; height], and a semicolon is used as a separator to separate the width and height values. It is generally in pixels (PX). For example, the module with ID 2 and name LOGO in the above is marked as [150PX; 50PX] (without brackets, the same below); the MODULE_POSITION field is the positioning of the corresponding module; the DATA_ID field is the data ID corresponding to the module data table; the STYLE_ID field is the module parameter ID corresponding to the module parameter table, such as Figure 2 The STYLE_ID field shown is combined with the MODULE_TYPE_ID to associate with the record in the corresponding MODULE_TYPE table.

[0047] Further, in the above-mentioned e-commerce system based on SaaS service, the module corresponding to the data record whose tenant ID field (i.e., TENANT_ID field in the above table) value of the module information table is a range value or multiple discrete values ​​is effective in the page containing the module of the tenant whose tenant ID falls within the range value. For example, in the above table, the tenant ID value in the record with module ID of 1 and module name of HEADER_FRAME is the range value [1-3], which means that the module and its corresponding parameters are effective in all pages containing the module in tenants with tenant IDs of 1, 2, and 3. For another example, in the above table, the tenant ID value in the record with module ID of 3 and module name of SLOGAN is the discrete value [1; 3], which means that the module and its corresponding parameters are effective in all pages containing the module in tenants with tenant IDs of 1 and 3. By adopting the technical solution in the above-mentioned implementation mode, the front-end engineer can quickly reuse the module in different tenant pages when designing the page. For example, the module can be added to the page of the corresponding tenant by directly writing the tenant ID into the TENANT_ID field of the corresponding module.

[0048] Furthermore, in the above-mentioned e-commerce system based on SaaS services, the reuse of modules includes modifying the reuse mode, that is, after copying the target module to be reused into a new module record, modifying the size, position parameters and the corresponding tenant ID can achieve modification and reuse. For example, in the above table, the record with module ID 3 and module name SLOGAN is effective in the tenant pages with tenant IDs 1 and 3. The tenant with tenant ID 2 wants its SLOGAN module to have a larger size or a higher position. As shown in the following table, copy the record with module ID 3 into the record with module ID 5, and modify its MODULE_SIZE field or MODULE_POSITION field to meet the personalized needs of tenant 2.

[0049] ID NAME TENANT_ID MODULE_TYPE_ID MODULE_SIZE MODULE_POSITION DATA_ID STYLE_ID 1 HEADER_FRAME 1-3 1 X; X AB:X; Y; Z-INDEX 1 2 LOGO 1-3 3 X; X RE:X; Y; Z-INDEX 1-3 1 3 SLOGAN 1;3 1 30PX; 960PX RE:X; Y; Z-INDEX 4 1 4 COMPANY_NAME 1 2 X; X RE:X; Y; Z-INDEX 1 5 SLOGAN 2 1 50PX; 960PX RE:X; Y; Z-INDEX 4 1

[0050] As shown in the above table, in the above-mentioned e-commerce system based on SaaS services, when the tenant ID field value of the module information table is a range value or multiple discrete values, the module data ID field (i.e., the DATA_ID field in the above table) is a single value or a range value or multiple discrete values, and when the module data ID field is a range value or multiple discrete values, the number of values ​​within its range or the number of discrete values ​​is the same as the number of values ​​of the tenant ID field value. For example, the LOGO module with a module ID value of 2 in the above table corresponds to three tenants with tenant IDs [1-3]. Since the LOGO of each tenant must be different, the corresponding DATA_ID field is also three, that is, the three data with ID fields of 1, 2, and 3 in the DATA table can be expressed in a range manner in the DATA_ID field of the MODULE_INFO table, that is, [1-3] in the table. The SLOGAN module with a module ID value of 3 in the above table has a tenant ID field that uses a discrete value representation, and the corresponding tenant IDs are 1 and 3. When two tenants use the same SLOGAN module, they only need to fill in the same data record in the DATA_ID field, such as the data of DATA_ID number 4 in the above table; if tenant 1 and tenant 3 need to fill in different data in the SLOGAN module, they can use a discrete or range value representation, such as [4; 5] or [4-5], etc., where the number of values ​​in DATA_ID is the same as the number of corresponding tenants.

[0051] The following table is a module data table (equivalent to Figure 2 Example of DATA table:

[0052] ID DATA 1 / IMAGES / XX1.PNG 2 / IMAGES / XX2.PNG 3 / IMAGES / XX3.PNG 4 EVERY THING YOU WANT CAN BE FOUND HERE

[0053] Among them, the ID field is the primary key of the DATA table; the DATA field is the corresponding material content, including text materials, graphic materials, or multimedia materials such as audio and video. In the example in the above table, pictures or other multimedia materials are stored in the server running directory in the form of files, and the corresponding material files are pointed to in the DATA table in the form of file paths or links. In other implementations, pictures or other multimedia materials can be directly stored in the DATA table in the form of binary data.

[0054] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module type table includes at least container class modules, text class modules, graphic class modules, audio class modules and video class modules, and the module parameter table in the database includes at least container module parameter table, text module parameter table, graphic module parameter table, audio module parameter table and video module parameter table.

[0055] The following table is a module type table (equivalent to Figure 2 Example of MODULE_TYPE table:

[0056] ID TYPE 1 CONTAINER 2 TEXT 3 IMAGE 4 AUDIO 5 VIDEO

[0057] Among them, the ID field is the primary key of the MODULE_TYPE table; the TYPE field is the corresponding module type.

[0058] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module data ID field value of the module corresponding to the data record of the container class whose module type field value in the module information table is empty. Since the container class module is mainly used to build the layout framework in the page and to limit the material content in the container, there is no need to establish a corresponding relationship between the container class module and the material content in the DATA table. In some embodiments, when it is necessary to place a background image in a container, it is only necessary to place a module of a picture type with a smaller stacking order value in the container, and use a stretching or repeating fill mode, without the need to specially configure complex background image parameters for the container class module.

[0059] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the model parameter table includes a parameter reference field, and the parameter reference field defaults to an empty value. When the parameter reference field is a non-empty value, the corresponding field value of the record corresponding to the parameter reference field value is referenced as the empty value field value of the current record.

[0060] The following table is a container parameter table (equivalent to Figure 2 Example of CONTAINER_STYLE table:

[0061] ID ALIGNMENT BORDER SHADOW QUOTE_ID 1 SOLID; BLUE; 1PX YELLOW; 3PX 2 DASH; RED; 1PX 3 RIGHT 1

[0062] Among them, the ID field is the primary key of the CONTAINER_STYLE table; the ALIGNMENT field is the alignment of the container class module. If this field is left blank, the default alignment is used, such as left alignment or center alignment; the BORDER field is the border style of the container class module. If this field is left blank, the default borderless style is used; SHADOW is the shadow style of the container class module. If this field is left blank, the default shadowless style is used; the QUOTE_ID field is used to reference other records in the current CONTAINER_STYLE table to achieve style reuse. This field is empty by default, that is, the default is non-reuse mode. For example, in the above table, the container class style with ID field 3 references the container class style with ID field 1. As shown in the table, the style parameters of the container class style with ID field 1 are ALIGNMENT: [Default], BORDER: [SOLID; BLUE; 1PX], SHADOW: [YELLOW; 3PX], QUOTE_ID: [], so the style parameters of the container class style with ID field 3 should be ALIGNMENT: [RIGHT], BORDER: [SOLID; BLUE; 1PX], SHADOW: [YELLOW; 3PX], QUOTE_ID: [1].

[0063] The following table is a text parameter table (equivalent to Figure 2 Example of TEXT_STYLE table:

[0064] ID ALIGNMENT FONT LINEHEIGHT CHR_SPACING SHADOW QUOTE_ID 1 黑体; GRAY; 12PX 2 3 ; BLUE; 1

[0065] Among them, the ID field is the primary key of the TEXT_STYLE table; the ALIGNMENT field is the alignment of the text module. If this field is left blank, the default alignment is used, such as left alignment or center alignment; the FONT field is the font style of the text module, using the format of [font type; font color; font size]. If this field is left blank, the default is [Microsoft YaHei; #000000; 12PX]; the LINEHEIGHT field is the line height occupied by the text module. If this field is left blank, the default is 15PX; the CHR_SPACING field is the character spacing of the text module. If this field is left blank, the default is 1PX; SHADOW is the shadow style of the text module. If this field is left blank, the default is no shadow style; the QUOTE_ID field is used to reference other records in the current TEXT_STYLE table to achieve style reuse. This field is empty by default, that is, the default is non-reuse mode.

[0066] The following table is a graphical parameter table (equivalent to Figure 2 Example of IMAGE_STYLE table:

[0067] ID ALIGNMENT FILL_MODE QUOTE_ID 1 2 3

[0068] Among them, the ID field is the primary key of the IMAGE_STYLE table; the ALIGNMENT field is the alignment of the graphic module. If this field is left blank, the default alignment is used, such as left alignment or center alignment; the FILL_MODE field is the filling method of the graphic module. When the size of the graphic file in the DATA table is different from the module size in the MODULE_INFO table, it can be filled in by tiling, repeating or stretching. If this field is left blank, the tiling method is used by default; the QUOTE_ID field is used to reference other records in the current IMAGE_STYLE table to achieve style reuse. This field is empty by default, that is, the default is non-reuse mode.

[0069] The style parameters and default values ​​used in the above module parameter table are only examples. Developers can add or modify the style parameters or default values ​​according to actual application needs. The parameter tables of other types of modules such as video modules or audio modules adopt similar styles and will not be repeated here.

[0070] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the container class module has a nested attribute, and when the parameter reference field of the container parameter table is a null value, the corresponding field value of the parent container is referenced as the null value field value of the current record. In the technical solution of the present invention, when any module falls into a container class module as a whole, the container class module is the parent container of the module, and the whole falling into means that the stacking order identifier of the module is greater than the stacking order identifier of the container class module, and any pixel of the module falls inside the container class module.

[0071] Furthermore, in the above-mentioned e-commerce system based on SaaS service, the module corresponding to the data record whose tenant ID field value of the module information table is a single numerical value is effective in the page containing the module of the tenant whose tenant ID is the single numerical value.

[0072] Further, in the above-mentioned e-commerce system based on SaaS service, the module information table also includes module size information, module coordinate information and module parameter ID information, the module size information includes the width and height information of the module, and the module coordinate information includes the coordinate mode, horizontal coordinate value, vertical coordinate value and stacking order identification information of the module. Specifically, the module coordinate information (i.e., the MODULE_POSITION field in the above table) adopts the format of [positioning mode: horizontal coordinate; vertical coordinate; stacking order identification], wherein the positioning mode includes an absolute positioning mode and a relative positioning mode, the absolute positioning mode means that the current coordinate value adopts the absolute coordinate system of the current page, the coordinate origin of the absolute coordinate system is located at the upper left corner of the current page, the horizontal coordinate increases from left to right, and the vertical coordinate increases from top to bottom; the relative positioning mode means that the current coordinate value adopts the relative coordinate system of the parent module of the current module, the coordinate origin of the relative coordinate system is located at the upper left corner of the parent module, the horizontal coordinate increases from left to right, and the vertical coordinate increases from top to bottom.

[0073] The present invention proposes an e-commerce system based on SaaS service, which obtains domain name information from an access request received from a controller, obtains a tenant ID associated with the domain name from the tenant information table according to the domain name information, determines a target page pointed to by the domain name, obtains multiple module IDs constituting the target page of the tenant from the page information table according to the tenant ID, obtains module type, module size, module coordinates, module data ID and module parameter ID information of each module from the module information table according to the multiple module IDs and the tenant ID, and obtains module data information from the module data table, obtains corresponding module parameter information from the module parameter table according to the module type and the module parameter ID information, generates the target page to provide to the browser that submits the access request, and can meet the personalized display needs of each tenant without customized development.

[0074] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the statement "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0075] According to the embodiments of the present invention as described above, these embodiments do not describe all the details in detail, nor do they limit the invention to the specific embodiments described. Obviously, many modifications and changes can be made based on the above description. This specification selects and specifically describes these embodiments in order to better explain the principles and practical applications of the present invention, so that those skilled in the art can make good use of the present invention and the modified use based on the present invention. The present invention is limited only by the claims and their full scope and equivalents.

Claims

1. An e-commerce system based on SaaS service, characterized in that: include: A controller module, configured to receive an access request sent by a browser and jump to a page of the e-commerce system specified by the access request; A logic business module, used to implement the business functions of the e-commerce system; a data access module, used to perform database operations on the database of the e-commerce system according to the request of the controller module or the logic business module; a database, used to store data of the e-commerce system; The database includes a tenant information table, a page information table, a module information table, a module data table, a module type table and a module parameter table; The logic service module includes: A domain name acquisition submodule is used to obtain domain name information from the access request received by the controller; A tenant ID acquisition submodule, used to acquire a tenant ID associated with the domain name from the tenant information table according to the domain name information; A target page determination submodule is used to determine the target page pointed to by the domain name; A module ID acquisition submodule, used for acquiring multiple module IDs constituting the target page of the tenant from the page information table according to the tenant ID; A module information acquisition submodule, configured to acquire module type, module size, module coordinates, module data ID, and module parameter ID information of each module from the module information table according to the multiple module IDs and the tenant ID, and to acquire module data information from the module data table; A module parameter acquisition submodule, used to acquire corresponding module parameter information from the module parameter table according to the module type and the module parameter ID information; The page generation submodule is used to generate the target page to provide to the browser that submits the access request.

2. The e-commerce system based on SaaS service according to claim 1, characterized in that: The module ID field of each data record in the page information table contains all the module ID information that constitutes the corresponding page. The same module ID is reusable in the module ID fields of different records in the page information table, and the same module ID is non-repeatable in the module ID field of the same record in the page information table.

3. The e-commerce system based on SaaS service according to claim 1, characterized in that: The module corresponding to the data record whose tenant ID field value in the module information table is a range value or multiple discrete values ​​is effective in the page containing the module of the tenant whose tenant ID falls within the range value or whose tenant ID is the corresponding discrete value.

4. The e-commerce system based on SaaS service according to claim 3 is characterized in that: When the tenant ID field value of the module information table is a range value or multiple discrete values, the module data ID field is a single value or a range value or multiple discrete values, and when the module data ID field is a range value or multiple discrete values, the number of values ​​within the range or the number of discrete values ​​is the same as the number of values ​​of the tenant ID field value.

5. The e-commerce system based on SaaS service according to claim 4 is characterized in that: The module type table includes at least container class modules, text class modules, graphic class modules, audio class modules and video class modules, and the module parameter table in the database includes at least container module parameter table, text module parameter table, graphic module parameter table, audio module parameter table and video module parameter table.

6. The e-commerce system based on SaaS service according to claim 5, characterized in that: The module data ID field value of the module corresponding to the data record whose module type field value in the module information table is container type is empty.

7. The e-commerce system based on SaaS service according to claim 5, characterized in that: The module parameter table includes a parameter reference field, which defaults to a null value. When the parameter reference field is a non-null value, the corresponding field value of the record corresponding to the parameter reference field value is referenced as the null value field value of the current record.

8. The e-commerce system based on SaaS service according to claim 7, characterized in that: The container class module has a nested property. When the parameter reference field of the parameter table of the container module is a null value, the corresponding field value of the parent container is referenced as the null value field value of the current record.

9. The e-commerce system based on SaaS service according to claim 1, characterized in that: The module corresponding to the data record whose tenant ID field value in the module information table is a single numerical value is effective in the page containing the module of the tenant whose tenant ID is the single numerical value.

10. The e-commerce system based on SaaS service according to any one of claims 1 to 9, characterized in that: The module information table also includes module size information, module coordinate information and module parameter ID information. The module size information includes the width and height information of the module. The module coordinate information includes the coordinate mode, horizontal coordinate value, vertical coordinate value and stacking order identification information of the module.

Citation Information

Patent Citations

  • Function assembling and formulation method based on multi-tenant mode

    CN106201506A

  • Page configuration method and device, electronic equipment and computer readable storage medium

    CN113760385A