Service - Manufacture Operation

From Izara Wiki
Jump to navigation Jump to search

Overview

A Manufacture Operation is one manufacturing job that can have multiple work in progress details attached to it.

Repository

...

Object Schemas

Additional Information
Per Service Schemas

manufactureOperation

{
	objectType: "manufactureOperation",
	canDelete: false,
	belongTo: {
		serviceTag: "Business",
		objectType: "business"
	},
	addOnDataStructure: [
		{
			type:"versionedData",
			versionedDataLabel: "manufactureOperationDetail",
			storageResourceTag : "myGraph",
			fieldNames: {
				manufactureOperationUserTag: {
					type: "string",
					storageResourceTags: ['myGraph']
				},
			}
        },	
	],
	storageResources: {
		myGraph: {
			storageType: "graph",
			graphServerTag: "GraphHandler"
		},
		"dynamo": {
			"storageType": "dynamoDB",
			"tableName": "manufactureOperation",
		}  
	},
	fieldNames: {
		manufactureOperationId: {
			type: "string",
			randomOnCreate: true,
			storageResourceTags: ['myGraph']
		},
		status: { // "inProgress"|"processing"|"complete"
			type: "string",
			storageResourceTags: ['dynamo']
		},
	},
	identifiers: [
		{
			type: "identifier",
			fieldName: "manufactureOperationId"
		}
	]
}

Relationships

hasWorkInProgress

{
	hasWorkInProgress: {
		canChangeToRelTypes: [
			{
				serviceTag:"ManufactureOperation",
				relationshipTag: "removedWorkInProgress"
			},
		],
		storageResources: {
			myGraph: {
				storageType: "graph",
				graphServerTag: "GraphHandler"			
			}
		},
		links: [
			{
				storageResourceTags: ["myGraph"],
				from: {
					objType: {
						serviceTag: "ManufactureOperation",
						objectType: "manufactureOperation"
					},
					linkType: "one",
				},
				to: {
					objType: {
						serviceTag: "WorkInProgressManager",
						objectType: "workInProgress"
					},
					requiredOnCreate: true,
					linkType: "many"
				}
			},
		]
	}
}

removedWorkInProgress

{
	removedWorkInProgress: {
		canChangeToRelTypes: [
			{
				serviceTag:"ManufactureOperation",
				relationshipTag: "hasWorkInProgress"
			},
		],
		storageResources: {
			myGraph: {
				storageType: "graph",
				graphServerTag: "GraphHandler"			
			}
		},
		links: [
			{
				storageResourceTags: ["myGraph"],
				from: {
					objType: {
						serviceTag: "ManufactureOperation",
						objectType: "manufactureOperation"
					},
					linkType: "one",
				},
				to: {
					objType: {
						serviceTag: "WorkInProgressManager",
						objectType: "workInProgress"
					},
					linkType: "many"
				}
			},
		]
	}
}

flowSchemas

completeManufactureOperation

  • sets status to processing which locks adding or removing workInProgress links until completed

reopenManufactureOperation

  • changes a ManufactureOperation from complete to inProgress
  • if comAcc plugin connected needs to check Accounting entries not locked before proceeding

Working documents

Manufacture Operation