Disclosure of Invention
In view of the foregoing, the present disclosure provides dynamically configurable form instance generation methods, apparatus, devices, media, and program products.
According to a first aspect of the present disclosure, there is provided a dynamically configurable form instance generation method, the method comprising:
Acquiring front-end component attribute configuration information to determine a dynamic form main table and a dynamic form service field table;
the method comprises the steps of obtaining form model configuration information to determine a model node table and form authority information, wherein the model node table is used for representing an association binding relation between model nodes and forms;
Determining a form model according to the dynamic form main table, the dynamic form service field table and the model node table;
Determining configuration information of a service field according to front-end rendering data;
determining service field data according to the configuration information of the service field, and
And creating a dynamic form instance according to the service field data, the association binding relation and the form authority information.
According to an embodiment of the present disclosure, the front-end component attribute configuration information includes service field attribute configuration information and component attribute configuration information, and the obtaining the front-end component attribute configuration information to determine a dynamic form master table and a dynamic form service field table includes:
Determining a dynamic form master table based on the component attribute configuration information, and
And determining the dynamic form service field table according to the service field attribute configuration information.
According to an embodiment of the disclosure, the front-end component includes a base component including an input box, a date selection box, a single-choice drop-down, a multiple-choice drop-down, a single-choice click, and a multiple-choice click, a composite component including a layout component, an object component, a time range selection component, an attachment upload component, and an external data source configuration selection component, and a custom component including at least two base components.
According to an embodiment of the present disclosure, the form authority information includes a read-write authority and a sequence authority, and the obtaining form model configuration information to determine a model node table and form authority information includes:
Determining the association binding relation between each model node and the form according to the form model configuration information, and generating a model node table;
when the current model node is determined to correspond to only one form, determining the read-write authority of the form and
When the current model node is determined to correspond to a plurality of forms, the read-write permission and the sequence permission of the plurality of forms are determined.
According to an embodiment of the present disclosure, the determining service field data according to the configuration information of the service field includes:
And performing key-value judgment by using recursive logic according to the configuration information of the service field so as to determine the value of the service field.
According to the embodiment of the disclosure, form data formats are all saved in json format or yaml format.
The second aspect of the present disclosure provides a dynamically configurable form instance generating device, including a first obtaining module, configured to obtain front-end component attribute configuration information to determine a dynamic form master table and a dynamic form service field table;
The second acquisition module is used for acquiring form model configuration information to determine a model node table and form authority information, wherein the model node table is used for representing the association binding relation between the model node and the form;
the first determining module is used for determining a form model according to the dynamic form main table, the dynamic form service field table and the model node table;
and a second determination module. The configuration information is used for determining the service field according to the front-end rendering data;
A third determining module for determining service field data according to the configuration information of the service field, and
And the instance generation module is used for creating a dynamic form instance according to the service field data, the association binding relation and the form authority information.
A third aspect of the present disclosure provides an electronic device comprising one or more processors and a memory for storing one or more programs, wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to perform the dynamically configurable form instance generation method described above.
A fourth aspect of the present disclosure also provides a computer-readable storage medium having stored thereon executable instructions that, when executed by a processor, cause the processor to perform the dynamically configurable form instance generation method described above.
A fifth aspect of the present disclosure also provides a computer program product comprising a computer program which, when executed by a processor, implements the dynamically configurable form instance generation method described above.
According to the dynamically configurable form instance generation method provided by the embodiment of the disclosure, dynamic control of front-end data is realized, each data can be dynamically configured in front-end model creation to cover various service scenes, DDL operation databases are reduced through multiplexing of front-end components, the pressure of the databases is reduced, the data and submitted contents required by different existing operation and maintenance scenes are dynamically controlled to be displayed and hidden through multi-form design, and new and old work forms are parallelly circulated through version control, so that the flexibility and applicability of the dynamic form are improved.
Detailed Description
Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. It should be understood that the description is only exemplary and is not intended to limit the scope of the present disclosure. In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the present disclosure. It may be evident, however, that one or more embodiments may be practiced without these specific details. In addition, in the following description, descriptions of well-known structures and techniques are omitted so as not to unnecessarily obscure the concepts of the present disclosure.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. The terms "comprises," "comprising," and/or the like, as used herein, specify the presence of stated features, steps, operations, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, or components.
All terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. It should be noted that the terms used herein should be construed to have meanings consistent with the context of the present specification and should not be construed in an idealized or overly formal manner.
Where a convention analogous to "at least one of A, B and C, etc." is used, in general such a convention should be interpreted in accordance with the meaning of one of skill in the art having generally understood the convention (e.g., "a system having at least one of A, B and C" would include, but not be limited to, systems having a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.).
The terms appearing in the embodiments of the present disclosure will first be explained:
the IT operation and maintenance refers to the comprehensive management of the whole bank organization by adopting related methods, means, techniques, systems, processes, documents and the like in order to ensure that all-weather normal work of various network points, various systems, various application systems and the like of the bank is ensured.
The flow is the sequence of the activity flow direction of various matters in work, and the workflow of matters is defined through communication and approval among certain personnel, roles, organizations and departments.
Dynamic form refers to a display technology which can realize the contents required by each service field and work by a certain simple configuration in a low code platform mode in the operation approval and model creation process.
The scheme design is a method for large commercial banks to react or consult with technicians, business specialists or superior units to seek an optimal solution aiming at problems or processes occurring in IT systems or businesses in daily operation and maintenance.
At present, the existing form designer has too many field-based control logics, and meanwhile, a large number of DDL form construction sentences are needed, so that a database is frequently operated, and a large pressure is brought to the database.
Based on the technical problems, the embodiment of the disclosure provides a method for confirming an order state to be paid based on a time window, which comprises the steps of obtaining front-end component attribute configuration information to determine a dynamic form main table and a dynamic form service field table, obtaining form model configuration information to determine a model node table and form authority information, wherein the model node table is used for representing an association binding relation between a model node and a form, determining a form model according to the dynamic form main table, the dynamic form service field table and the model node table, determining service field configuration information according to front-end rendering data, determining service field data according to the service field configuration information, and creating a dynamic form instance according to the service field data, the association binding relation and the form authority information.
FIG. 1 schematically illustrates an application scenario diagram of a dynamically configurable form instance generation method, apparatus, device, medium, and product according to an embodiment of the present disclosure. It should be noted that the scene graph shown in fig. 1 is merely an example of an application scene that may be used in embodiments of the present disclosure to help those skilled in the art understand the technical content of the present disclosure, but does not mean that embodiments of the present disclosure may not be used in other devices, systems, environments, or scenes. It should be noted that the dynamically configurable form instance generating method and device provided by the embodiments of the present disclosure may be used in the related aspects of the electronic form field and the financial field, and may also be used in any field other than the financial field, and the application field of the dynamically configurable form instance generating method and device provided by the embodiments of the present disclosure is not limited.
As shown in fig. 1, an application scenario 100 according to this embodiment may include a paymate confirmation payment order status scenario. The network 104 is used as a medium to provide communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
The user can use the terminal devices 101, 102, 103 to interact with the server 105 through the network 104, dynamically configure the form, and perform operations such as flow approval. Various communication client applications, such as shopping class applications, web browser applications, search class applications, instant messaging tools, mailbox clients, social platform software, etc. (by way of example only) may be installed on the terminal devices 101, 102, 103.
The terminal devices 101, 102, 103 may be a variety of electronic devices having a display screen and supporting web browsing, including but not limited to smartphones, tablets, laptop and desktop computers, and the like.
The server 105 may be a server providing various services, such as a background server (by way of example only) providing support for data requests initiated by users using the terminal devices 101, 102, 103. The background server may process the form data submitted by the user and feed back the result (e.g., the form corresponding to the next step, etc.) to the terminal device.
It should be noted that the dynamically configurable form instance generation method provided by the embodiments of the present disclosure may be generally performed by the server 105. Accordingly, the dynamically configurable form instance generation apparatus provided by embodiments of the present disclosure may be generally disposed in the server 105. The dynamically configurable form instance generation method provided by the embodiments of the present disclosure may also be performed by a server or cluster of servers other than the server 105 and capable of communicating with the terminal devices 101, 102, 103 and/or the server 105. Accordingly, the dynamically configurable form instance generating apparatus provided by the embodiments of the present disclosure may also be provided in a server or server cluster that is different from the server 105 and is capable of communicating with the terminal devices 101, 102, 103 and/or the server 105.
It should be understood that the number of terminal devices, networks and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
The method for generating the dynamically configurable form instance of the disclosed embodiment will be described in detail below with reference to fig. 2 to 3 based on the application scenario described in fig. 1.
FIG. 2 schematically illustrates a flow diagram of a dynamically configurable form instance generation method, according to an embodiment of the disclosure.
As shown in fig. 2, the dynamically configurable form instance generation method of this embodiment includes operations S210-S260, and the dynamically configurable form instance generation method may be executed by a server or other computing device.
The technical scheme of the disclosure is realized by using a front-end compact to design a dynamic front-end component and a back-end to design based on mysql data and matching with the processing of springboot business logic.
In operation S210, front-end component attribute configuration information is acquired to determine a dynamic form master table and a dynamic form service field table.
In one example, the logic implemented by the front end is based on a React component, through which the support for services is implemented. The business fields of the front-end component are determined by setting corresponding attributes, so that attribute configuration of the business fields is increased for facilitating subsequent report service, and database space is saved compared with the existing design scheme that all fields are built by dynamic forms. All the design rules of the components are acquired and assigned in a recursive traversal mode, the final data format is stored in json format, and yam format data are added for convenient export and viewing. After configuring the attribute of the component, the user saves the front rendering data at the rear end, writes the corresponding model word list, namely the dynamic form main list and the dynamic form service field list, analyzes the attribute of the form, saves the configuration information of the service field in a row form, and saves the service field value range of the component configured with the external data source.
In operation S220, form model configuration information is acquired to determine a model node table and form authority information, where the model node table is used to characterize an association binding relationship between a model node and a form.
In one example, after the service field and the component attribute are configured, corresponding model configuration is performed, in the model configuration, multi-form configuration is supported, that is, each flow node can correspond to a plurality of forms, and corresponding form permissions are configured in each flow step through association between the forms and the model nodes. If the current node has a plurality of forms, the read-write permission and the sequence permission of the plurality of forms are required to be configured, and when a user creates and processes an instance work form, the dynamic display of the forms can be performed according to the permission owned by the user. For example, in the process of approving and canceling, the applicant fills in an electronic application form and uploads a certificate, the department responsible person approves the application form, and the company approver confirms the application form and the department responsible person approval record, namely, for each process step, different users have different rights.
In operation S230, a form model is determined from the dynamic form master table, the dynamic form service field table, and the model node table.
To reduce database interactions and reduce database pressure due to continued increases in subsequent worksheets, the present disclosure employs a master-slave sub-table and data history backup mechanism. The model design is internally provided with two association tables of a dynamic form main table and then added with a model node binding relationship and a service field binding relationship. The dynamic form master table is associated with a model master table, and the model node table is associated with the dynamic form table. And configuring a form model according to the configuration information of the user on the front-end page and storing the form model in a database. Because the simplified yaml data format is clearer than json and has fewer symbol marks, when the model is stored, the data of the dynamic form is recursively analyzed, the data is stored in the database according to the service field, and other non-service fields are not separately stored.
After the form model configuration is completed, operations S240 to S260 are the creation process of the flow instance work order.
In operation S240, configuration information of the service field is determined according to the front-end rendering data. In operation S250, service field data is determined according to configuration information of the service field. In operation S260, a dynamic form instance is created according to the service field data, the association binding relationship, and the form authority information.
In one example, firstly, checking data of necessary filling fields, because of unified form multiple parallel approval business logic and the unified step processing process of multiple nodes together, the version number control of the dynamic form is increased at this time, similar to the memory control mechanism of a virtual machine, by acquiring the version number of the submitted form, comparing with the version number of the preset dynamic form of a database, whether the version number is equal or not is ensured, then, data storage and the instance creation of a bottom layer flow engine are carried out, and when the data is stored, the business data fields in the dynamic form are processed, and specific value is stored. Finally, the subsequent trigger is called by the asynchronous sub-thread to realize the triggering of the service timeliness and event logic of the flow, the trigger uses the information of the corresponding service field, and the judgment is carried out according to the stored service field data to determine whether to call the trigger.
According to the dynamically configurable form instance generation method provided by the embodiment of the disclosure, dynamic control of front-end data is realized, each data can be dynamically configured in front-end model creation to cover various service scenes, DDL operation databases are reduced through multiplexing of front-end components, the pressure of the databases is reduced, the data and submitted contents required by different existing operation and maintenance scenes are dynamically controlled to be displayed and hidden through multi-form design, and parallel circulation of new and old work forms is realized through version control, so that the flexibility and applicability of the dynamic forms are improved.
FIG. 3 schematically illustrates a flow chart of another dynamically configurable form instance generation method, according to an embodiment of the disclosure. As shown in FIG. 3, operations S310-S350 are included.
In operation S310, front-end component attribute configuration information is acquired to determine a dynamic form master table and a dynamic form service field table.
According to the embodiment of the disclosure, the front-end component attribute configuration information comprises service field attribute configuration information and component attribute configuration information, a dynamic form main table is determined according to the component attribute configuration information, and a dynamic form service field table is determined according to the service field attribute configuration information.
In one example, the front end component includes a base component and a composite component. The basic component comprises a basic input frame, a date selection frame, a single-choice drop-down, a multi-choice drop-down, a single-choice click, a multi-choice click and the like, the composite component comprises a layout component, an object component, a time range selection component, an accessory uploading, an external data source configuration selection component and the like, and the custom component and the like are realized through the reassembly of the basic component. The components can be designed into an infinite layer complete relation, so that the flexible configuration of a user according to actual service requirements is met, the design rules of all the components are acquired and assigned in a recursive traversal mode, the final data format is stored in json format, and yaml-format data is added for convenient export and viewing. Acquiring front-end component attribute configuration information configured on a front-end display interface by a user by storing front-end rendering data, wherein the front-end component attribute configuration information comprises service field attribute configuration information and component attribute configuration information, and determining a dynamic form main table according to the component attribute configuration information; and determining a dynamic form service field table according to the service field attribute configuration information.
In operation S320, an association binding relationship between each model node and the form is determined according to the form model configuration information, and a model node table is generated.
In one example, the form authority information includes read-write authority and sequence authority, in the form model configuration, according to the approval requirements of different steps, a multi-form function is designed, and the association binding relation between the model node and the form is determined through the multi-form configuration to generate a model node table, wherein the association binding relation can be that one node corresponds to one form or one node corresponds to a plurality of forms. When the current model node is determined to correspond to a plurality of forms, the read-write permission and the sequence permission of the plurality of forms are determined. Therefore, when the user creates and processes the instance work order, the dynamic display of the form is carried out according to the authority owned by the user.
In operation S330, a form model is determined from the dynamic form master table, the dynamic form service field table, and the model node table.
The technical scheme and the technical principle of the present operation are the same as those of operation S230 shown in fig. 2, and are not described herein.
In operation S340, configuration information of the service field is determined according to the front-end rendering data.
The dynamic form provided by the embodiment of the disclosure is added with a version control function, comprising version control of the form template and version control during form circulation, wherein the version control function ensures parallel circulation of new and old form templates, improves the usability of the form, meets the requirement of service update and upgrade, supports multi-version parallel circulation execution, and ensures that data displayed to a user is up-to-date data when the multiple nodes jointly process the same flow step under the scene of realizing parallel approval of the same form. Specifically, before determining the service field data, the submitted form version number needs to be verified, when the form version number is determined to be consistent with the expected form version number of the database, the data currently displayed to the user is represented as the latest data, and the operation can be performed, so that the service field data is determined according to the configuration information of the service field. In addition, the embodiment of the disclosure also adopts editing, publishing and historical versions to control version information of the flow form templates, and the unique and non-unique id codes are adopted, namely the same form template codes the same, and the ids of the same template in different versions are different. The method ensures that only one current dynamic form is a release version, the flow of a historical version can be continuously executed, and a new flow can be executed according to the new dynamic form.
And performing key-value judgment by using recursive logic according to the configuration information of the service field so as to determine the value of the service field. Because the front-end dynamic form is stored by adopting a Json object of key-value and is designed to have infinite layer nested relation, the recursive logic is used for judging the key-value, and the storage meeting the condition is used for the report demand design of the subsequent work form. And when the form version number is inconsistent with the expected form version number of the database, the data representing the current display to the user is not the latest data, and the user is forbidden to submit the form and the form data is refreshed.
In operation S350, a dynamic form instance is created according to the service field data, the association binding relationship, and the form authority information.
In one example, after the dynamic form instance is created, data needs to be saved and flow circulation is controlled in the circulation process, the modifiable service fields are saved after the data flows are transferred to the corresponding steps, and the full data is respectively saved and realized in a JSON format and a service field single-line data format with the finest dimension, so that the development efficiency of the service function realized by the back-end code is quickened, and the query and the service field use are more obvious in the processing efficiency when gateway logic and rule logic are processed.
Based on the dynamically configurable form instance generation method, the invention also provides a dynamically configurable form instance generation device. The device will be described in detail below in connection with fig. 4.
Fig. 4 schematically illustrates a block diagram of a dynamically configurable form instance generating device, in accordance with an embodiment of the present disclosure.
As shown in fig. 4, the dynamically configurable form instance generation apparatus 400 of this embodiment includes a first acquisition module 410, a second acquisition module 420, a first determination module 430, a second determination module 440, a verification module 450, and an instance generation module 460.
The first obtaining module 410 is configured to obtain the front-end component attribute configuration information to determine a dynamic form main table and a dynamic form service field table. In an embodiment, the first obtaining module 410 may be configured to perform the operation S210 described above, which is not described herein.
The second obtaining module 420 is configured to obtain form model configuration information to determine a model node table and form authority information. In an embodiment, the second obtaining module 420 may be used to perform the operation S220 described above, which is not described herein.
The first determining module 430 is configured to determine a form model according to the dynamic form master table, the dynamic form service field table, and the model node table. In an embodiment, the first determining module 430 may be configured to perform the operation S230 described above, which is not described herein.
The second determining module 440 is configured to determine configuration information of the service field according to the front-end rendering data. In an embodiment, the second determining module 440 may be configured to perform the operation S240 described above, which is not described herein.
The verification module 450 is configured to determine service field data according to the configuration information of the service field. In an embodiment, the verification module 450 may be used to perform the operation S250 described above, which is not described herein.
The instance generating module 460 is configured to create a dynamic form instance according to the service field data, the association binding relationship and the form authority information. In an embodiment, the instance generating module 460 may be configured to perform the operation S260 described above, which is not described herein.
According to embodiments of the present disclosure, any of the first acquisition module 410, the second acquisition module 420, the first determination module 430, the second determination module 440, the verification module 450, and the instance generation module 460 may be combined in one module to be implemented, or any of the modules may be split into a plurality of modules. Or at least some of the functionality of one or more of the modules may be combined with, and implemented in, at least some of the functionality of other modules. According to embodiments of the present disclosure, at least one of the first acquisition module 410, the second acquisition module 420, the first determination module 430, the second determination module 440, the verification module 450, and the instance generation module 460 may be implemented at least in part as hardware circuitry, such as a Field Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a system-on-chip, a system-on-substrate, a system-on-package, an Application Specific Integrated Circuit (ASIC), or as hardware or firmware in any other reasonable manner of integrating or packaging the circuitry, or as any one of or a suitable combination of any of the three. Or at least one of the first acquisition module 410, the second acquisition module 420, the first determination module 430, the second determination module 440, the verification module 450, and the instance generation module 460 may be at least partially implemented as computer program modules which, when executed, may perform the respective functions.
Fig. 5 schematically illustrates a block diagram of an electronic device adapted to implement a dynamically configurable form instance generation method, in accordance with an embodiment of the present disclosure.
As shown in fig. 5, an electronic device 500 according to an embodiment of the present disclosure includes a processor 501 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 502 or a program loaded from a storage section 508 into a Random Access Memory (RAM) 503. The processor 501 may include, for example, a general purpose microprocessor (e.g., a CPU), an instruction set processor and/or an associated chipset and/or a special purpose microprocessor (e.g., an Application Specific Integrated Circuit (ASIC)), or the like. The processor 501 may also include on-board memory for caching purposes. The processor 501 may comprise a single processing unit or a plurality of processing units for performing different actions of the method flows according to embodiments of the disclosure.
In the RAM 503, various programs and data required for the operation of the electronic apparatus 500 are stored. The processor 501, ROM 502, and RAM 503 are connected to each other by a bus 504. The processor 501 performs various operations of the method flow according to the embodiments of the present disclosure by executing programs in the ROM 502 and/or the RAM 503. Note that the program may be stored in one or more memories other than the ROM 502 and the RAM 503. The processor 501 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in one or more memories.
According to an embodiment of the present disclosure, the electronic device 500 may also include an input/output (I/O) interface 505, the input/output (I/O) interface 505 also being connected to the bus 504. The electronic device 500 may also include one or more of an input section 506 including a keyboard, mouse, etc., an output section 507 including a Cathode Ray Tube (CRT), liquid Crystal Display (LCD), etc., and speaker, etc., a storage section 508 including a hard disk, etc., and a communication section 509 including a network interface card such as a LAN card, modem, etc., connected to the I/O interface 505. The communication section 509 performs communication processing via a network such as the internet. The drive 510 is also connected to the I/O interface 505 as needed. A removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 510 as needed so that a computer program read therefrom is mounted into the storage section 508 as needed.
The present disclosure also provides a computer-readable storage medium that may be included in the apparatus/device/system described in the above embodiments, or may exist alone without being assembled into the apparatus/device/system. The computer-readable storage medium carries one or more programs which, when executed, implement methods in accordance with embodiments of the present disclosure.
According to embodiments of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, which may include, for example, but is not limited to, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this disclosure, a computer-readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. For example, according to embodiments of the present disclosure, the computer-readable storage medium may include ROM 502 and/or RAM 503 and/or one or more memories other than ROM 502 and RAM 503 described above.
Embodiments of the present disclosure also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowcharts. When the computer program product runs in a computer system, the program code is used for enabling the computer system to realize the dynamically configurable form instance generating method provided by the embodiment of the disclosure.
The above-described functions defined in the system/apparatus of the embodiments of the present disclosure are performed when the computer program is executed by the processor 501. The systems, apparatus, modules, units, etc. described above may be implemented by computer program modules according to embodiments of the disclosure.
In one embodiment, the computer program may be based on a tangible storage medium such as an optical storage device, a magnetic storage device, or the like. In another embodiment, the computer program may also be transmitted, distributed, and downloaded and installed in the form of a signal on a network medium, and/or installed from a removable medium 511 via the communication portion 509. The computer program may comprise program code that is transmitted using any appropriate network medium, including but not limited to wireless, wireline, etc., or any suitable combination of the preceding.
In such an embodiment, the computer program may be downloaded and installed from a network via the communication portion 509, and/or installed from the removable media 511. The above-described functions defined in the system of the embodiments of the present disclosure are performed when the computer program is executed by the processor 501. The systems, devices, apparatus, modules, units, etc. described above may be implemented by computer program modules according to embodiments of the disclosure.
According to embodiments of the present disclosure, program code for performing computer programs provided by embodiments of the present disclosure may be written in any combination of one or more programming languages, and in particular, such computer programs may be implemented in high-level procedural and/or object-oriented programming languages, and/or assembly/machine languages. Programming languages include, but are not limited to, such as Java, c++, python, "C" or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, partly on a remote computing device, or entirely on the remote computing device or server. In the case of remote computing devices, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., connected via the Internet using an Internet service provider).
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Those skilled in the art will appreciate that the features recited in the various embodiments of the disclosure and/or in the claims may be provided in a variety of combinations and/or combinations, even if such combinations or combinations are not explicitly recited in the disclosure. In particular, the features recited in the various embodiments of the present disclosure and/or the claims may be variously combined and/or combined without departing from the spirit and teachings of the present disclosure. All such combinations and/or combinations fall within the scope of the present disclosure.
The embodiments of the present disclosure are described above. These examples are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although the embodiments are described above separately, this does not mean that the measures in the embodiments cannot be used advantageously in combination. The scope of the disclosure is defined by the appended claims and equivalents thereof. Various alternatives and modifications can be made by those skilled in the art without departing from the scope of the disclosure, and such alternatives and modifications are intended to fall within the scope of the disclosure.