Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Only some light code cleanup has been done to this class, though, as mentioned above, if doing any workflows related to the functionality of Np Import, it is strongly recommended to include time in the estimate to refactor that logic into new functionality instead of continuing to use WfCNumberPortabilityNorway.

New Logic

An overview of new logic, introduced in Release 6.0 of the NRDB Number Porting project.

New Actions

The following are new actions, implemented to replace deprecated logic of the WfCNumberExportNorway component.

CancelNpExport

This action will cancel an ongoing NP Export Process. It can cover two different scenarios:

  • If the property cancelOtherFlows is set to false, the action will cancel the current export process. This is usually needed when a request to cancel the current np process has been received. If the property reactivateSubscription is set to true, the subscription associated with this flow will be reactivated when the flow is cancelled.

  • If the property cancelOtherFlows is set to true, the action will cancel any other outstanding NP Export workflows. This is usually used at the start of an export process, to ensure that the current export process is the only active process for this number.

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.CancelNpExport

  • cancelOtherFlows

  • reactivateSubscription

NpExportFlowNO

N/A

CompleteNpExport

This action finalizes an NP Export, updating NpExportFlowNO status id, case status id, and creating a final np export step note. It is used as the last step of a successful Np Export workflow.

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.CompleteNpExport

N/A

NpExportFlowNO

N/A

CreateNRDBMessageTypeObject

This action creates a new NRDBMessageType object based on the provided code. The action currently support NRDB Message Types of codes 111Out (GODK), 115OUT (FERD), 125Out (FBES), 127Out (FEND) and 141Out (KABES) as needed by the Export process. This logic should be expanded as necessary.

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.CreateNRDBMessageTypeObject

messageType

NpExportFlowNO

NRDBMessageType

HasReceivedNRDBMessageOfType

This action checks if an NRDBMessageType of the specified type has been received for the provided NpExportFlowNO.

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.HasReceivedNRDBMessageOfType

messageType

NpExportFlowNO

true/false

HasSecretNumber

Checks if an NRDBMessageType of code 111 has been received, and whether the COORDINATED_PORTING column of the NRDB_MESSAGE_TYPE table has been set to 2 or 3. This is used for NP Import to determine if the imported number was a secret number at the donor network, and act accordingly in the rator system.

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.HasSecretNumber

N/A

NpFlowNO

true/false

InitializeNpExport

Initializes an np export flow with status id, case status id and subscription id. Typically used at the start of an Np Export workflow to initialize the export process.

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.InitializeNpExport

N/A

NpExportFlowNO

N/A

ValidateNpExport

  • Validates the user and checks if the phone number is valid for outporting. For user validation, this check will fail if:

  • The account owner does not have a customer id (Users.getPersonalId() for business accounts, Users.getBirthDay() for private accounts.)

  • The account owner has a customer id, but it does not match the customer id on the NpExportFlowNO

  • If the subscription provided on the NpExportFlowNO is not active

  • If the service is in status 230 and the parameter value NPSYSTEM.DISABLE_CHECK_BLOCK_NOT_PAID is configured to ā€œNā€ or not configured at all

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.ValidateNpExport

N/A

NpExportFlowNO

true/false

ValidateNpExportPortDateForMinimumNumberOfDays

Validates export date by calculating the earliest date that is valid for export (based on parameter values), and comparing it to the the requested port date.

Mandatory parameter values:

  • NPSYSTEM.MIN_EXPORT_DATE_FBES

  • NPSYSTEM.MIN_EXPORT_DATE_FEND

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.ValidateNpExportPortDateForMinimumNumberOfDays

N/A

NpExportFlowNO

true/false

ValidateNpExportPortDateForMinimumWorkingHours

Validates export date by calculating the difference between the np export flow's order date and export date, and comparing them to a minimum allowed difference in hours. This minum allowed difference is configured as the execution argument minWorkingHours. If this value is set to 0, this validation will be skipped. The provided rejectComment is the comment that will be set on the NpExportFlowNO if this validation fails.

full name

properties

execution arguments

result

com.CDRator.billing.np.no.action.ValidateNpExportPortDateForMinimumWorkingHours

N/A

  • NpExportFlowNO

  • minWorkingHours

  • rejectComment

true/false

NRDB Message Type Status

The NRDB Number Porting project has been updated with a new way of handling Status, that is more aligned with core status handling: com.CDRator.billing.np.no.status.StatusNRDBMessageType. All relevant classes have been updated to use this status type. Note that StatusNRDBMessageType requires these Status IDs to be configured in the STATUS table. A script to install these statuses has been included below, as well as committed to the rator-np-no-nrdb project.

The provided status ids are:

0

UNHANDLED

1

HANDLED

2

ERROR

3

REMOVED

4

OUTPORT

9

RETRY_ERROR

References

NRDB Message Reader Engine - Version 1.2

...