1. Overview
The process-order-service contains a collection of RESTful service calls to retrieve various information relevant to manufacturing execution.
Descriptions of these functions can be found in the section headers for each collection of relevant resources.
2. Resources
2.1. Execution-path-controller
Execution Path Controller
2.1.1. Get paths
GET /api/paths
Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
lineIds |
Comma separated list of Production line ids |
string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< ExecutionPathExtendedResource > array |
400 |
Bad request |
No Content |
401 |
Unauthorized |
No Content |
403 |
Forbidden, Authenticated user is not known by MES |
No Content |
404 |
Not Found |
No Content |
2.1.2. Get a path
GET /api/paths/{pathId}
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Unauthorized |
No Content |
403 |
Forbidden, Authenticated user is not known by MES |
No Content |
404 |
Not Found |
2.1.3. Get product details for the path
GET /api/paths/{pathId}/products
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< PathProductInfo > array |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
2.1.4. Get Bom details for the path product
GET /api/paths/{pathId}/products/{productId}/boms
Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
pathId |
path id |
integer (int64) |
Path |
productId |
prod id |
integer (int64) |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< IdNameValue > array |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
2.2. Process-order-controller
Process Order Controller
2.2.1. Add a process order
POST /api/processOrders
Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
processOrderCreateDetails |
Body for creating process order |
Responses
HTTP Code | Description | Schema |
---|---|---|
201 |
Created |
|
400 |
Invalid data supplied. See message for details. |
No Content |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
409 |
Conflict |
No Content |
422 |
Unprocessable Entity |
|
500 |
Internal Server Error |
2.2.2. Get process orders
GET /api/processOrders
Parameters
Type | Name | Description | Schema | Default |
---|---|---|---|---|
Query |
endTime |
End time in ISO-8601 format (YYYY-MM-DDThh:mm:ssZ), in case of custom time selection. |
string (date-time) |
|
Query |
lineIds |
Comma separated list of Production line ids |
string |
|
Query |
page |
Page number to be retrieved (0..N) |
integer (int32) |
|
Query |
pathIds |
Comma separated list of path ids |
string |
|
Query |
size |
Number of records per page. |
integer (int32) |
|
Query |
sort |
Sorting criteria in the format: property(SortColumn,asc|desc). MultiColumn sort criteria is supported, Currently only supported sort by 2 specific columns in specific order, first with status + [For first column - STATUS no sort order(like asc or desc) should be specified, it will always be in following order Active,Next,Pending,Planning,Others]. and second with Sequence,ASC. Sequence,ASC is the execution order of Process_Orders |
< string > array(multi) |
|
Query |
startTime |
Start time in ISO-8601 format (YYYY-MM-DDThh:mm:ssZ), in case of custom time selection. |
string (date-time) |
|
Query |
statuses |
Comma separated list of statuses, Possible Status Values: ACTIVE,COMPLETE,CANCELLED,PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED |
string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
No Content |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
2.2.3. Get a process order
GET /api/processOrders/{orderId}
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
2.2.4. Update a process order
PUT /api/processOrders/{orderId}
Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
orderId |
Process order id to update |
integer (int64) |
Body |
processOrderUpdateDetails |
Body for updating process order |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Invalid data supplied. See message for details. |
No Content |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
|
409 |
Conflict |
No Content |
422 |
Unprocessable Entity |
2.2.5. Delete a process order
DELETE /api/processOrders/{orderId}
Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
orderId |
Process order id to be deleted |
integer (int64) |
Responses
HTTP Code | Description | Schema |
---|---|---|
204 |
No Content |
object |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
2.2.6. add process order StartOn unit
POST /api/processOrders/{orderId}/StartOnUnit
Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
orderId |
Process orderId which needs to be started on unit |
integer (int64) |
Body |
unit |
UnitId on which this Process order needs to be started, Id is the required field |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
2.2.7. get process order StartOn unit
GET /api/processOrders/{orderId}/StartOnUnit
Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
orderId |
Process orderId which needs to be started on unit |
integer (int64) |
Query |
orderStartId |
Process Order startId |
integer (int64) |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
2.2.8. Get a process order’s history
GET /api/processOrders/{orderId}/history
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< ProcessOrderHistory > array |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
2.2.9. Get materials for the process order
GET /api/processOrders/{orderId}/materials
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< MaterialInfo > array |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
2.2.10. Get next available units for the process order, Will be applicable for those process orders whose flow is controlled independently
GET /api/processOrders/{orderId}/nextAvailableUnits
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< IdNameValue > array |
401 |
Unauthorized |
No Content |
403 |
Forbidden |
|
404 |
Not Found |
3. Definitions
3.2. ExecutionPathExtendedResource
Name | Description | Schema |
---|---|---|
code |
Customer Code for the path |
string |
commentsThreadId |
The Comments Thread Id of the path record. Points to a chain of comments. |
integer (int64) |
description |
Path Description |
string |
isLineProduction |
Production on this path should count towards line production |
boolean |
isScheduleControlled |
The execution path is controlled by a schedule |
boolean |
lineId |
The production line id of this path |
integer (int64) |
links |
< Link > array |
|
pathId |
Unique Id of the path record |
integer (int64) |
pathUnits |
The pathUnits associated with this path |
< ExecutionPathUnitInfo > array |
permissions |
< Permission > array |
|
scheduleControlType |
The schedule control type setting |
enum (AllUnitsRunSameScheduleSimultaneously, ScheduleFlowsByEvent, ScheduleFlowsIndependently) |
3.3. ExecutionPathUnitInfo
Name | Description | Schema |
---|---|---|
executionPathUnitId |
Unique Id of the Execution Path Unit record |
integer (int64) |
isProductionPoint |
Is this unit the production counting unit of the path |
boolean |
isSchedulePoint |
Is this unit the scheduling unit of the path |
boolean |
pathId |
The Path Id of the path this unit is a member of |
integer (int64) |
unitId |
The production unit id |
integer (int64) |
unitOrder |
The execution order of this unit in the path |
integer (int32) |
3.5. IdNameValue
Name | Description | Schema |
---|---|---|
id |
The unique ID of the entity |
integer (int64) |
name |
The name of the entity |
string |
3.7. MaterialInfo
Name | Schema |
---|---|
actualQuantity |
number (double) |
actualQuantityColorFlag |
integer (int32) |
bOMFormulationId |
integer (int64) |
bOMFormulationItemId |
integer (int64) |
backColor |
integer (int64) |
colorFlag |
integer (int64) |
engineeringUnits |
string |
itemOrder |
integer (int32) |
location |
string |
lotNumber |
string |
lowerReject |
number (double) |
lowerTolerancePrecision |
integer (int32) |
pUId |
integer (int64) |
prodCode |
string |
prodDesc |
string |
prodId |
integer (int64) |
quantityPer |
number (double) |
quantityPrecision |
integer (int32) |
remainingQuantity |
number (double) |
requiredQuantity |
number (double) |
scrapFactor |
number (double) |
substitutions |
integer (int64) |
upperReject |
number (double) |
upperTolerancePrecision |
integer (int32) |
useEventComponents |
integer (int32) |
3.8. PageMetadata
Name | Schema |
---|---|
number |
integer (int64) |
size |
integer (int64) |
totalElements |
integer (int64) |
totalPages |
integer (int64) |
3.9. PathProductInfo
Name | Description | Schema |
---|---|---|
productCode |
Descriptive Name of Product record |
string |
productDescription |
Code Name of Product record |
string |
productId |
Unique Id of the Product record record |
integer (int64) |
3.11. ProcessOrder
Name | Description | Schema |
---|---|---|
actualBadItems |
actual Bad Items of product this process order has produced |
integer (int64) |
actualBadQuantity |
actual Bad Quantity of product this process order has produced |
number (double) |
actualDownTime |
Downtime while this PO is active |
number (double) |
actualEndTime |
Actual endTime for this PO |
string (date-time) |
actualGoodItems |
actual good Items of product this process order has produced |
integer (int64) |
actualGoodQuantity |
actual good Quantity of product this process order has produced |
number (double) |
actualRepetitions |
actualRepetitions |
integer (int64) |
actualRunningTime |
Time for which this process order has ran |
number (double) |
actualStartTime |
Actual startTime for this PO |
string (date-time) |
adjustedQuantity |
Adjusted quantity of product for this process order |
number (double) |
alarmCount |
alarms raised on this PO |
integer (int64) |
allowedStatusTransition |
Allowed state changes from the current status of this process order |
< enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED) > array |
blockNumber |
blockNumber |
string |
bomFormulation |
Specifies the BOM Formulation for the process order |
|
commentsThreadId |
The Comments Thread Id of the process order record. Points to a chain of comments. |
integer (int64) |
controlType |
Specifies the control type of the process order |
enum (QUANTITY, DURATION, TIME) |
engineeringUnit |
engineeringUnit |
string |
extendedInfo |
extendedInfo |
string |
impliedSequence |
Execution sequence is normally by planned start, but this can override the sequence |
integer (int64) |
impliedSequenceOffset |
impliedSequenceOffset |
integer (int64) |
lateItems |
lateItems |
integer (int64) |
line |
The line associated with process order |
|
links |
< Link > array |
|
orderType |
Specifies the type of the order (Production Plan Type) |
enum (SCHEDULE, REWORK) |
parentProductionPlanId |
Id for this process order’s parent process order if any |
integer (int64) |
participatingUnits |
Information regarding the PO start and end on involved units. Will be used for process orders whose flow is [Schedule Flows independently] |
< ProcessOrderUnitStartInfo > array |
path |
The Path this process order uses |
|
plannedEndTime |
The planned time to finish the order, corresponds to the forecastedEndTime in db |
string (date-time) |
plannedQuantity |
Quantity of product this process order is requesting, corresponds to the forecastedQuantity in db |
number (double) |
plannedStartTime |
The planned time to start the order, corresponds to the forecastedStartTime in db |
string (date-time) |
predictedRemainingDuration |
predictedRemainingDuration for this process order |
number (double) |
predictedRemainingQuantity |
predictedRemainingQuantity of product for this process order |
number (double) |
predictedTotalDuration |
predictedTotalDuration for this process order |
number (double) |
processOrder |
Descriptive Name of the process order |
string |
processOrderId |
Unique Id of the process order record |
integer (int64) |
product |
the product this process order is requesting |
|
productionRate |
Production rate of this product |
number (double) |
schedulePointUnit |
The unit associated with process order |
|
sourceProductionPlanId |
Id for this process order’s source process order if any |
integer (int64) |
status |
The status of the process order |
enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED) |
userGeneral1 |
userGeneral1 |
string |
userGeneral2 |
userGeneral2 |
string |
userGeneral3 |
userGeneral3 |
string |
3.12. ProcessOrderCreateDetails
Name | Description | Schema |
---|---|---|
blockNumber |
string |
|
bomFormulationId |
integer (int64) |
|
commentId |
integer (int64) |
|
controlType |
enum (QUANTITY, DURATION, TIME) |
|
extendedInfo |
string |
|
pathId |
integer (int64) |
|
plannedEndTime |
string (date-time) |
|
plannedStartTime |
string (date-time) |
|
processOrderName |
string |
|
processOrderPriority |
Will be used to reorder process orders, In PO update. Only +1/-1 values allowed for now |
integer (int32) |
processOrderType |
Can be of two types only, Schedule Type and rework type. Rework is not supported yet. |
enum (SCHEDULE, REWORK) |
prodId |
integer (int64) |
|
productionRate |
number (double) |
|
quantity |
number (double) |
|
status |
Use this for updating Process Order status, will be ignored while creation of process order. |
enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED) |
userGeneral1 |
string |
|
userGeneral2 |
string |
|
userGeneral3 |
string |
3.13. ProcessOrderHistory
Name | Description | Schema |
---|---|---|
actualBadItems |
integer (int64) |
|
actualBadQuantity |
actual Bad Quantity of product this process order has produced |
number (double) |
actualDowntime |
number (double) |
|
actualEndTime |
string (date-time) |
|
actualGoodItems |
integer (int64) |
|
actualGoodQuantity |
actual good Quantity of product this process order has produced |
number (double) |
actualRepetitions |
integer (int64) |
|
actualRunningTime |
number (double) |
|
actualStartTime |
string (date-time) |
|
adjustedQuantity |
Actual quantity of product this process order has produced |
number (double) |
alarmCount |
integer (int64) |
|
blockNumber |
string |
|
bomFormulation |
||
changeTime |
string (date-time) |
|
controlType |
enum (QUANTITY, DURATION, TIME) |
|
extendedInfo |
string |
|
forecastEndDate |
string (date-time) |
|
forecastQuantity |
forecast Quantity of product for this process order |
number (double) |
forecastStartDate |
string (date-time) |
|
impliedSequence |
integer (int64) |
|
lateItems |
integer (int64) |
|
path |
||
plannedQuantity |
Quantity of product this process order is requesting |
number (double) |
predictedRemainingDuration |
number (double) |
|
predictedRemainingQuantity |
predictedRemainingQuantity of product for this process order |
number (double) |
predictedTotalDuration |
number (double) |
|
processOrder |
string |
|
processOrderId |
integer (int64) |
|
processOrderType |
enum (SCHEDULE, REWORK) |
|
product |
||
productionRate |
number (double) |
|
sourceProcessOrder |
||
status |
enum (ACTIVE, COMPLETE, CANCELLED, PENDING, PLANNING, ERROR, LOCKED, NEXT, OVERPRODUCED, UNDERPRODUCED) |
|
transactionType |
enum (Insert, Update, Delete) |
|
user |
string |
|
userGeneral1 |
string |
|
userGeneral2 |
string |
|
userGeneral3 |
string |
3.14. ProcessOrderPage
Name | Schema |
---|---|
content |
< ProcessOrder > array |
links |
< Link > array |
page |
3.15. ProcessOrderUnitStartInfo
Name | Description | Schema |
---|---|---|
endTime |
PO end time on this unit |
string (date-time) |
isProductionPoint |
boolean |
|
processOrderId |
integer (int64) |
|
processOrderUnitStartId |
integer (int64) |
|
productionPlanSetupId |
Production plan setup id for this record |
integer (int64) |
startTime |
PO start time on this unit |
string (date-time) |
unit |
3.16. ProcessOrderUnitStartInfoResource
Name | Description | Schema |
---|---|---|
endTime |
PO end time on this unit |
string (date-time) |
isProductionPoint |
boolean |
|
links |
< Link > array |
|
processOrderId |
integer (int64) |
|
processOrderUnitStartId |
integer (int64) |
|
productionPlanSetupId |
Production plan setup id for this record |
integer (int64) |
startTime |
PO start time on this unit |
string (date-time) |
unit |
3.17. ProcessOrderUnitStartInfoResources
Name | Schema |
---|---|
content |
< ProcessOrderUnitStartInfo > array |
links |
< Link > array |
4. Security
4.1. access_token
Type : oauth2
Flow : accessCode
Token URL : https://localhost:8443/uaa/oauth/authorize
Token URL : https://localhost:8443/uaa/oauth/token
Name | Description |
---|---|
default |
Default oauth2 scope. |
4.2. resource_owner
Type : oauth2
Flow : password
Token URL : https://localhost:8443/uaa/oauth/token
Name | Description |
---|---|
default |
Default oauth2 scope. |
4.3. implicit_grant
Type : oauth2
Flow : implicit
Token URL : https://localhost:8443/uaa/oauth/authorize
Name | Description |
---|---|
default |
Default oauth2 scope. |
4.4. client_creds
Type : oauth2
Flow : application
Token URL : https://localhost:8443/uaa/oauth/token
Name | Description |
---|---|
default |
Default oauth2 scope. |