Service - Delivery Method Pickup Table: Difference between revisions
Jump to navigation
Jump to search
(Created page with "= Overview = Handler service for pickup location tables, works similar to rateTable, the same values can be used to calculate value for price ladder, each pickupTable instance has a list of locationIds which is where the order can be picked up from. This allows a seller with multiple branches to charge delivery fee depending on which branch the order gets picked up from. When doing deepPath search for matching locationIds use the buyer supplied locationIds to find all...") |
No edit summary |
||
| (5 intermediate revisions by 2 users not shown) | |||
| Line 9: | Line 9: | ||
= Repository = | = Repository = | ||
https://bitbucket.org/izara-market- | https://bitbucket.org/izara-market-services/izara-market-products-delivery-method-pickup-table | ||
= Object Schemas = | = Schemas = | ||
== Object Schemas == | |||
=== deliveryMethodPickupTable === | |||
<syntaxhighlight lang="JavaScript"> | |||
{ | |||
"objectType": "deliveryMethodPickupTable", | |||
"canDelete": false, | |||
"storageResources": { | |||
"graph": { | |||
"storageType": "graph", | |||
"graphServerTag": "GraphHandler" | |||
} | |||
}, | |||
"fieldNames": { | |||
"pickupTableId": { | |||
"type": "string", | |||
"randomOnCreate": true, | |||
"optionalOnCreate": false, | |||
"requiredOnCreate": false, | |||
"canUpdate": false, | |||
"validation": { | |||
"pattern": { | |||
"type": "string", | |||
"pattern": "^[a-zA-Z0-9_-]+$", | |||
"minLength": 1 | |||
} | |||
}, | |||
"storageResourceTags": [ | |||
"graph" | |||
] | |||
} | |||
}, | |||
"identifiers": [ | |||
{ | |||
"type": "identifier", | |||
"fieldName": "pickupTableId" | |||
} | |||
], | |||
"generatedBy": "userGenerated", | |||
"compositeKeyDeliminator": "_" | |||
} | |||
</syntaxhighlight> | |||
; Additional Information: [[Per Service Schemas]] | ; Additional Information: [[Per Service Schemas]] | ||
== Object Relationships == | == Object Relationships == | ||
| Line 30: | Line 67: | ||
canChangeToRelTypes: [ | canChangeToRelTypes: [ | ||
{ | { | ||
serviceTag:" | serviceTag:"deliveryMethodPickupTable", | ||
relationshipTag: "disabledAtLocation" | relationshipTag: "disabledAtLocation" | ||
}, | }, | ||
| Line 37: | Line 74: | ||
myGraph: { | myGraph: { | ||
storageType: "graph", | storageType: "graph", | ||
graphServerTag: "graphHandler" | graphServerTag: "graphHandler" | ||
} | } | ||
}, | }, | ||
| Line 45: | Line 82: | ||
from: { | from: { | ||
objType: { | objType: { | ||
serviceTag: " | serviceTag: "deliveryMethodPickupTable", | ||
objectType: " | objectType: "deliveryMethodPickupTable" | ||
}, | }, | ||
linkType: "many", | linkType: "many", | ||
| Line 52: | Line 89: | ||
to: { | to: { | ||
objType: { | objType: { | ||
serviceTag: " | serviceTag: "locations", | ||
objectType: " | objectType: "location" | ||
}, | }, | ||
linkType: "many", | linkType: "many", | ||
handler: true | handler: true | ||
| Line 63: | Line 100: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== disabledAtLocation === | === disabledAtLocation === | ||
<syntaxhighlight lang="JavaScript"> | <syntaxhighlight lang="JavaScript"> | ||
| Line 70: | Line 106: | ||
canChangeToRelTypes: [ | canChangeToRelTypes: [ | ||
{ | { | ||
serviceTag:" | serviceTag:"deliveryMethodPickupTable", | ||
relationshipTag: "atLocation" | relationshipTag: "atLocation" | ||
}, | }, | ||
| Line 77: | Line 113: | ||
myGraph: { | myGraph: { | ||
storageType: "graph", | storageType: "graph", | ||
graphServerTag: "graphHandler" | graphServerTag: "graphHandler" | ||
} | } | ||
}, | }, | ||
| Line 85: | Line 121: | ||
from: { | from: { | ||
objType: { | objType: { | ||
serviceTag: " | serviceTag: "deliveryMethodPickupTable", | ||
objectType: " | objectType: "deliveryMethodPickupTable" | ||
}, | }, | ||
linkType: "many", | linkType: "many", | ||
| Line 92: | Line 128: | ||
to: { | to: { | ||
objType: { | objType: { | ||
serviceTag: " | serviceTag: "locations", | ||
objectType: " | objectType: "location" | ||
}, | }, | ||
linkType: "many", | linkType: "many", | ||
handler: true | handler: true | ||
Latest revision as of 09:45, 6 January 2026
Overview
Handler service for pickup location tables, works similar to rateTable, the same values can be used to calculate value for price ladder, each pickupTable instance has a list of locationIds which is where the order can be picked up from.
This allows a seller with multiple branches to charge delivery fee depending on which branch the order gets picked up from.
When doing deepPath search for matching locationIds use the buyer supplied locationIds to find all children locationIds to find matching pickupLocation tables.
Repository
https://bitbucket.org/izara-market-services/izara-market-products-delivery-method-pickup-table
Schemas
Object Schemas
deliveryMethodPickupTable
{
"objectType": "deliveryMethodPickupTable",
"canDelete": false,
"storageResources": {
"graph": {
"storageType": "graph",
"graphServerTag": "GraphHandler"
}
},
"fieldNames": {
"pickupTableId": {
"type": "string",
"randomOnCreate": true,
"optionalOnCreate": false,
"requiredOnCreate": false,
"canUpdate": false,
"validation": {
"pattern": {
"type": "string",
"pattern": "^[a-zA-Z0-9_-]+$",
"minLength": 1
}
},
"storageResourceTags": [
"graph"
]
}
},
"identifiers": [
{
"type": "identifier",
"fieldName": "pickupTableId"
}
],
"generatedBy": "userGenerated",
"compositeKeyDeliminator": "_"
}
- Additional Information
- Per Service Schemas
Object Relationships
atLocation
{
"atLocation": {
canChangeToRelTypes: [
{
serviceTag:"deliveryMethodPickupTable",
relationshipTag: "disabledAtLocation"
},
],
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "graphHandler"
}
},
links: [
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "deliveryMethodPickupTable",
objectType: "deliveryMethodPickupTable"
},
linkType: "many",
},
to: {
objType: {
serviceTag: "locations",
objectType: "location"
},
linkType: "many",
handler: true
}
},
]
}
}
disabledAtLocation
{
"disabledAtLocation": {
canChangeToRelTypes: [
{
serviceTag:"deliveryMethodPickupTable",
relationshipTag: "atLocation"
},
],
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "graphHandler"
}
},
links: [
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "deliveryMethodPickupTable",
objectType: "deliveryMethodPickupTable"
},
linkType: "many",
},
to: {
objType: {
serviceTag: "locations",
objectType: "location"
},
linkType: "many",
handler: true
}
},
]
}
}