design_engineering modülü inceleme yaşam döngüsü ve dosyalarıyla tasarımları ve mühendislik değişiklik notlarını (ECN) sunar. 20 uç noktanın tamamı /api/v1/design_engineering altındadır. İş anlamı için Design engineering modülü sayfasına bakın.
Grup olguları¶
| Öğe | Değer | Kaynak |
|---|---|---|
| Temel yol | /api/v1/design_engineering |
src/cluster_erp/core/module_base.py:37-38, src/cluster_erp/modules/design_engineering/module.py:43 |
| Yönlendiriciler | 2 dosyada 2 yönlendirici nesnesi; Uç nokta özeti bölümünde listelenir | src/cluster_erp/modules/design_engineering/module.py:32 |
| Uç noktalar | 20; register_routes ile bağlanan yönlendiricilerin yol dekoratörleri ve add_api_route çağrılarından sayıldı |
src/cluster_erp/modules/design_engineering/designs/routes.py, src/cluster_erp/modules/design_engineering/ecns/routes.py |
| Kimlik doğrulama | Bearer başlığı veya oturum çerezi, get_current_user ile çözülür; bkz. Kimlik doğrulama ve başlıklar |
src/cluster_erp/modules/auth/guards.py:85-167 |
| Yetki koruması | 20 yolun 20 tanesi require_permission bildirir |
src/cluster_erp/modules/auth/guards.py:205-240 |
| Uygulama yetkilendirme kapısı | bağlanan her yönlendiricide require_app("design_engineering") |
src/cluster_erp/modules/design_engineering/module.py:47 |
| Hata biçimi | JSON gövdesi {"error": {...}}; bkz. Hatalar |
src/cluster_erp/server/error_handler.py:33-46 |
Uç nokta özeti¶
Alt modül klasörü başına bir satır. Yönlendirici öneki temel yola eklenir.
| Alt modül | Yönlendiriciler | Uç noktalar | Yönlendirici kaynağı |
|---|---|---|---|
designs |
router (/designs) |
11 | src/cluster_erp/modules/design_engineering/designs/routes.py:31 |
ecns |
router (/ecns) |
9 | src/cluster_erp/modules/design_engineering/ecns/routes.py:30 |
Tasarımlar uç noktaları¶
Tasarım kayıtları, incelemeye gönderme, onaylama, reddetme, dosyalar ve bir tasarımın ECN kayıtları.
| Yöntem | Yol | İşleyici | Yetki | İstek | Sorgu | Yanıt | Durum | Kaynak |
|---|---|---|---|---|---|---|---|---|
GET |
/api/v1/design_engineering/designs/ |
list_designs |
design.read |
yok | search, status, project_id, design_type, limit, offset |
dict |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:43 |
GET |
/api/v1/design_engineering/designs/{design_id} |
get_design |
design.read |
yok | yok | DesignRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:79 |
POST |
/api/v1/design_engineering/designs/ |
create_design |
design.create |
DesignCreate |
yok | DesignRead |
201 |
src/cluster_erp/modules/design_engineering/designs/routes.py:93 |
PUT |
/api/v1/design_engineering/designs/{design_id} |
update_design |
design.create |
DesignUpdate |
yok | DesignRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:105 |
DELETE |
/api/v1/design_engineering/designs/{design_id} |
delete_design |
design.create |
yok | yok | yok | 204 |
src/cluster_erp/modules/design_engineering/designs/routes.py:120 |
POST |
/api/v1/design_engineering/designs/bulk-delete |
bulk_delete_designs |
design.create |
BulkDeleteRequest |
yok | BulkDeleteResponse |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:132 |
POST |
/api/v1/design_engineering/designs/{design_id}/submit-review |
submit_review |
design.create |
yok | yok | DesignRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:144 |
POST |
/api/v1/design_engineering/designs/{design_id}/approve |
approve_design |
design.approve |
yok | yok | DesignRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:156 |
POST |
/api/v1/design_engineering/designs/{design_id}/reject |
reject_design |
design.approve |
yok | yok | DesignRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:168 |
GET |
/api/v1/design_engineering/designs/{design_id}/files |
get_design_files |
design.read |
yok | yok | dict |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:180 |
GET |
/api/v1/design_engineering/designs/{design_id}/ecns |
list_design_ecns |
design.read |
yok | limit, offset |
dict |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/designs/routes.py:191 |
Mühendislik değişiklik notları uç noktaları¶
ECN kayıtları, onaylama, reddetme ve uygulama.
| Yöntem | Yol | İşleyici | Yetki | İstek | Sorgu | Yanıt | Durum | Kaynak |
|---|---|---|---|---|---|---|---|---|
GET |
/api/v1/design_engineering/ecns/ |
list_ecns |
design.read |
yok | search, status, design_id, limit, offset |
dict |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/ecns/routes.py:42 |
GET |
/api/v1/design_engineering/ecns/{ecn_id} |
get_ecn |
design.read |
yok | yok | EcnRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/ecns/routes.py:76 |
POST |
/api/v1/design_engineering/ecns/ |
create_ecn |
ecn.propose |
EcnCreate |
yok | EcnRead |
201 |
src/cluster_erp/modules/design_engineering/ecns/routes.py:90 |
PUT |
/api/v1/design_engineering/ecns/{ecn_id} |
update_ecn |
ecn.propose |
EcnUpdate |
yok | EcnRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/ecns/routes.py:102 |
DELETE |
/api/v1/design_engineering/ecns/{ecn_id} |
delete_ecn |
ecn.propose |
yok | yok | yok | 204 |
src/cluster_erp/modules/design_engineering/ecns/routes.py:117 |
POST |
/api/v1/design_engineering/ecns/bulk-delete |
bulk_delete_ecns |
ecn.propose |
BulkDeleteRequest |
yok | BulkDeleteResponse |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/ecns/routes.py:129 |
POST |
/api/v1/design_engineering/ecns/{ecn_id}/approve |
approve_ecn |
ecn.approve |
yok | yok | EcnRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/ecns/routes.py:141 |
POST |
/api/v1/design_engineering/ecns/{ecn_id}/reject |
reject_ecn |
ecn.approve |
yok | yok | EcnRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/ecns/routes.py:153 |
POST |
/api/v1/design_engineering/ecns/{ecn_id}/implement |
implement_ecn |
ecn.approve |
yok | yok | EcnRead |
200 (varsayılan) | src/cluster_erp/modules/design_engineering/ecns/routes.py:165 |
Hata kodları¶
Tablo, src/cluster_erp/modules/design_engineering/ altındaki kodun attığı hata kodlarını listeler. Kodlar, AppError(...) çağrıları, src/cluster_erp/core/errors.py içindeki fabrikalar (not_found, conflict, protected, permission_denied, privilege_escalation, check_version) ve HTTPException(...) için yapılan bir sözdizimi ağacı taramasıyla bulundu. 400 durumu AppError varsayılanıdır (src/cluster_erp/core/errors.py:23). Koruma hataları (401, 403), yetkilendirme kodları ve doğrulama hataları (422) her yol için geçerlidir ve Hatalar sayfasında listelenir.
| Kod | HTTP durumu | Atıldığı yer | İlk konum |
|---|---|---|---|
DESIGN_CONCEPT_NO_APPROVAL |
400 |
designs |
src/cluster_erp/modules/design_engineering/designs/services.py:284 |
DESIGN_INVALID_STATUS |
400 |
designs |
src/cluster_erp/modules/design_engineering/designs/services.py:230 |
DESIGN_LOCKED_APPROVED |
400 |
designs |
src/cluster_erp/modules/design_engineering/designs/services.py:191 |
ECN_DESIGN_NOT_APPROVED |
400 |
ecns |
src/cluster_erp/modules/design_engineering/ecns/services.py:107 |
ECN_INVALID_STATUS |
400 |
ecns |
src/cluster_erp/modules/design_engineering/ecns/services.py:151 |
RESOURCE_NOT_FOUND |
404 |
designs, ecns |
src/cluster_erp/modules/design_engineering/designs/routes.py:89 |
Yayımlanan olaylar¶
Tablo, src/cluster_erp/modules/design_engineering/ altındaki kodun EventBus.emit çağrısına doğrudan verdiği sözleşme sınıflarını listeler; sözdizimi ağacı taramasıyla bulundu. Önce bir değişkene kurulan olaylar sayılmaz. Sözleşmeler Sözleşmeler başvurusu sayfasında anlatılır.
| Sözleşme | Konum sayısı | İlk konum |
|---|---|---|
DesignApproved |
1 | src/cluster_erp/modules/design_engineering/designs/services.py:307 |
DesignCreated |
1 | src/cluster_erp/modules/design_engineering/designs/services.py:167 |
DesignSuperseded |
1 | src/cluster_erp/modules/design_engineering/designs/services.py:348 |
EcnApproved |
1 | src/cluster_erp/modules/design_engineering/ecns/services.py:228 |
EcnImplemented |
1 | src/cluster_erp/modules/design_engineering/ecns/services.py:304 |
EcnProposed |
1 | src/cluster_erp/modules/design_engineering/ecns/services.py:128 |
İlgili sayfalar¶
92f8051 numaralı commit ile 2026-11-13 tarihinde doğrulandı.