Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel7

List Of Value (LOV) service is used for storing commonly used data set that can be shared among multiple line of business. To onboard LoV and use its functions properly, the cases described below might fit your situation and can be references with.

LoV Service Access

Note: Write Access to ListOfValue are only limited to certain identified individuals and groups. any incoming request should be send to Vadim Lawrence (Unlicensed) to process, until further notice.

For the current available endpoints you can consult the OpenAPI Specification in the following table:

Environments

Endpoint

OpenAPI Specification

NCD / Development

https://ncdsafsecsurapp-lov-service.azurewebsites.net/api/v2

https://ncdsafsecsurapp-lov-service.azurewebsites.net/swagger/index.html

NCT / Test

https://nctsafsecsurapp-lov-service.azurewebsites.net/api/v2

https://nctsafsecsurapp-lov-service.azurewebsites.net/swagger/index.html

NCA / Acceptance

PCP / Production

https://pcpsafsecsurapp-lov-service.azurewebsites.net/api/v2

https://pcpsafsecsurapp-lov-service.azurewebsites.net/swagger/index.html?urls.primaryName=v2

Line Of Business Application init setup in LoV

In order for an application to be recognized, please provide the following example entry to MOLE team that information will be inserted into LOV after.
Caution - The following characters are restricted and cannot be used in the Id property: '/', '\\', '?', '#'. for more details: https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.documents.resource.id?view=azure-dotnet

Code Block
{
    "id": "next avaiable ID Number",
    "listOfValueType": "LineOfBusiness",
    "valueTextEnglish": "Application Name - EN",
    "valueTextFrench": "Application Name - FR",
    "order": 0,
    "customValue1": "AN", // Short form of Application name
    "customValue2": "",
    "parentList": null, // If have use it, otherwise, null
    "isTypeActive": true, // Always true
    "isValueActive": true, // Active: True; InActive: False
    "searchCriteria": "",
    "ownerShips": [
      {
        "businessName": "", // Business name
        "businessOwner": "", // Business Owner
        "businessContactEmail": "", // PO email
        "businessContactPhone": "" // PO phone
      }
    ],
    "customProperties": [ // Free json style custom properties
      {
        "CustomValue1": ""
      },
      {
        "CustomValue2": ""
      }
    ]
  }

Line Of Business Lookup Data

Some Line of Business might have common data for lookup purpose that wants to store somewhere. LoV will be perfect places to store those data and share with other LoB.

The following steps will show how those data can be plugged into LoV.

(1) Create Json with data included similar as following format

Code Block
[
  {
    "id": "001",
    "listOfValueType": "PaymentMethods", // The type for these list of value
    "valueTextEnglish": "Online",
    "valueTextFrench": "En ligne",
    "order": 0,
    "customValue1": "",
    "customValue2": "",
    "parentList": null,
    "isTypeActive": true,
    "isValueActive": true,
    "searchCriteria": null,
    "ownerShips": [
      {
        "businessName": null,
        "businessOwner": null,
        "businessContactEmail": null,
        "businessContactPhone": null
      }
    ],
    "customProperties": [       // Free Json Style String
    {
        "CustomValue1": ""
      },
      {
        "CustomValue2": ""
      }
    ] 
  },
  {
    "id": "002",
    "listOfValueType": "PaymentMethods",
    "valueTextEnglish": "Cheque",
    "valueTextFrench": "Chèque",
    "order": 0,
    "customValue1": "",
    "customValue2": "",
    "parentList": null,
    "isTypeActive": true,
    "isValueActive": true,
    "searchCriteria": null,
    "ownerShips": [
      {
        "businessName": null,
        "businessOwner": null,
        "businessContactEmail": null,
        "businessContactPhone": null
      }
    ],
    "customProperties": []
  }
]

(2) Send Json file to MOLE team to insert those data into LOV service.

(3) Call LoV Endpoints to consume those data

Code Block
/api/v2/ListOfValues?ListOfValueType=PaymentMethods

CRSM Service Request Type

In order to comply with the Service Fees Act, your application might need to report the service standards. WLM is integrated with MTOA/CRSM and is configured to automatically send notifications. If application needs to integrate with CRSM platform, A service request mapping might need to be created between two systems as two system might not be using same ids or wordings for service request type defined.

We are using Vessel Registry as example here:

Code Block
{
	"Id": "038",
	"ListOfValueType": "VesselRegistryRequestType",
	"ValueTextEnglish": "Re-Registry",
	"ValueTextFrench": "Ré-immatriculation",
	"Order": 1,
	"CustomValue1": "002",
	"CustomValue2": "",
	"ParentList": null,
	"IsTypeActive": true,
	"IsValueActive": true,
	"SearchCriteria": null,
	"OwnerShips": [{
		"BusinessName": "WLM",
		"BusinessOwner": "Walter Hoban",
		"BusinessContactEmail": "",
		"BusinessContactPhone": ""
	}],
	"CustomProperties": [{
		"CRSMServiceAttributes": {
			"ServiceId": "9999",
			"ServiceAttributeId": "3604",
			"ServiceFeeCode": "SVC-999995",
			"ServiceStandardId": 74
		}
	}]
}

LineOfBusiness - MTOA Status Mapping

Sometimes, we also need to map the status between two systems as they might be using different name convention. We use work load item status as example here

Code Block
{
    "Id": "005",
    "ListOfValueType": "WLMMTOAStatus",
    "ValueTextEnglish": "Removed",
    "ValueTextFrench": "Supprimé",
    "Order": 1,
    "CustomValue1": "",
    "CustomValue2": "",
    "ParentList": "",
    "IsTypeActive": true,
    "IsValueActive": true,
    "SearchCriteria": "",
    "OwnerShips": [
      {
        "BusinessName": "WLM",
        "BusinessOwner": "Walter Hoban",
        "BusinessContactEmail": "",
        "BusinessContactPhone": ""
      }
    ],
    "CustomProperties": [
      {
        "MTOAStatus": [
          {
            "id": "12",
            "lineOfBusinessId": "001|002",
            "lineOfBusinessName": "VR|SF",
            "valueTextEnglish": "Rejected",
            "valueTextFrench": "Rejetée"
          }
        ]
      },
      {
        "LineOfBussiness": [
          {
            "lineOfBusinessId": "001",
            "lineOfBusinessName": "VR"
          },
          {
            "lineOfBusinessId": "002",
            "lineOfBusinessName": "SF"
          }
        ]
      }
    ]
  }