Bu sayfa nesting modülünün dışa aktarım biçimini, içe aktarım biçimini ve denetimlerini ve KPI raporunu listeler. Kod src/cluster_erp/modules/nesting/integration/ ve src/cluster_erp/modules/nesting/kpi/ içindedir. İşler ve parçalar işler, parçalar ve artıklar sayfasında, geometri yardımcıları yerleşim motoru sayfasındadır.
Kapsam ve kaynak¶
- Tanımlandığı yer:
integration/schemas.py(NestingExportPart,NestingExportData,NestingImportPlacement,NestingImportRemnant,NestingImportPart,NestingImportResult),integration/services.py(NestingIntegrationService),kpi/schemas.py,kpi/services.py(NestingKpiService),kpi/routes.py. - Sayım: 6 entegrasyon şeması (
integration/schemas.pyiçindeki sınıflar); 1 KPI ucu; 3 KPI ayrıntı düzeyi.
Dışa aktarım¶
POST /api/v1/nesting/nesting-jobs/{job_id}/export işi harici bir araç için JSON olarak döndürür (src/cluster_erp/modules/nesting/nesting_jobs/routes.py:251-264).
| Alan | Anlam | Kaynak |
|---|---|---|
job_id, job_code |
İş | src/cluster_erp/modules/nesting/integration/schemas.py:19-21 |
material_grade, thickness_mm, surface_coating |
Malzeme | src/cluster_erp/modules/nesting/integration/schemas.py:22-24 |
sheet_length_mm, sheet_width_mm |
Levha ölçüsü | src/cluster_erp/modules/nesting/integration/schemas.py:25-26 |
kerf_width_mm, part_gap_mm, edge_margin_mm, max_sheets, allow_mirror, allowed_rotations |
Süreç kuralları; döndürmeler varsayılan olarak 0, 90, 180 ve 270 | src/cluster_erp/modules/nesting/integration/schemas.py:27-32, src/cluster_erp/modules/nesting/integration/services.py:153-158 |
parts |
Her canlı parça için bir girdi: nesting_part_id, part_id, qty_requested, part_length_mm, part_width_mm, priority, geometry_polygon, önceliğe göre sıralı |
src/cluster_erp/modules/nesting/integration/schemas.py:9-16, src/cluster_erp/modules/nesting/integration/services.py:121-143 |
İçe aktarım¶
POST /api/v1/nesting/nesting-jobs/{job_id}/import-result aracın sonucunu alır (src/cluster_erp/modules/nesting/nesting_jobs/routes.py:267-281).
| Alan | Anlam | Kaynak |
|---|---|---|
external_software |
Aracın adı, 1 ile 100 karakter arası | src/cluster_erp/modules/nesting/integration/schemas.py:65 |
placements |
Her biri nesting_part_id, x, y, rotation, mirrored, sheet_index ile |
src/cluster_erp/modules/nesting/integration/schemas.py:36-42, src/cluster_erp/modules/nesting/integration/schemas.py:66 |
remnants |
x, y, width, height, sheet_index ile artan dikdörtgenler |
src/cluster_erp/modules/nesting/integration/schemas.py:45-50, src/cluster_erp/modules/nesting/integration/schemas.py:67 |
parts |
Parça başına gerçek dış hatlar, milimetre, tek dış halka | src/cluster_erp/modules/nesting/integration/schemas.py:53-61, src/cluster_erp/modules/nesting/integration/schemas.py:68 |
sheets_used |
En az 1 | src/cluster_erp/modules/nesting/integration/schemas.py:69 |
utilization_pct |
Araçtan gelen isteğe bağlı verim, 0 ile 100 arası | src/cluster_erp/modules/nesting/integration/schemas.py:70-73 |
İçe aktarım denetimleri ve sonuçları¶
İçe aktarım iş satırını kilitler ve yalnızca queued veya failed durumundaki bir iş için sonuç kabul eder (src/cluster_erp/modules/nesting/integration/services.py:168-182). Ardından şu denetimleri çalıştırır; her başarısızlık NESTING_IMPORT_INVALID_PARTS yanıtı verir:
- Her yerleşim bu işin bir parçasını belirtir (
src/cluster_erp/modules/nesting/integration/services.py:192-199). - Her yerleşimin levha sırası 0 ile
sheets_usedeksi bir arasındadır (src/cluster_erp/modules/nesting/integration/services.py:201-212). - Döndürülen her dış hat bu işin bir parçasını belirtir; dış hat saklanır ve parça çözümlenmiş olarak işaretlenir (
src/cluster_erp/modules/nesting/integration/services.py:214-228). - Yerleştirilen parça alanı levha alanı çarpı
sheets_useddeğerini aşmaz (src/cluster_erp/modules/nesting/integration/services.py:284-301). - Yerleştirilen her parçanın gerçek bir dış hattı olduğunda, hiçbir parça levhasının dışına taşmaz ve bir levhadaki iki parça üst üste binmez (
src/cluster_erp/modules/nesting/integration/services.py:48-106,src/cluster_erp/modules/nesting/integration/services.py:303-306).
Parça alanı, bir dış hat varsa gerçek çokgen alanı, yoksa uzunluk çarpı genişliktir (src/cluster_erp/modules/nesting/integration/services.py:31-45). Kullanım, verilmişse aracın değeridir; aksi halde yerleştirilen alan bölü levha alanı, yüzde olarak. Kullanılan ve fire alanları ondan türetilir (src/cluster_erp/modules/nesting/integration/services.py:308-319). İş result_source değeri external olarak completed olur, yerleşim ve artıklar saklanır ve NestingCompleted yayılır (src/cluster_erp/modules/nesting/integration/services.py:321-361). Güncelleme sırasındaki başka her hata NESTING_IMPORT_FAILED yanıtı verir (src/cluster_erp/modules/nesting/integration/services.py:341-348).
KPI raporu¶
GET /api/v1/nesting/nesting-jobs/kpi; period_start, period_end, granularity (daily, weekly veya monthly, varsayılan monthly) ve isteğe bağlı bir material_grade alır (src/cluster_erp/modules/nesting/kpi/routes.py:16-31, src/cluster_erp/modules/nesting/kpi/schemas.py:8). Yalnızca çalışması dönem içinde tamamlanmış canlı ve completed durumdaki işleri sayar (src/cluster_erp/modules/nesting/kpi/services.py:224-238).
| Yanıt bölümü | İçerik | Kaynak |
|---|---|---|
summary |
işler, levhalar, malzeme, kullanılan ve fire alanı, fire oranı, kullanım | src/cluster_erp/modules/nesting/kpi/schemas.py:11-18, src/cluster_erp/modules/nesting/kpi/services.py:71-111 |
material_breakdown |
aynısı malzeme kalitesi ve kalınlık başına | src/cluster_erp/modules/nesting/kpi/schemas.py:21-29, src/cluster_erp/modules/nesting/kpi/services.py:113-165 |
trend |
gün, hafta veya ay başına işler, kullanım ve fire oranı | src/cluster_erp/modules/nesting/kpi/schemas.py:32-36, src/cluster_erp/modules/nesting/kpi/services.py:167-222 |
Kullanım alan ağırlıklıdır: toplam kullanılan alan bölü toplam kullanılan artı fire alanı, yüzde olarak, iki basamağa. Docstring bunun her işi tükettiği levha alanıyla ağırlıklandırdığını, yüzdelerin ortalamasından farklı olduğunu belirtir (src/cluster_erp/modules/nesting/kpi/services.py:24-33). Fire oranı toplam fire bölü toplam kullanılan artı fire, yüzde olarak (src/cluster_erp/modules/nesting/kpi/services.py:93-98).
Kısıtlar ve doğrulama¶
- İçe aktarım
nesting_job.runister; dışa aktarım ve KPInesting_job.readister (src/cluster_erp/modules/nesting/nesting_jobs/routes.py:254,src/cluster_erp/modules/nesting/nesting_jobs/routes.py:271,src/cluster_erp/modules/nesting/kpi/routes.py:22). - Bir içe aktarım, yeni yerleşimi uygulamadan önce her parçanın tüm yerleşim alanlarını sıfırlar; bu yüzden bir içe aktarım önceki yerleşimin yerini alır (
src/cluster_erp/modules/nesting/integration/services.py:230-238). - Her parça ilk yerleşiminin koordinatlarını tutar; tam liste işin
layout_placementsalanındadır (src/cluster_erp/modules/nesting/integration/services.py:243-270).
Tanıtılan terimler¶
| Terim | Kod tanımlayıcısı | Tanım | Türkçe terim | Kaynak |
|---|---|---|---|---|
| nesting export | NestingExportData |
Harici bir yerleşim aracına gönderilen bir işin JSON tanımı. | Yerleşim dışa aktarımı | src/cluster_erp/modules/nesting/integration/schemas.py:19 |
| nesting import | NestingImportResult |
Harici bir aracın döndürdüğü yerleşim: konumlar, artıklar, dış hatlar ve kullanılan levhalar. | Yerleşim sonucu içe aktarımı | src/cluster_erp/modules/nesting/integration/schemas.py:64 |
| scrap rate | scrap_rate_pct |
Fire alanının kullanılan artı fire alanına yüzde oranı. | Fire oranı | src/cluster_erp/modules/nesting/kpi/schemas.py:17 |
İlgili sayfalar¶
92f8051 numaralı commit ile 2026-11-13 tarihinde doğrulandı.