Service - Delivery Method Pickup

From Izara Wiki
Jump to navigation Jump to search

Overview

Handler service for basic pickup that use Service - Delivery Method Pickup Table for pricing and specifying pickup locations.

Repository

https://bitbucket.org/izara-market-services/izara-market-products-delivery-method-pickup

Schemas

ObjectSchemas

deliveryMethodPickup

{
  "objectType": "deliveryMethodPickup",
  "extendObjType": {
    "serviceTag": "DeliveryMethodMgr",
    "objectType": "deliveryMethod"
  },
  "storageResources": {
    "graph": {
      "storageType": "graph",
      "graphServerTag": "GraphHandler"
    },
    "dynamoDB": {
      "storageType": "dynamoDB",
      "tableName": "DeliveryMethodRecord",
      "serviceTag": "DeliveryMethodMgr"
    }
  },
  "addOnDataStructure": [
    {
      "type": "versionedData",
      "versionedDataLabel": "deliveryMethodSettings",
      "storageResourceTag": "graph",
      "fieldNames": {
        "defaultValueType": {
          "type": "string",
          "requiredOnCreate": true,
          "optionalOnCreate": false,
          "canUpdate": true,
          "validation": {
            "pattern": "^[a-zA-Z0-9_-]+$"
          }
        },
        "defaultValueId": {
          "type": "string",
          "requiredOnCreate": true,
          "optionalOnCreate": false,
          "canUpdate": true,
          "validation": {
            "pattern": "^[a-zA-Z0-9_-]+$"
          }
        },
        "defaultValueLanguageId": {
          "type": "string",
          "requiredOnCreate": true,
          "optionalOnCreate": false,
          "canUpdate": true,
          "validation": {
            "pattern": "^[a-zA-Z0-9_-]+$"
          }
        },
        "defaultAccumulateValue": {
          "type": "boolean",
          "requiredOnCreate": true,
          "optionalOnCreate": false,
          "canUpdate": true,
          "validation": {

          }
        }
      }
    },
    {
      "type": "propertyValue"
    }
  ],
  "fieldNames": {

  },
  "generatedBy": "userGenerated"
}
Additional Information
Per Service Schemas
  • extends deliveryMethod
  • has versionData similar to deliveryMethodStandard to add costs and set value for pickupTables

Object Relationships

hasDeliveryMethodPickupTable

{
	"hasDeliveryMethodPickupTable": {
		storageResources: {
			myGraph: {
				storageType: "graph",
				graphServerTag: "graphHandler"
			}
		},
		links: [
			{
				storageResourceTags: ["myGraph"],
				from: {
					objType: {
						serviceTag: "deliveryMethodPickup",
						objectType: "deliveryMethodPickup"
					},
					linkType: "many",
				},
				to: {
					objType: {
						serviceTag: "deliveryMethodPickupTable",
						objectType: "deliveryMethodPickupTable"
					},
					linkType: "many",
					handler: true
				}
			},
		]
	}
}

disabledDeliveryMethodPickupTable

{
	"disabledDeliveryMethodPickupTable": {
		storageResources: {
			myGraph: {
				storageType: "graph",
				graphServerTag: "graphHandler"
			}
		},
		links: [
			{
				storageResourceTags: ["myGraph"],
				from: {
					objType: {
						serviceTag: "deliveryMethodPickup",
						objectType: "deliveryMethodPickup"
					},
					linkType: "many",
				},
				to: {
					objType: {
						serviceTag: "deliveryMethodPickupTable",
						objectType: "deliveryMethodPickupTable"
					},
					linkType: "many",
					handler: true
				}
			},
		]
	}
}

Working documents

Delivery Method Pickup