51 lines
1.6 KiB
JSON
51 lines
1.6 KiB
JSON
{
|
||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||
"$id": "aps://shared/scheduling_solution",
|
||
"title": "SchedulingSolution",
|
||
"description": "中性排产解 DTO:外部算法 skill 出参,适配器写回 world。",
|
||
"type": "object",
|
||
"required": ["problemId", "runId", "operations"],
|
||
"properties": {
|
||
"schemaVersion": { "type": "string", "default": "1.1", "description": "契约版本(M-D 契约版本化)" },
|
||
"problemId": { "type": "string" },
|
||
"runId": { "type": "string" },
|
||
"skillId": { "type": "string" },
|
||
"status": {
|
||
"type": "string",
|
||
"enum": ["OPTIMAL", "FEASIBLE", "INFEASIBLE"],
|
||
"default": "FEASIBLE"
|
||
},
|
||
"operations": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "object",
|
||
"required": ["orderId", "seq", "operationCode", "resourceCode", "start", "end"],
|
||
"properties": {
|
||
"orderId": { "type": "string" },
|
||
"seq": { "type": "integer" },
|
||
"operationCode": { "type": "string" },
|
||
"operationName": { "type": "string" },
|
||
"resourceCode": { "type": "string" },
|
||
"start": { "type": "string" },
|
||
"end": { "type": "string" },
|
||
"runMin": { "type": "number", "default": 0 }
|
||
}
|
||
}
|
||
},
|
||
"conflicts": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "object",
|
||
"properties": {
|
||
"type": { "type": "string" },
|
||
"orderId": { "type": ["string", "null"] },
|
||
"description": { "type": "string" },
|
||
"severity": { "type": "string" }
|
||
}
|
||
}
|
||
},
|
||
"kpi": { "type": "object" },
|
||
"solverMeta": { "type": "object" }
|
||
}
|
||
}
|