Abstract: The present disclosure relates to a method and a system for validating an order request. The method comprising receiving, by a transceiver unit [202], a create order request comprising one or more order parameters, fetching, by the transceiver unit [202], from a cache, a set of configurations for the one or more order parameters based on the create order request. Each configuration from the set of configurations comprises one or more parameter elements. The method includes parsing, by a parser unit [204], iteratively, the one or more parameter elements from the set of configurations; analysing, by an analysis unit [206], the one or more parameters of the order request based on the iterated parameter element. The method includes rejecting, by the analysis unit [206], the order request, based on the analysis of the one or more parameters of the order request. [FIG. 3]
FORM 2
THE PATENTS ACT, 1970 (39 OF 1970) & THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
“METHOD AND SYSTEM FOR VALIDATING AN ORDER
REQUEST”
We, Jio Platforms Limited, an Indian National, of Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.
The following specification particularly describes the invention and the manner in which it is to be performed.
METHOD AND SYSTEM FOR VALIDATING AN ORDER REQUEST
FIELD OF INVENTION
[0001] Embodiments of the present disclosure generally relate to a method for validating an order request. More particularly, embodiments of the present disclosure relate to methods and systems for validating an order request.
BACKGROUND
[0002] The following description of the related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section is used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of the prior art.
[0003] A Customer relationship management (CRM) refers to a process that manages one or more interactions of a company with current and/or potential customers. Several types of CRM systems and portals are available in the market. The aim of the CRM system is to enhance the relationship between the company and its customers to grow the business. The CRM technology assists the companies to stay connected to their customers, streamline their processes, and enhance the profitability of the companies.
[0004] Further, the CRM system also manages customer onboarding and lifecycle management and also handles customer complaints. Some of the examples of business/service operations which a CRM system is capable of managing are onboarding a new customer, modifying customer details, adding, removing, suspending or resuming a service, or disconnecting the customer. Further, for every type of operation, an order is generated by the CRM system, and every order
includes a set of mandatory parameters that must be checked to determine whether the mandatory parameters are present or not for accepting or rejecting the order.
[0005] Furthermore, based on one or more parameters, there are a large number of order scenarios possible. Each scenario includes a different set of mandatory parameters and their corresponding configurations. For example, a circle identification data, i.e., a circle ID for a pre-defined area, the circle ID for some areas includes additional validations. Similarly, product identification data, i.e., a product ID for which based on different products different parameters may be required. Also, a scenario type such as a new order, a modification order, or a service order. Usually, there are 30 to 40 distinct scenarios possible if all the combinations of the parameters are considered.
[0006] Conventionally, the validation and management of these scenarios is fulfilled by hard coding presence of each parameter. It makes the code lengthy, introduces boiler plate code at many places and makes the maintenance chaotic in the long run. A large number of if-else clause will be run such that it will be increasingly difficult for the other members of same team who did not develop it to comprehend. Today most of the IT firms are hard-core agile and each resource can dynamically pick any project to work on.
[0007] In the current era, the validation of all the parameters in the CRM system is handled by hard coding the presence of each parameter, which leads to several issues like lengthy codebases and complex maintenance. Due to numerous clauses, the codebase of the CRM system becomes excessively long, which ultimately requires additional memory in a processor. Further, the redundant set of configurations appears in multiple places in the backend of the CRM system, which complicates maintenance. In addition to this, issues like lengthy codebases and complex maintenance further lead to higher risks of error and reduced agility.
[0008] Thus, there exists an imperative need in the art to provide a method and system for validating an order request which requires minimal code changes in production and allows configurations to be altered quickly to adapt to changes.
SUMMARY
[0009] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0010] An aspect of the present disclosure may relate to a method for validating an order request. The method comprises receiving, by a transceiver unit, a create order request comprising one or more order parameters. The method further comprises fetching, by the transceiver unit, from a cache, a set of configurations for the one or more order parameters based on the create order request, wherein each configuration from the set of configurations comprises one or more parameter elements. The method further comprises parsing, by a parser unit, iteratively, the one or more parameter elements from the set of configurations. The method further comprises analysing, by an analysis unit, the one or more parameters of the order request based on the iterated parameter element. The method further comprises rejecting, by the analysis unit, the order request, based on the analysis of the one or more parameters of the order request.
[0011] In an exemplary aspect of the present disclosure, each parameter element from the one or more parameter elements comprises at least a parameter name attribute, a parameter mandatory attribute, and a parameter confidence score attribute.
[0012] In an exemplary aspect of the present disclosure, the parsing of the one or more parameter elements from the set of configurations, comprises determining, by
the parser unit, a presence of a true status or the presence of a false status for a corresponding parameter mandatory attribute associated with a corresponding parameter name attribute from the iterated parameter element.
[0013] In an exemplary aspect of the present disclosure, the analysing of the one or parameters of the order request based on the iterated parameter element, comprises analysing, by the analysis unit, each order parameter from the one or more order parameters, wherein each order parameter comprises a parameter name and an associated parameter value and determining, by the analysis unit, a presence and an absence of a parameter value associated with a parameter name, corresponding to the parameter name attribute from the iterated parameter element, in the one or more order parameters of the order request, based on the presence of the true status.
[0014] In an exemplary aspect of the present disclosure, the method further comprises rejecting, by the analysis unit, the order request, based on the absence of the parameter value associated with the parameter name in the one or more parameters of the order request.
[0015] In an exemplary aspect of the present disclosure, the parser unit, iterates to parse the next parameter element from the one or more parameter elements, in an event of the presence of the parameter value associated with the parameter name in the one or more parameters of the order request.
[0016] In an exemplary aspect of the present disclosure, the parser unit, iterates to parse the next parameter element from the one or more parameter elements, in an event of the presence of the false status for the parameter mandatory attribute associated with the parameter name attribute from the iterated parameter element from the one or more parameter elements.
[0017] In an exemplary aspect of the present disclosure, prior to fetching, by the transceiver unit from the cache, the set of configurations associated with the one or
more order parameters based on the create order request, the method invokes a mandatory parameter validation functionality.
[0018] In an exemplary aspect of the present disclosure, the parameter confidence score attribute associated with each parameter element from the one or more parameter elements in the set of configurations, decides whether the corresponding parameter element is editable based on the value of the parameter confidence score.
[0019] In an exemplary aspect of the present disclosure, the set of configurations are pre-stored in a database.
[0020] In an exemplary aspect of the present disclosure, the set of configurations are cached during startup of a microservice performing the method, from the database.
[0021] In an exemplary aspect of the present disclosure, the one or more parameter elements of the set of configurations is editable based on the parameter confidence score in each of the parameter element of the one or more parameter element.
[0022] In an exemplary aspect of the present disclosure, the edited parameter element is modified in the corresponding configuration stored in the cache.
[0023] In an exemplary aspect of the present disclosure, the one or more parameter elements are edited at a user interface based on the parameter confidence score in each of the parameter element of the one or more parameter element.
[0024] Another aspect of the present disclosure may relate to a system for validating an order request. The system comprises a transceiver unit configured to receive, a create order request comprising one or more order parameters. The transceiver unit is further configured to fetch, from a cache, a set of configurations for the one or more order parameters based on the create order request. Further each
configuration from the set of configurations comprises one or more parameter elements. The system comprises a parser unit, connected at least to the transceiver unit, the parser unit is configured to iteratively parse, the one or more parameter elements from the set of configurations. The system comprises an analysis unit connected at least to the parser unit, the analysis unit is configured to analyse, the one or more order parameters of the order request, based on the iterated parameter element. The analysis unit is further configured to reject, the order request, based on the analysis of the one or more parameters of the order request.
[0025] Another aspect of the present disclosure may relate to a user equipment (UE). The UE comprises a memory and a processor. The processor is connected to the memory and the processor is configured to send a create order request comprising one or more order parameters to a system. The processor is further configured to receive, from the system, a reject response based on a validation of the order request. The validation of the order request is performed by the system by fetching, from a cache, a set of configurations for the one or more order parameters based on the create order request, wherein each configuration from the set of configurations comprises one or more parameter elements. The validation of the order request is further performed by the system by iteratively parsing, the one or more parameter elements from the set of configurations. The validation of the order request is further performed by the system by analysing, the one or more order parameters of the order request, based on the iterated parameter element. The validation of the order request is further performed by the system by rejecting, the order request, based on the analysis of the one or more parameters of the order request.
[0026] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for validating an order request, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit of the system to receive, a create order request comprising one or more order parameters. Further, the instructions
include executable code which, when executed, causes the transceiver unit of the
system to fetch, from a cache, a set of configurations for the one or more order
parameters based on the create order request, wherein each configuration from the
set of configurations comprises one or more parameter elements. Further, the
5 instructions include executable code which, when executed by one or more units of
a system, causes a parser unit of the system to iteratively parse, the one or more
parameter elements from the set of configurations. Further, the instructions include
executable code which, when executed by one or more units of a system, causes an
analysis unit of the system to analyse, the one or more order parameters of the order
10 request, based on the iterated parameter element, the analysis unit of the system to
reject, the order request, based on the analysis of the one or more parameters of the order request.
OBJECTS OF THE INVENTION
15
[0027] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.
[0028] It is an object of the present disclosure to provide methods and systems for
20 validating an order request.
[0029] It is another object of the present disclosure to provide a solution that is efficient, maintainable and scalable for handling a diverse validation requirement of orders. 25
[0030] It is another object of the present disclosure to provide a dynamic solution to reduce a codebase and maintenance complexity.
[0031] It is another object of the present disclosure to provide a solution which
30 ensures that the system adapts swiftly to one or more changes in an agile
development environment.
8
[0032] It is yet another object of the present disclosure to provide a solution which saves time and resources required to maintain the backend of the customer relationship management system. 5
DESCRIPTION OF THE DRAWINGS
[0033] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods
10 and systems in which like reference numerals refer to the same parts throughout the
different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Also, the embodiments shown in the figures are not to be construed as limiting the disclosure, but the possible variants of the method and system
15 according to the disclosure are illustrated herein to highlight the advantages of the
disclosure. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components.
20 [0034] FIG. 1 illustrates an exemplary block diagram of a computing device upon
which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure.
[0035] FIG. 2 illustrates an exemplary block diagram of a system for validating an
25 order request, in accordance with exemplary implementations of the present
disclosure.
[0036] FIG. 3 illustrates a method flow diagram for validating an order request in accordance with exemplary implementations of the present disclosure. 30
9
[0037] FIG. 4 illustrates an exemplary method flow diagram for validating an order request, in accordance with exemplary implementations of the present disclosure.
[0038] FIG. 5 illustrates an exemplary block diagram of a customer relationship
5 management (CRM) architecture, in accordance with exemplary implementations
of the present disclosure.
[0039] The foregoing shall be more apparent from the following more detailed description of the disclosure. 10
DETAILED DESCRIPTION
[0040] In the following description, for the purposes of explanation, various specific details are set forth in order to provide a thorough understanding of
15 embodiments of the present disclosure. It will be apparent, however, that
embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter may each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the
20 problems discussed above.
[0041] The ensuing description provides exemplary embodiments only, and is not
intended to limit the scope, applicability, or configuration of the disclosure. Rather,
the ensuing description of the exemplary embodiments will provide those skilled in
25 the art with an enabling description for implementing an exemplary embodiment.
It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
30 [0042] Specific details are given in the following description to provide a thorough
understanding of the embodiments. However, it will be understood by one of
10
ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. 5
[0043] Also, it is noted that individual embodiments may be described as a process
which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure
diagram, or a block diagram. Although a flowchart may describe the operations as
a sequential process, many of the operations may be performed in parallel or
10 concurrently. In addition, the order of the operations may be re-arranged. A process
is terminated when its operations are completed but could have additional steps not included in a figure.
[0044] The word “exemplary” and/or “demonstrative” is used herein to mean
15 serving as an example, instance, or illustration. For the avoidance of doubt, the
subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and/or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques
20 known to those of ordinary skill in the art. Furthermore, to the extent that the terms
“includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprising” as an open transition word without precluding any additional or other elements.
25
[0045] As used herein, a “processing unit” or “processor” or “operating processor” includes one or more processors, wherein processor refers to any logic circuitry for processing instructions. A processor may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality
30 of microprocessors, one or more microprocessors in association with a (Digital
Signal Processing) DSP core, a controller, a microcontroller, Application Specific
11
Integrated Circuits, Field Programmable Gate Array circuits, any other type of
integrated circuits, etc. The processor may perform signal coding data processing,
input/output processing, and/or any other functionality that enables the working of
the system according to the present disclosure. More specifically, the processor or
5 processing unit is a hardware processor.
[0046] As used herein, “a user equipment”, “a user device”, “a smart-user-device”, “a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”, “a wireless communication device”, “a mobile communication device”, “a
10 communication device” may be any electrical, electronic and/or computing device
or equipment, capable of implementing the features of the present disclosure. The user equipment/device may include, but is not limited to, a mobile phone, smart phone, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, wearable device or any other computing device which is capable
15 of implementing the features of the present disclosure. Also, the user device may
contain at least one input means configured to receive an input from at least one of a transceiver unit, a processing unit, a storage unit, a detection unit and any other such unit(s) which are required to implement the features of the present disclosure.
20 [0047] As used herein, “storage unit” or “memory unit” refers to a machine or
computer-readable medium including any mechanism for storing information in a form readable by a computer or similar machine. For example, a computer-readable medium includes read-only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices or other
25 types of machine-accessible storage media. The storage unit stores at least the data
that may be required by one or more units of the system to perform their respective functions.
[0048] As used herein “interface” or “user interface refers to a shared boundary
30 across which two or more separate components of a system exchange information
or data. The interface may also be referred to a set of rules or protocols that define
12
communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.
5 [0049] All modules, units, components used herein, unless explicitly excluded
herein, may be software modules or hardware processors, the processors being a
general-purpose processor, a special purpose processor, a conventional processor,
a digital signal processor (DSP), a plurality of microprocessors, one or more
microprocessors in association with a DSP core, a controller, a microcontroller,
10 Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array
circuits (FPGA), any other type of integrated circuits, etc.
[0050] As used herein the transceiver unit include at least one receiver and at least
one transmitter configured respectively for receiving and transmitting data, signals,
15 information or a combination thereof between units/components within the system
and/or connected with the system.
[0051] As discussed in the background section, that usually, in a CRM system, there are 30 to 40 distinct scenarios possible if all the combinations of the
20 parameters are considered. Conventionally, the validation and management of these
scenarios is fulfilled by hard coding presence of each parameter. This makes the code lengthy, introduces boiler plate code at many places and makes the maintenance chaotic in the long run. A large number of if-else clause will be run such that it will be increasingly difficult for the other members of same team who
25 did not develop it to comprehend. Today most of the IT firms are hard-core agile
and each resource can dynamically pick any project to work on.
[0052] Moreover, due to this, the maintenance of the currently available CRM
systems or portals is complex and consumes additional time and effort. Hence, the
30 current known solutions have several shortcomings. The present disclosure aims to
overcome the above-mentioned and other existing problems in this field by
13
providing a solution for validating the order request, which requires minimal code
changes in production and allows configurations to be altered quickly to adapt to
changes. The present disclosure provides a method and system for validating an
order which involves receiving of a create order request that includes one or more
5 order parameters. Thereafter, a set of configurations are fetched from the one or
more order parameters based on the create order request. Also, each configuration
from the set of configurations includes one or more parameter elements. Further the
one or more parameter elements are iteratively parsed from the set of
configurations. The one or more parameters of the order request are analysed based
10 on the iterated parameter element. Thereafter, the order request is rejected based on
the analysis of the one or more parameters of the order request.
[0053] FIG. 1 illustrates an exemplary block diagram of a computing device [100] upon which the features of the present disclosure may be implemented in
15 accordance with exemplary implementation of the present disclosure. In an
implementation, the computing device [100] may also implement a method for one or more complaint resolutions utilising the system [200]. In another implementation, the computing device [100] itself implements the method for one or more complaint resolutions using one or more units configured within the
20 computing device [100], wherein said one or more units are capable of
implementing the features as disclosed in the present disclosure.
[0054] The computing device [100] may include a bus [102] or other communication mechanism for communicating information, and a hardware
25 processor [104] coupled with bus [102] for processing information. The hardware
processor [104] may be, for example, a general-purpose microprocessor. The computing device [100] may also include a main memory [106], such as a random-access memory (RAM), or other dynamic storage device, coupled to the bus [102] for storing information and instructions to be executed by the processor [104]. The
30 main memory [106] also may be used for storing temporary variables or other
intermediate information during execution of the instructions to be executed by the
14
processor [104]. Such instructions, when stored in non-transitory storage media
accessible to the processor [104], render the computing device [100] into a special-
purpose machine that is customized to perform the operations specified in the
instructions. The computing device [100] further includes a read only memory
5 (ROM) [108] or other static storage device coupled to the bus [102] for storing static
information and instructions for the processor [104].
[0055] A storage device [110], such as a magnetic disk, optical disk, or solid-state drive is provided and coupled to the bus [102] for storing information and
10 instructions. The computing device [100] may be coupled via the bus [102] to a
display [112], such as a cathode ray tube (CRT), Liquid crystal Display (LCD), Light Emitting Diode (LED) display, Organic LED (OLED) display, etc. for displaying information to a computer user. An input device [114], including alphanumeric and other keys, touch screen input means, etc. may be coupled to the
15 bus [102] for communicating information and command selections to the processor
[104]. Another type of user input device may be a cursor controller [116], such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor [104], and for controlling cursor movement on the display [112]. The input device typically has two degrees
20 of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow
the device to specify positions in a plane.
[0056] The computing device [100] may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware
25 and/or program logic which in combination with the computing device [100] causes
or programs the computing device [100] to be a special-purpose machine. According to one implementation, the techniques herein are performed by the computing device [100] in response to the processor [104] executing one or more sequences of one or more instructions contained in the main memory [106]. Such
30 instructions may be read into the main memory [106] from another storage medium,
such as the storage device [110]. Execution of the sequences of instructions
15
contained in the main memory [106] causes the processor [104] to perform the process steps described herein. In alternative implementations of the present disclosure, hard-wired circuitry may be used in place of or in combination with software instructions. 5
[0057] The computing device [100] also may include a communication interface [118] coupled to the bus [102]. The communication interface [118] provides a two-way data communication coupling to a network link [120] that is connected to a local network [122]. For example, the communication interface [118] may be an
10 integrated services digital network (ISDN) card, cable modem, satellite modem, or
a modem to provide a data communication connection to a corresponding type of telephone line. As another example, the communication interface [118] may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such
15 implementation, the communication interface [118] sends and receives electrical,
electromagnetic or optical signals that carry digital data streams representing various types of information.
[0058] The computing device [100] can send messages and receive data, including
20 program code, through the network(s), the network link [120] and the
communication interface [118]. In the Internet example, a server [130] might
transmit a requested code for an application program through the Internet [128], the
ISP [126], the local network [122], the host [124] and the communication interface
[118]. The received code may be executed by the processor [104] as it is received,
25 and/or stored in the storage device [110], or other non-volatile storage for later
execution.
[0059] Referring to FIG. 2, an exemplary block diagram of a system [200] for
validating an order request, is shown, in accordance with the exemplary
30 implementations of the present disclosure. The system [200] comprises at least one
transceiver unit [202], at least one parser unit [204], at least one analysis unit [206]
16
and at least one storage unit [208]. Also, all the components/ units of the system
[200] are assumed to be connected to each other unless otherwise indicated below.
As shown in the figures all units shown within the system should also be assumed
to be connected to each other. Also, in FIG. 2 only a few units are shown, however,
5 the system [200] may comprise multiple such units or the system [200] may
comprise any such numbers of said units, as required to implement the features of the present disclosure.
[0060] Further, in accordance with the present disclosure, it is to be acknowledged
10 that the functionality described for the various the components/units can be
implemented interchangeably. While specific embodiments may disclose a
particular functionality of these units for clarity, it is recognized that various
configurations and combinations thereof are within the scope of the disclosure. The
functionality of specific units as disclosed in the disclosure should not be construed
15 as limiting the scope of the present disclosure. Consequently, alternative
arrangements and substitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure.
20 [0061] The system [200] is configured to validate an order request with the help of
the interconnection between the components/units of the system [200].
[0062] In order to validate the order request, the transceiver unit [202] is configured
to receive a create order request comprising one or more order parameters. The
25 transceiver unit [202] is further configured to fetch, from a cache, a set of
configurations for the one or more order parameters based on the create order request, wherein each configuration from the set of configurations comprises one or more parameter elements.
30 [0063] The transceiver unit [202] is configured to fetch the set of configurations
from the cache via utilizing one or more data fetching techniques. The one or more
17
data fetching techniques may be prestored in the storage unit [208]. The one or more data fetching techniques may be pre-defined by an administrator. The one or more data fetching techniques may include any such technique that may be appreciated by a person skilled in the art to implement the solution of the present disclosure. 5
[0064] The present disclosure encompasses that the order request is created for one or more operations such as on boarding new customer, modifying customer details, adding, removing, suspending or resuming a service or disconnecting the customer on a customer relationship management (CRM) system or portal. 10
[0065] The present disclosure encompasses that the one or more order parameters may include but not limited to customer identification data, order identification data, account identification data, customer contact information.
15 [0066] The present disclosure encompasses that the set of configurations may
include one or more predefined rules or one or more pre-defined settings which may be pre-defined by an administrator of the system.
[0067] For instance, in an exemplary scenario, if the parameter is customer
20 identification data, then the respective set of configurations are mandatory. For
example, if the parameter is a customer ID (i.e. customer identification data,), then the set of configurations related to the customer ID is mandatory.
[0068] The present disclosure encompasses that the set of configurations are pre-
25 stored in a database. For example, the set of configurations may be pre-defined by
the administrator and further stored in the database. Further, the set of
configurations may be pre-stored in the database according to a format or structure
such as tree-like structure or a parent-child structure. Additionally, the format or
structure may be obvious to the person skilled in the art.
30
18
[0069] The present disclosure encompasses that the set of configurations are cached
during startup of a microservice performing the method, from the database. The
startup of the microservice refers to an initiation of the microservice, which
involves setting up one or more settings to prepare the microservice to execute one
5 or more functions associated with the microservice. The microservice may refer to
a specific function within an application or a system, such as an authentication and authorization service, a session management service.
[0070] The present disclosure encompasses that each parameter element from the
10 one or more parameter elements comprises at least a parameter name attribute, a
parameter mandatory attribute, and a parameter confidence score attribute.
[0071] For instance, in an exemplary scenario, if the parameter is customer
identification data, then the parameter name attribute is “customer identification
15 data (C.ID)”, the parameter mandatory attribute is “true” and the parameter
confidence score attribute is “100”.
[0072] The present disclosure encompasses that the parameter confidence score
attribute associated with each parameter element from the one or more parameter
20 elements in the set of configurations, decides whether the corresponding parameter
element is editable based on the value of the parameter confidence score.
[0073] The present disclosure encompasses that the one or more parameter
elements of the set of configurations is editable based on the parameter confidence
25 score in each of the parameter element of the one or more parameter element.
[0074] For instance, the parameter confidence score may range from 0 to 100 and
higher the parameter confidence score, greater are chances that the corresponding
parameter element is not editable. In an exemplary scenario, the parameter
30 “customer identification data” is not editable, for which the parameter confidence
score of the parameter “customer identification data” is 100. In another exemplary
19
scenario, the parameter “customer first name” may be editable, due to which the parameter confidence score of the parameter “customer first name” is 50.
[0075] The present disclosure encompasses that the edited parameter element is
5 modified in the corresponding configuration stored in the cache. In other words,
when the parameter element is edited, the change is reflected in the configuration that is stored in the cache to ensure consistency and accuracy.
[0076] The present disclosure encompasses that the one or more parameter
10 elements are edited at a user interface based on the parameter confidence score in
each of the parameter element of the one or more parameter element. The present disclosure encompasses that the administrator may modify the parameter element according to requirements.
15 [0077] For example, a parameter element, “customer gender” having a confidence
score of 20 may be converted from non-editable to editable.
[0078] The present disclosure encompasses that prior to fetching, by the transceiver
unit [202] from the cache, the set of configurations associated with the one or more
20 order parameters based on the create order request, the system invokes a mandatory
parameter validation functionality. The system may utilize one or more invoking
techniques for invoking the mandatory parameter validation functionality. The one
or more invoking techniques may be pre-stored in the storage unit [208] and/ or
may be pre-defined by the administrator.
25
[0079] The present disclosure encompasses that mandatory parameter validation
functionality ensures that the one or more parameters which are mandatory are
validated before placement or acceptance of the order request. The mandatory
parameter validation functionality may operate according to one or more pre-
30 defined rules, one or more pre-defined instructions, one or more pre-defined logics
that assists in validating the one or more parameters which are mandatory.
20
[0080] Further, the parser unit [204] is connected at least to the transceiver unit
[202]. The parser unit [204] is configured to iteratively parse, the one or more
parameter elements from the set of configurations. In other words, the parser unit
[204] repeatedly processes or analyses the one or more parameters elements from
5 the set of configurations, which results in the iterated parameter element.
[0081] The present disclosure encompasses that the one or more parameter
elements are iteratively parsed via one or more parsing protocols, based on the set
of configurations for analysing whether the one or more parameter elements are
10 present according to a format defined in the set of configurations. Further, the one
or more parsing protocols may be pre-defined or pre-stored in the storage unit [208].
[0082] The present disclosure encompasses that the parser unit [204] is further
configured to determine, a presence of a true status or the presence of a false status
15 for a corresponding parameter mandatory attribute associated with a corresponding
parameter name attribute from the iterated parameter element. The parameter mandatory attribute refers to an attribute which is mandatory in the order request.
[0083] The present disclosure encompasses that the false status may indicate that
20 the corresponding parameter may be skipped. The present disclosure encompasses
that the true status may indicate that the corresponding parameter may not be skipped.
[0084] Further, the analysis unit [206] is connected at least to the parser unit [204].
25 The analysis unit [206] is configured to analyse, the one or more order parameters
of the order request, based on the iterated parameter element. The analysis unit [206] is further configured to reject, the order request, based on the analysis of the one or more parameters of the order request.
30 [0085] The analysis unit [206] utilizes one or more data processing techniques for
analysing the one or more order parameters of the order request based on the iterated
21
parameter element. The one or more data processing techniques may include any
such technique that may be pre-defined by the administrator. The one or more data
processing techniques may be pre-stored in the storage unit [208]. The one or more
data processing techniques may include any such technique that may be appreciated
5 by a person skilled in the art to implement the solution of the present disclosure.
[0086] The present disclosure encompasses that the analysis unit [206] is further configured to analyse, each order parameter from the one or more order parameters, wherein each order parameter comprises a parameter name and an associated
10 parameter value. The analysis unit [206] is further configured to determine, a
presence and an absence of a parameter value associated with a parameter name, corresponding to the parameter name attribute from the iterated parameter element, in the one or more order parameters of the order request, based on the presence of the true status.
15
[0087] For instance, the parameter name may include “customer identification data”, “customer name”, “product name” and respectively the associated parameter value may include customer identification data: 1233288, customer name: XYZ, product name: ABC. The parameter value may be either stored in the storage unit
20 [208] or may be define by the user/customer.
[0088] The present disclosure encompasses that the analysis unit [206] is further
configured to reject, the order request, based on the absence of the parameter value
associated with the parameter name in the one or more parameters of the order
25 request.
[0089] As explained in the above example if the parameter “customer address” is mandatory and the respective value related to the parameter is absent, then in this event the analysis unit [206] may reject the order request. 30
22
[0090] The present disclosure encompasses that the parser unit [204], iterates to parse the next parameter element from the one or more parameter elements, in an event of the presence of the parameter value associated with the parameter name in the one or more parameters of the order request. 5
[0091] The present disclosure encompasses that the parser unit [204], iterates to
parse the next parameter element from the one or more parameter elements, in an
event of the presence of the false status for the parameter mandatory attribute
associated with the parameter name attribute from the iterated parameter element
10 from the one or more parameter elements.
[0092] The present disclosure encompasses that when the analysis unit [206] detects that all the mandatory parameters are present in the order request, then the analysis unit [206] may accept the order, hence thereby validating the order request.
15
[0093] Referring to FIG. 3, an exemplary method flow diagram [300] for validating an order request, in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method [300] is performed by the system [200]. Also, as shown in FIG. 3, the method [300] starts at step [302].
20
[0094] At step [304], the method [300] comprises receiving, by a transceiver unit [202], a create order request comprising one or more order parameters.
[0095] The present disclosure encompasses that the transceiver unit [202] is
25 configured to fetch the set of configurations from the cache via utilizing one or more
data fetching techniques. The one or more data fetching techniques may be
prestored in the storage unit [208]. The one or more data fetching techniques may
be pre-defined by an administrator. The one or more data fetching techniques may
include any such technique that may be appreciated by a person skilled in the art to
30 implement the solution of the present disclosure.
23
[0096] The present disclosure encompasses that the order request is created for one or more operations such as on boarding new customer, modifying customer details, adding, removing, suspending or resuming a service or disconnecting the customer on a customer relationship management (CRM) system or portal. 5
[0097] The present disclosure encompasses that the one or more order parameters may include but not limited to customer identification data, order identification data, account identification data, customer contact information.
10 [0098] The present disclosure encompasses that each parameter element from the
one or more parameter elements comprises at least a parameter name attribute, a parameter mandatory attribute, and a parameter confidence score attribute.
[0099] The present disclosure encompasses that prior to fetching, by the transceiver
15 unit [202] from the cache, the set of configurations associated with the one or more
order parameters based on the create order request, the method invokes a mandatory
parameter validation functionality. The system may utilize one or more invoking
techniques for invoking the mandatory parameter validation functionality. The one
or more invoking techniques may be pre-stored in the storage unit [208] and/ or
20 may be pre-defined by the administrator.
[0100] The present disclosure encompasses that mandatory parameter validation
functionality ensures that the one or more parameters which are mandatory are
validated before placement or acceptance of the order request. The mandatory
25 parameter validation functionality may operate according to one or more pre-
defined rules, one or more pre-defined instructions, one or more pre-defined logics that assists in validating the one or more parameters which are mandatory.
[0101] The present disclosure encompasses that the parameter confidence score
30 attribute associated with each parameter element from the one or more parameter
24
elements in the set of configurations, decides whether the corresponding parameter element is editable based on the value of the parameter confidence score.
[0102] The present disclosure encompasses that the one or more parameter
5 elements of the set of configurations is editable based on the parameter confidence
score in each of the parameter element of the one or more parameter element.
[0103] The present disclosure encompasses that the edited parameter element is
modified in the corresponding configuration stored in the cache. In other words,
10 when the parameter element is edited, the change is reflected in the configuration
that is stored in the cache to ensure consistency and accuracy.
[0104] The present disclosure encompasses that the one or more parameter elements are edited at a user interface based on the parameter confidence score in
15 each of the parameter element of the one or more parameter element. The present
disclosure encompasses that the administrator may modify the parameter element according to requirements. For instance, in an exemplary scenario, if the parameter is customer identification data, then the parameter name attribute is “customer identification data (C.ID)”, the parameter mandatory attribute is “true” and the
20 parameter confidence score attribute is “100”.
[0105] For example, a parameter element, “customer gender” having a confidence score of 20 may be converted from non-editable to editable.
25 [0106] For instance, the parameter confidence score may range from 0 to 100 and
higher the parameter confidence score, greater are chances that the corresponding parameter element is not editable. In an exemplary scenario, the parameter “customer identification data” is not editable, for which the parameter confidence score of the parameter “customer identification data” is 100. In another exemplary
30 scenario, the parameter “customer first name” may be editable, due to which the
parameter confidence score of the parameter “customer first name” is 50.
25
[0107] At step [306], the method [300] comprises fetching, by the transceiver unit [202], from a cache, a set of configurations for the one or more order parameters based on the create order request, wherein each configuration from the set of configurations comprises one or more parameter elements. 5
[0108] The present disclosure encompasses that the set of configurations are pre-
stored in a database. For example, the set of configurations may be pre-defined by
the administrator and further stored in the database. Further, the set of
configurations may be pre-stored in the database according to a format or structure
10 such as tree-like structure or a parent-child structure. Additionally, the format or
structure may be obvious to the person skilled in the art.
[0109] The present disclosure encompasses that the set of configurations are cached during startup of a microservice performing the method, from the database. The
15 startup of the microservice refers to an initiation of the microservice, which
involves setting up one or more settings to prepare the microservice to execute one or more functions associated with the microservice. The microservice may refer to a specific function within an application or a system, such as an authentication and authorization service, a session management service.
20
[0110] The present disclosure encompasses that the set of configurations may include one or more predefines rules or one or more pre-defined settings which may be pre-defined by an administrator of the system.
25 [0111] For instance, in an exemplary scenario, if the parameter is customer
identification data, then the respective set of configurations are mandatory. For example, if the parameter is a customer ID (i.e. customer identification data,), then the set of configurations related to the customer ID is mandatory.
30 [0112] At step [308], the method [300] comprises parsing, by a parser unit [204],
iteratively, the one or more parameter elements from the set of configurations. In
26
other words, the parser unit [204] repeatedly processes or analyses the one or more parameters elements from the set of configurations, which results in the iterated parameter element.
5 [0113] The present disclosure encompasses that the one or more parameter
elements are iteratively parsed via one or more parsing protocols, based on the set of configurations for analysing whether the one or more parameter elements are present according to a format defined in the set of configurations. Further, the one or more parsing protocols may be pre-defined or pre-stored in the storage unit [208].
10
[0114] The present disclosure encompasses that parsing of the one or more parameter elements from the set of configurations, comprises determining, by the parser unit [204], a presence of a true status or the presence of a false status for a corresponding parameter mandatory attribute associated with a corresponding
15 parameter name attribute from the iterated parameter element. The parameter
mandatory attribute refers to an attribute which is mandatory in the order request.
[0115] The present disclosure encompasses that the false status may indicate that
the corresponding parameter may be skipped. The present disclosure encompasses
20 that the true status may indicate that the corresponding parameter may not be
skipped.
[0116] At step [310], the method [300] comprises analysing, by an analysis unit
[206], the one or more order parameters of the order request, based on the iterated
25 parameter element.
[0117] The analysis unit [206] utilizes one or more data processing techniques for
analysing the one or more order parameters of the order request based on the iterated
parameter element. The one or more data processing techniques may include any
30 such technique that may be pre-defined by the administrator. The one or more data
processing techniques may be pre-stored in the storage unit [208]. The one or more
27
data processing techniques may include any such technique that may be appreciated by a person skilled in the art to implement the solution of the present disclosure.
[0118] The present disclosure encompasses that the analysing of the one or
5 parameters of the order request based on the iterated parameter element, comprises
analysing, by the analysis unit [206], each order parameter from the one or more
order parameters, wherein each order parameter comprises a parameter name and
an associated parameter value. The analysing of the one or parameters of the order
request based on the iterated parameter element further comprises determining, by
10 the analysis unit [206], a presence and an absence of a parameter value associated
with a parameter name, corresponding to the parameter name attribute from the iterated parameter element, in the one or more order parameters of the order request, based on the presence of the true status.
15 [0119] For instance, the parameter name may include “customer identification
data”, “customer name”, “product name” and respectively the associated parameter
value may include customer identification data: 1233288, customer name: XYZ,
product name: ABC. The parameter value may be either stored in the storage unit
[208] or may be define by the user/customer.
20
[0120] As explained in the above example if the parameter “customer address” is
mandatory and the respective value related to the parameter is absent, then in this
event the analysis unit [206] may reject the order request.
25 [0121] At step [312], the method [300] comprises rejecting, by the analysis unit
[206], the order request, based on the analysis of the one or more parameters of the order request.
[0122] The present disclosure encompasses that, the method [300] further
30 comprises rejecting, by the analysis unit [206], the order request, based on the
28
absence of the parameter value associated with the parameter name in the one or more parameters of the order request.
[0123] The present disclosure encompasses that the parser unit [204], iterates to
5 parse the next parameter element from the one or more parameter elements, in an
event of the presence of the parameter value associated with the parameter name in the one or more parameters of the order request.
[0124] The present disclosure encompasses that the parser unit [204], iterates to
10 parse the next parameter element from the one or more parameter elements, in an
event of the presence of the false status for the parameter mandatory attribute associated with the parameter name attribute from the iterated parameter element from the one or more parameter elements.
15 [0125] The present disclosure encompasses that when the analysis unit [206]
detects that all the mandatory parameters are present in the order request, then the analysis unit [206] may accept the order, hence thereby validating the order request.
[0126] The method [300] terminates at step [314]. 20
[0127] Referring to FIG. 4 an exemplary method flow diagram [400] for validating an order request, in accordance with exemplary implementations of the present disclosure is shown. As shown in FIG. 4, the method [400] starts from step S1.
25 [0128] At step S1, an order request is created from a channel such as an ecommerce
website, and a mobile application. The method can receive requests from various customer channels to maintain customer information and order lifecycle.
[0129] At step S2, a mandatory parameter validation functionality is invoked upon
30 creation of the order request.
29
[0130] At step S3, a set of mandatory order configurations beforehand are created or updated and stored in a cache or a database.
[0131] At step S4, one or more mandatory configurations are fetched from a
5 database or a cache upon invoking the mandatory parameter validation
functionality.
[0132] At step S5, each element present in the one or more mandatory configurations are iterated to capture one or more attribute fields.
10
[0133] At step S6, a true status of each mandatory attribute field in all the iterated elements is checked and at step S7, if the mandatory attribute field is not true in all the iterated elements, then a current iteration is skipped and moved to next iteration. Whereas, at step S8, if the mandatory attribute field is true in all the iterated
15 elements, then order request is de-serialised into a node hierarchy and in the de-
serialised order request, a presence of the attribute field value is checked in the original order request.
[0134] At step S9, a presence of the one or more parameters is checked in the order
20 request and at step S10, if the one or more parameters which are mandatory is
absent, then the order request is rejected, whereas if the one or more parameters which are mandatory is present, then step S4 is repeated.
[0135] Referring to FIG. 5, an exemplary block diagram of a customer relationship
25 management (CRM) architecture, in accordance with exemplary implementations
of the present disclosure is shown.
[0136] The present solution may be implemented on the CRM architecture. In an
implementation, the CRM architecture [500] comprises a plurality of components
30 and by no way limiting the scope of the present subject matter.
30
[0137] The customer relationship management (CRM) architecture [500]
comprises an Enterprise Product Catalogue (EPC) [502], a Fulfilment management
system (FMS) [504], a subscription engine [514], a plurality of channels [506], a
load balancer [508], a Customer Relationship Manager (CRM) server [510]
5 comprising a plurality of micro-services, and a set of databases [512]. The set of
databases may include a database 1, database 2, and a database 3. The EPC [502] is
a centralised data repository which drives Business Support System (BSS) telecom
operations and some network nodes for e.g., 5G charging system, called Policy
Control Function (PCF) etc.
10
[0138] At the centre, the CRM server [510] containing different micro services is
shown, which cater to different Application Programming Interfaces (APIs). Each
microservice serves a particular context, e.g., Customer Order Processing Micro
service (COP_MS) deals with order-related APIs which performs, for example,
15 submit order, query order, and modify order actions. Customer Information Service
(CIS) instances deal with customer-related APIs which performs create, modify or deactivate customer. Lead-to-Order (L2O) instances deal with APIs that manage the lifecycle of leads and prospects. Operations and Maintenance (OAM) instance deals with the maintenance and operation of all the microservice instances and
20 communicates with outer products related to alarms, Key Performance Indicators
(KPIs) or other management, and health check-up information.
[0139] The channels [506] are configured to provide input data to the CRM server
[510] through a load balancer [508]. In an embodiment, some exemplary channels
25 [506] are shown such as, a Channel 1 [506A], a Channel 2 [506B], a Channel 3
[506C] and a CRM user interface (UI) [506D].
[0140] Further, the channels [506] are various user interfaces through which an API
request is received. Also, the channels [506] may be web applications and the
30 channels [506] are a point of interaction between a user (or another system) and the
EPC.
31
[0141] The channels [506] which are tightly coupled to the CRM e.g. CRM User
Interface (UI) [506D] communicate directly via the load balancer [508] while other
systems which belong to different products communicate to the CRM server [510]
5 using the FMS [504]. The FMS [504] is a middleware which links two different
products and performs language translations or workflow management. For example, if one product understands Simple Object Access Protocol (SOAP) protocol while the other one understands RESTful services, the FMS [504] translate the messages between these 2 nodes and ensure seamless communication. The
10 CRM server [510] is also connected with the FMS [504], SMP (Service
Management Platform) [516], and Data Information Framework (DIF) [518] via https. The DIF [518] is a copy of the CRM server [510], the EPC [502], and Geographical Information System (GIS) which caches the business data and provides API for fast access. The SMP [516] deals with the installation processes
15 at customer premises, handling repair mechanism and technician visit to network
sites.
[0142] In an implementation, an admin user operates the CRM UI [506D] to trigger the CRUD (Create/ Read/ Update/ Delete) operation on the CRM server [510] via
20 the load balancer [508] or the FMS [504]. According to the present disclosure, the
CRM server [510] stores all order journey configurations cached during the start¬up of micro services. Whenever any change, such as ‘update’, ‘delete’, ‘create’ etc., in order journey configuration is received from the CRM UI [506D], the CRM server [510] processes the same and modifies the stored data in cache. The
25 workflow engine picks the updated configuration item whenever subsequent order
submission request comes at the CRM server [510]. Based on the configuration list, the next milestone is triggered.
30 [0143] In an exemplary scenario, for every operation such as on boarding a new
customer, modifying customer details, adding, removing, suspending or resuming a service or disconnecting the customer, a customer relationship management
32
(CRM) unit generates an order in a database for tracking purpose. The system [200]
and method [300] of the present disclosure validate the order request against the
one or more order parameters that are mandatory, and which needs to be present in
order, failing of which, order is not submitted. Further the set of configurations
5 dictates the one or more order parameters that are mandatory based on one or more
attributes according to a type of order and other factors which are stored in the database and/or the cache. The set of configurations may be created, modified, deleted which are further updated int the database and/ or the cache. Also, the set of configurations are auto-updated in the cache, which is primary source of fetching
10 configurations, hence, this auto-updating feature of the present disclosure
eliminates the requirements of providing new code binaries and restarting the system [200] in case the set of configurations are modified either with new one or more mandatory parameters added or removed, or configuration entirely removed, thereby avoiding hotfix and deployment lifecycles.
15
[0144] For instance, the method [300] and system [200] of the present disclosure may be utilized in an organization for validating an order request by receiving a create order request from a user. The create order request comprises of the one or more order parameters such as a customer identification data, an order identification
20 data, an account identification data, a customer first name, a customer middle name,
a customer last name, a customer salutation, a mobile number, an electronic mail address, a contact information, a product information data and a product name. Upon receiving the order request, a set of set of configurations for the one or more order parameters based on the create order request are fetched from a cache or a
25 database. In an exemplary scenario, the set of configurations may be based on one
or more order parameters such as product code, scenario code, circle code, Mobile number portability (MNP) details, Know Your Customer (KYC) type. Also, each configuration from the set of configurations comprises one or more parameter elements. In addition to this, if no set of configurations are present in the cache or
30 database, then the system [200] skips this step. Thereafter, the one or more
parameter elements from the set of configurations are parsed iteratively. Also, for
33
each parameter element there are preferably three attributes such as parameter name attribute, a parameter mandatory attribute, and a parameter confidence score attribute.
5 [0145] In another exemplary scenario, the parser unit [204] is configured to iterate
the parameter in the respective configuration for the parameter element which include parameter name as “customer.product.id”, parameter mandatory attribute as “true” and “parameter confidence score attribute” as 100.
10 [0146] For instance, the parser unit [204] checks inside the order request to locate
a customer object or customer array and if it is an array, the parser unit [204] iterates through each element. Further, inside customer, the parser unit [204] iterates product object or array and if it is an array, the parser unit [204] iterates through each element. Furthermore, inside each product, the parser unit [204] finds the
15 identification data (ID) field and checks whether the ID filed is present or not. If
not, the parser unit [204] marks this event as “Mandatory order attribute not present”.
[0147] For another instance, in an exemplary scenario, an administrator of the
20 system and method as disclosed in the present disclosure implements a validation
as per a requirement such that a shipping address includes a mandatory building
identification data (ID) that may be present in the order. The shipping address need
not be there if the address is a permanent address or a billing address. In this
scenario, the set of configurations include parameter name as, “customer address =
25 building ID”, parameter mandatory attribute as “true” and “parameter confidence
score attribute” as 100. Hence, in similar way plurality of set of configurations may be added in the customer relationship management (CRM) platform without consuming additional time and resource.
30 [0148] Further, the similar set of configurations may include change of first name
inside the customer parameter as non-mandatory, making product ID as mandatory,
34
making a universal identification number as non-editable and shooting the respective confidence score to 100.
[0149] Further, the one or more parameters of the order request are analysed based
5 on the iterated parameter element. Each order parameter comprises a parameter
name and an associated parameter value and in case of absence of the parameter
value associated with the parameter name in the one or more parameters of the order
request, the order request is rejected. Further, in case the parameter value associated
with the parameter name is present in the order request, the next parameter element
10 from the one or more parameter elements is iteratively parsed.
[0150] The present disclosure provides a user equipment (UE) comprising a memory and a processor connected to the memory. The processor is configured to send a create order request comprising one or more order parameters to a system
15 [200]. The processor is further configured to receive, from the system [200], a reject
response based on a validation of the order request. The validation of the order request is performed by the system [200] by fetching, from a cache, a set of configurations for the one or more order parameters based on the create order request, wherein each configuration from the set of configurations comprises one
20 or more parameter elements. The validation of the order request is further
performed by the system [200] by iteratively parsing, the one or more parameter elements from the set of configurations. The validation of the order request is further performed by the system [200] by analysing, the one or more order parameters of the order request, based on the iterated parameter element. The
25 validation of the order request is further performed by the system [200] by rejecting,
the order request, based on the analysis of the one or more parameters of the order request.
[0151] The present disclosure provides a non-transitory computer readable storage
30 medium storing instructions for validating an order request, the instructions include
executable code which, when executed by one or more units of a system [200],
35
causes: a transceiver unit [202] of the system [200] to receive, a create order request
comprising one or more order parameters. Further, the instructions include
executable code which, when executed, causes the transceiver unit [202] of the
system [200] to fetch, from a cache, a set of configurations for the one or more order
5 parameters based on the create order request, wherein each configuration from the
set of configurations comprises one or more parameter elements. Further, the instructions include executable code which, when executed by one or more units of a system [200], causes a parser unit [204] of the system [200] to iteratively parse, the one or more parameter elements from the set of configurations. Further, the
10 instructions include executable code which, when executed by one or more units of
a system [200], causes an analysis unit [206] of the system [200] to analyse, the one or more order parameters of the order request, based on the iterated parameter element. Further, the instructions include executable code which, when executed by one or more units of a system [200], causes the analysis unit [206] of the system
15 [200] reject, the order request, based on the analysis of the one or more parameters
of the order request.
[0152] As is evident from the above, the present disclosure provides a technically advanced solution for validating an order request. The present solution allows for
20 addition or modification of plurality of set of configurations for validating the order
request without consuming additional time and resource overhead. The present solution provides an enhanced way to validate the order request which is more reliable and efficient. The present solution also provides a dynamic way to manage the set of configurations that enables quick adaption to varying requirements and
25 order types. The present solution also eliminates the requirements of providing new
code binaries and restarting the system in case the set of configurations are modified either with new one or more mandatory parameters added or removed, or configuration entirely removed, thereby avoiding hotfix and deployment lifecycles.
30 [0153] While considerable emphasis has been placed herein on the disclosed
implementations, it will be appreciated that many implementations can be made and
36
that many changes can be made to the implementations without departing from the principles of the present disclosure. These and other changes in the implementations of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.
[0154] Further, in accordance with the present disclosure, it is to be acknowledged that the functionality described for the various components/units can be implemented interchangeably. While specific embodiments may disclose a particular functionality of these units for clarity, it is recognized that various configurations and combinations thereof are within the scope of the disclosure. The functionality of specific units as disclosed in the disclosure should not be construed as limiting the scope of the present disclosure. Consequently, alternative arrangements and substitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure
.We Claim:
1. A method [300] for validating an order request, the method comprising:
- receiving, by a transceiver unit [202], a create order request comprising one or more order parameters;
- fetching, by the transceiver unit [202], from a cache, a set of configurations for the one or more order parameters based on the create order request, wherein each configuration from the set of configurations comprises one or more parameter elements;
- parsing, by a parser unit [204], iteratively, the one or more parameter elements from the set of configurations;
- analysing, by an analysis unit [206], the one or more parameters of the order request based on the iterated parameter element; and
- rejecting, by the analysis unit [206], the order request, based on the analysis of the one or more parameters of the order request.
2. The method [300] as claimed in claim 1, wherein, each parameter element from the one or more parameter elements comprises at least a parameter name attribute, a parameter mandatory attribute, and a parameter confidence score attribute.
3. The method [300] as claimed in claim 2, wherein the parsing of the one or more parameter elements from the set of configurations, comprises: determining, by the parser unit [204], a presence of a true status or the presence of a false status for a corresponding parameter mandatory attribute associated with a corresponding parameter name attribute from the iterated parameter element.
4. The method [300] as claimed in claim 3, wherein the analysing of the one or parameters of the order request based on the iterated parameter element, comprises:
- analysing, by the analysis unit [206], each order parameter from the one or more order parameters, wherein each order parameter comprises a parameter name and an associated parameter value; and
- determining, by the analysis unit [206], a presence and an absence of a parameter value associated with a parameter name, corresponding to the parameter name attribute from the iterated parameter element, in the one or more order parameters of the order request, based on the presence of the true status.
5. The method [300] as claimed in claim 4, further comprises:
rejecting, by the analysis unit [206], the order request, based on the absence of the parameter value associated with the parameter name in the one or more parameters of the order request.
6. The method [300] as claimed in claim 4, wherein, the parser unit [204], iterates to parse the next parameter element from the one or more parameter elements, in an event of the presence of the parameter value associated with the parameter name in the one or more parameters of the order request.
7. The method [300] as claimed in claim 3, wherein, the parser unit [204], iterates to parse the next parameter element from the one or more parameter elements, in an event of the presence of the false status for the parameter mandatory attribute associated with the parameter name attribute from the iterated parameter element from the one or more parameter elements.
8. The method [300] as claimed in claim 1, wherein, prior to fetching, by the transceiver unit [202] from the cache, the set of configurations associated with the one or more order parameters based on the create order request, the method invokes a mandatory parameter validation functionality.
9. The method [300] as claimed in claim 2, wherein the parameter confidence score attribute associated with each parameter element from the one or more parameter elements in the set of configurations, decides whether the corresponding parameter element is editable based on a value of the parameter confidence score.
10. The method [300] as claimed in claim 1, wherein the set of configurations are pre-stored in a database.
11. The method [300] as claimed in claim 10, wherein the set of configurations are cached during startup of a microservice performing the method, from the database.
12. The method [300] as claimed in claim 9, wherein the one or more parameter elements of the set of configurations is editable based on the parameter confidence score in each of the parameter element of the one or more parameter element.
13. The method [300] as claimed in claim 12, wherein the edited parameter element is modified in the corresponding configuration stored in the cache.
14. The method as claimed in claim 12, wherein the one or more parameter elements are edited at a user interface based on the parameter confidence score in each of the parameter element of the one or more parameter element.
15. A system [200] for validating an order request, the system comprises:
- a transceiver unit [202] configured to:
• receive, a create order request comprising one or more order parameters;
• fetch, from a cache, a set of configurations for the one or more order parameters based on the create order request, wherein each
configuration from the set of configurations comprises one or more parameter elements;
- a parser unit [204], connected at least to the transceiver unit [202], the parser unit [204] configured to iteratively parse, the one or more parameter elements from the set of configurations;
- an analysis unit [206] connected at least to the parser unit [204], the analysis unit [206] is configured to:
• analyse, the one or more order parameters of the order request, based on the iterated parameter element; and
• reject, the order request, based on the analysis of the one or more parameters of the order request.
16. The system [200] as claimed in claim 15, wherein, each parameter element from the one or more parameter elements comprises at least a parameter name attribute, a parameter mandatory attribute, and a parameter confidence score attribute.
17. The system [200] as claimed in claim 16, configured to parse, by the parser unit [204], the one or more parameter elements from the set of configurations, wherein the parser unit [204] is further configured to: determine, a presence of a true status or the presence of a false status for a corresponding parameter mandatory attribute associated with a corresponding parameter name attribute from the iterated parameter element.
18. The system [200] as claimed in claim 17, configured to analyse, by the analysis unit [206], the one or parameters of the order request based on the iterated parameter element, wherein the analysis unit [206] is further configured to:
- analyse, each order parameter from the one or more order parameters,
wherein each order parameter comprises a parameter name and an
associated parameter value; and
- determine, a presence and an absence of a parameter value associated with a parameter name, corresponding to the parameter name attribute from the iterated parameter element, in the one or more order parameters of the order request, based on the presence of the true status.
19. The system [200] as claimed in claim 18, wherein the analysis unit [206] is
further configured to:
reject, the order request, based on the absence of the parameter value associated with the parameter name in the one or more parameters of the order request.
20. The system [200] as claimed in claim 18, wherein, the parser unit [204], iterates to parse the next parameter element from the one or more parameter elements, in an event of the presence of the parameter value associated with the parameter name in the one or more parameters of the order request.
21. The system [200] as claimed in claim 17, wherein, the parser unit [204], iterates to parse the next parameter element from the one or more parameter elements, in an event of the presence of the false status for the parameter mandatory attribute associated with the parameter name attribute from the iterated parameter element from the one or more parameter elements.
22. The system [200] as claimed in claim 15, wherein, prior to fetching, by the transceiver unit [202] from the cache, the set of configurations associated with the one or more order parameters based on the create order request, the system [200] invokes a mandatory parameter validation functionality.
23. The system [200] as claimed in claim 16, wherein a parameter confidence score attribute associated with each parameter element from the one or more parameter elements in the set of configurations, decides whether the
corresponding parameter element is editable based on a value of the parameter confidence score.
24. The system [200] as claimed in claim 15, wherein the set of configurations are pre-stored in a database.
25. The system [200] as claimed in claim 24, wherein the set of configurations are cached during startup of a microservice performing the validation, from the database.
26. The system [200] as claimed in claim 23, wherein the one or more parameter elements of the set of configurations is editable based on the parameter confidence score in each of the parameter element of the one or more parameter element.
27. The system [200] as claimed in claim 26, wherein the edited parameter element is modified in the corresponding configuration stored in the cache.
28. The system [200] as claimed in claim 27, wherein the one or more parameter elements are edited at a user interface based on the parameter confidence score in each of the parameter element of the one or more parameter element.
29. A user equipment (UE) comprising:
a memory; and
a processor connected to the memory, wherein the processor is configured
to:
• send, a create order request comprising one or more order parameters to a system [200]; and
• receive, from the system [200], a reject response based on a validation of the order request, wherein the validation of the order request is performed by the system [200] by:
• fetching, from a cache, a set of configurations for the one or more order parameters based on the create order request, wherein each configuration from the set of configurations comprises one or more parameter elements;
• iteratively parsing, the one or more parameter elements from the set of configurations;
• analysing, the one or more order parameters of the order request, based on the iterated parameter element; and
• rejecting, the order request, based on the analysis of the one or more parameters of the order request.
| # | Name | Date |
|---|---|---|
| 1 | 202321048678-STATEMENT OF UNDERTAKING (FORM 3) [19-07-2023(online)].pdf | 2023-07-19 |
| 2 | 202321048678-PROVISIONAL SPECIFICATION [19-07-2023(online)].pdf | 2023-07-19 |
| 3 | 202321048678-FORM 1 [19-07-2023(online)].pdf | 2023-07-19 |
| 4 | 202321048678-FIGURE OF ABSTRACT [19-07-2023(online)].pdf | 2023-07-19 |
| 5 | 202321048678-DRAWINGS [19-07-2023(online)].pdf | 2023-07-19 |
| 6 | 202321048678-FORM-26 [20-09-2023(online)].pdf | 2023-09-20 |
| 7 | 202321048678-Proof of Right [11-10-2023(online)].pdf | 2023-10-11 |
| 8 | 202321048678-ORIGINAL UR 6(1A) FORM 1 & 26)-261023.pdf | 2023-11-04 |
| 9 | 202321048678-FORM-5 [17-07-2024(online)].pdf | 2024-07-17 |
| 10 | 202321048678-ENDORSEMENT BY INVENTORS [17-07-2024(online)].pdf | 2024-07-17 |
| 11 | 202321048678-DRAWING [17-07-2024(online)].pdf | 2024-07-17 |
| 12 | 202321048678-CORRESPONDENCE-OTHERS [17-07-2024(online)].pdf | 2024-07-17 |
| 13 | 202321048678-COMPLETE SPECIFICATION [17-07-2024(online)].pdf | 2024-07-17 |
| 14 | Abstract-1.jpg | 2024-09-06 |