From f5c300344c7718707e65244396ee06fbd1b335a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20K=C3=BCrten?= Date: Thu, 11 Jun 2026 13:25:13 +0200 Subject: [PATCH 1/2] feat: Add Maturity Level and associated fields to ObjectType and Material --- csfunctions/objects/base.py | 2 ++ csfunctions/objects/part.py | 13 +++++++++++++ json_schemas/request.json | 13 +++++++++++++ 3 files changed, 28 insertions(+) diff --git a/csfunctions/objects/base.py b/csfunctions/objects/base.py index ceb7eb1..543a7a9 100644 --- a/csfunctions/objects/base.py +++ b/csfunctions/objects/base.py @@ -20,6 +20,8 @@ class ObjectType(str, Enum): WORKFLOW = "workflow" BRIEFCASE = "briefcase" PERSON = "person" + MATURITY_LEVEL = "maturity_level" + MATURITY_MODEL = "maturity_model" class BaseObject(BaseModel): diff --git a/csfunctions/objects/part.py b/csfunctions/objects/part.py index 70946ec..5ed1081 100644 --- a/csfunctions/objects/part.py +++ b/csfunctions/objects/part.py @@ -75,6 +75,8 @@ class Part(BaseObject): gebrauchsstand: str | None = Field(None, description="Usability") st_breite: float | None = Field(None, description="Width") + cssaas_maturity_level: str | None = Field(None, description="Maturity Level cdb_object_id") + # Custom Char Fields cca_char_1: str | None = Field(None, description="Custom Char Field") cca_char_2: str | None = Field(None, description="Custom Char Field") @@ -237,6 +239,17 @@ class Material(BaseObject): status: int = Field(..., description="Status Number") +class MaturityLevel(BaseObject): + object_type: Literal[ObjectType.MATURITY_LEVEL] = ObjectType.MATURITY_LEVEL + + cdb_object_id: str | None = Field(None, description="Object ID") + id: int | None = Field(None, description="Maturity Level") + name_de: str | None = Field(None, description="Name DE") + name_en: str | None = Field(None, description="Name EN") + obsolete: bool | None = Field(None, description="Obsolete Flag") + template_workflow_object_id: str | None = Field(None, description="Template Workflow Object ID") + + class BOMItem(BaseObject): object_type: Literal[ObjectType.BOM_ITEM] = ObjectType.BOM_ITEM diff --git a/json_schemas/request.json b/json_schemas/request.json index bc3d6e1..e779866 100644 --- a/json_schemas/request.json +++ b/json_schemas/request.json @@ -7806,6 +7806,19 @@ "description": "Width", "title": "St Breite" }, + "cssaas_maturity_level": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Maturity Level cdb_object_id", + "title": "Cssaas Maturity Level" + }, "cca_char_1": { "anyOf": [ { From 1716bd667dc10c3d813f090e3e163c68d8e1486e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20K=C3=BCrten?= Date: Thu, 11 Jun 2026 13:26:10 +0200 Subject: [PATCH 2/2] update docs --- csfunctions/objects/__init__.py | 3 ++- docs/reference/objects.md | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/csfunctions/objects/__init__.py b/csfunctions/objects/__init__.py index d1222de..f106dbb 100644 --- a/csfunctions/objects/__init__.py +++ b/csfunctions/objects/__init__.py @@ -8,7 +8,7 @@ from .document import CADDocument, Document from .engineering_change import EngineeringChange from .file import File -from .part import BOMItem, Material, Part +from .part import BOMItem, Material, MaturityLevel, Part from .person import Person from .workflow import Workflow @@ -41,4 +41,5 @@ "Workflow", "BaseObject", "Person", + "MaturityLevel", ] diff --git a/docs/reference/objects.md b/docs/reference/objects.md index 20ab890..71084b1 100644 --- a/docs/reference/objects.md +++ b/docs/reference/objects.md @@ -4,6 +4,7 @@ |Attribute|Type|Description| |-|-|-| +|cdb_object_id|str \| None|Object ID| |baugruppe|str \| None|Assembly| |b_index|str \| None|Assembly Index| |component_materialnr_erp|str \| None|Material Number ERP Component| @@ -518,6 +519,23 @@ Normal Document that doesn't contain a CAD-Model. |short_name|str \| None|Short Name| |application|str \| None|Applications| |remark|str \| None|Remarks| +|cdb_cpersno|str \| None|Created by| +|cdb_cdate|datetime \| None|Created on| +|cdb_mpersno|str \| None|Last Modified by| +|cdb_mdate|datetime \| None|Last Modified on| +|status|int|Status Number| + +## MaturityLevel +`csfunctions.objects.MaturityLevel` + +|Attribute|Type|Description| +|-|-|-| +|cdb_object_id|str \| None|Object ID| +|id|int \| None|Maturity Level| +|name_de|str \| None|Name DE| +|name_en|str \| None|Name EN| +|obsolete|bool \| None|Obsolete Flag| +|template_workflow_object_id|str \| None|Template Workflow Object ID| ## ObjectPropertyValue `csfunctions.objects.ObjectPropertyValue` @@ -603,6 +621,7 @@ An objects property, used by classification. |mengeneinheit|str \| None|Unit of Measure| |gebrauchsstand|str \| None|Usability| |st_breite|float \| None|Width| +|cssaas_maturity_level|str \| None|Maturity Level cdb_object_id| |cca_char_1|str \| None|Custom Char Field| |cca_char_2|str \| None|Custom Char Field| |cca_char_3|str \| None|Custom Char Field|