Service - Inventory Manager: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
= Overview = | = Overview = | ||
Each inventory is handled by a [[Service - Inventory (handlers)]] service. | Each inventory type is handled by a [[Service - Inventory (handlers)]] service. | ||
The specific identification method is used for accounting and tracking individual units of inventory, this applies COGS individually to each unit and allows for transparent supply chain at a per unit level. | |||
The Inventory Manager service handles detail shared by all Inventory Handler services. | The Inventory Manager service handles detail shared by all Inventory Handler services. | ||
| Line 51: | Line 53: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
* Describes an inventory descriptor, or SKU, interchangeable units (fungible) are classified under the same inventory instance | |||
=== inventoryUnit === | |||
<syntaxhighlight lang="JavaScript"> | |||
{ | |||
objectType: "inventoryUnit", | |||
canDelete: false, | |||
belongTo: { | |||
serviceTag: "user", | |||
objectType: "user" | |||
}, | |||
addOnDataStructure: [], | |||
storageResources: { | |||
myGraph: { | |||
storageType: "graph", | |||
graphServerTag: "GraphHandler" | |||
} | |||
}, | |||
fieldNames: { | |||
inventoryUnitId: { | |||
type: "string", | |||
randomOnCreate: true, | |||
storageResourceTags: ['myGraph'] | |||
}, | |||
cost: { // sums all costs, or COGS for the unit | |||
type: "numeric", | |||
storageResourceTags: ['myGraph'] | |||
}, | |||
}, | |||
identifiers: [ | |||
{ | |||
type: "identifier", | |||
fieldName: "inventoryUnitId" | |||
} | |||
] | |||
} | |||
</syntaxhighlight> | |||
* A single unit of inventory | |||
== Object Relationships == | == Object Relationships == | ||
| Line 79: | Line 122: | ||
serviceTag: "inventoryTemplate", | serviceTag: "inventoryTemplate", | ||
objectType: "inventoryTemplate" | objectType: "inventoryTemplate" | ||
}, | |||
linkType: "one" | |||
} | |||
} | |||
] | |||
} | |||
} | |||
</syntaxhighlight> | |||
=== isInventoryTemplate === | |||
<syntaxhighlight lang="JavaScript"> | |||
{ | |||
isInventory: { | |||
storageResources: { | |||
myGraph: { | |||
storageType: "graph", | |||
graphServerTag: "GraphHandler" | |||
} | |||
}, | |||
links: [ | |||
{ | |||
storageResourceTags: ["myGraph"], | |||
from: { | |||
objType: { | |||
serviceTag: "inventoryManager", | |||
objectType: "inventoryUnit" | |||
}, | |||
linkType: "many", | |||
}, | |||
to: { | |||
objType: { | |||
serviceTag: "inventoryManager", | |||
objectType: "inventory" | |||
}, | }, | ||
linkType: "one" | linkType: "one" | ||
Revision as of 10:29, 2 January 2026
Overview
Each inventory type is handled by a Service - Inventory (handlers) service.
The specific identification method is used for accounting and tracking individual units of inventory, this applies COGS individually to each unit and allows for transparent supply chain at a per unit level.
The Inventory Manager service handles detail shared by all Inventory Handler services.
Repository
....
Object Schemas
- Additional Information
- Per Service Schemas
objType
inventory
{
objectType: "inventory",
canDelete: false,
belongTo: {
serviceTag: "user",
objectType: "user"
},
addOnDataStructure: [
{
type: "attributeTree",
attributeTreeTag: "inventoryAttributes"
},
],
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
fieldNames: {
inventoryId: {
type: "string",
randomOnCreate: true,
storageResourceTags: ['myGraph']
},
},
identifiers: [
{
type: "identifier",
fieldName: "inventoryId"
}
]
}
- Describes an inventory descriptor, or SKU, interchangeable units (fungible) are classified under the same inventory instance
inventoryUnit
{
objectType: "inventoryUnit",
canDelete: false,
belongTo: {
serviceTag: "user",
objectType: "user"
},
addOnDataStructure: [],
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
fieldNames: {
inventoryUnitId: {
type: "string",
randomOnCreate: true,
storageResourceTags: ['myGraph']
},
cost: { // sums all costs, or COGS for the unit
type: "numeric",
storageResourceTags: ['myGraph']
},
},
identifiers: [
{
type: "identifier",
fieldName: "inventoryUnitId"
}
]
}
- A single unit of inventory
Object Relationships
isInventoryTemplate
{
isInventoryTemplate: {
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
links: [
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "inventoryManager",
objectType: "inventory"
},
linkType: "many",
},
to: {
objType: {
serviceTag: "inventoryTemplate",
objectType: "inventoryTemplate"
},
linkType: "one"
}
}
]
}
}
isInventoryTemplate
{
isInventory: {
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
links: [
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "inventoryManager",
objectType: "inventoryUnit"
},
linkType: "many",
},
to: {
objType: {
serviceTag: "inventoryManager",
objectType: "inventory"
},
linkType: "one"
}
}
]
}
}
Media
- all inventory instances link to Media