# بناء نظام لتدفق العمل مع HTMX وASP.net الأساسية - الجزء 1: مقدمة

<!--category-- ASP.NET, HTMX, Alpine.js, Workflow -->
<datetime class="hidden">2025-01-15T12:00</datetime>

## أولاً

وتوجد نظم تدفق العمل في كل مكان في التطبيقات الحديثة - من عمليات الموافقة البسيطة إلى عمليات التشغيل الآلي المعقدة المتعددة الخطوات.

وفي حين ان هنالك حلولا تجارية ممتازة مثل الحل الزمني ، الحلّين الجويين ، و n8n ، تحتاج احيانا الى شيء مصمَّم حسب حاجاتك الخاصة .

- في هذه السلسلة، سأسير معكم من خلال بناء نظام كامل لتدفق العمل من الصفر باستخدام ASP.NET eor, HTMX, Alpin.js, and Thangfire.
- بحلول نهاية هذه السلسلة، سيكون لديك نظام وظيفي كامل لتدفق العمل مع:
- محرِّر يستند إلى العقدة البصرية لسير أعمال البناء
- عُدَدَّات لسير العمل مع المدخلات والنواتج والظروف المحددة حسب خط الاتصال المشترك
- (محرك تنفيذ لسير العمل حسب الطلب)
- تجهيز المعلومات الأساسية عن العمل مع شركة Thangfire للاقتراع عن بعد

[TOC]

## إدارة الدولة واستمرارها

أداة متابعة لرصد التنفيذ

**لماذا تبني نظام تدفق العمل الخاص بك؟**

- قبل الغوص في، دعونا نعالج الفيل في الغرفة: لماذا لا نستخدم حلاً قائماً؟
- متى إلى بناء ملكك:
- تحتاج إلى تكامل عميق مع تطبيقك الحالي
- لديك منطق عمل تجاري محدد لا يتناسب مع أدوات تدفق العمل العام
- تريد السيطرة الكاملة على نموذج التنفيذ والتدرج

**تحتاج إلى التقليل من الاعتمادات الخارجية**

- تريد أن تتعلم كيف تعمل أنظمة سير العمل تحت غطاء المحرك
- تاريخ استخدام الأدوات الموجودة:
- تحتاج إلى حلّ مُثبّت ومُثبّت ومُجرّب على الفور

تحتاج لمميزات مثل توزيع التنفيذ عبر العديد من الآلات

## ليس لديك الوقت لبناء وصيانة البنية التحتية

بالنسبة لهذه السلسلة، نحن نختار بناء أنفسنا لأنها تمنحنا مرونة كاملة وهي فرصة تعليمية ممتازة.

### ما نحن نبنيه

وسيدعم نظام سير العمل لدينا عدة مفاهيم رئيسية:

- **١ -**العقد
- **العقد هي اللبنات الأساسية لتدفقات العمل.**ويمثل كل عقدة نقطة عمل أو قرار منفصلة.
- **أمثلة:**عقدة طلب HTTP
- **: تُصنِّع المكالمات الهاتفية إلى الخدمات الخارجية**مُرسِل الوضع المُوض
- **1 - تقييم أشكال التعبير والفروع: التنفيذ**نقل

### بيانات العمليات: (التلاعب، الترشيح، وما إلى ذلك)

تاريخ العقد التأخر

### : يُنتظر لمدّة محدّدة

مُسْرِج

- : يبدأ تدفقاً للعمل استناداً إلى أحداث أو جداول
- )٢( A.
- 
- وتدفق العمل هو رسم بياني موجه للعُقد المترابطة.
- وتتدفق البيانات من عقدة إلى أخرى عن طريق الوصلات، مع قيام كل عقدة بتجهيز البيانات وتحويلها حسب الحاجة.

### أولاً -



- المحرك الذي يفسر تعريف تدفق العمل وينفذ العقد بالترتيب الصحيح، المناولة:
- 
- التنفيذ المتوازي (عندما لا تعتمد العُقَد على بعضها البعض)
- الفرع المشروطي
- خطأ مساعد جاري المناولة و & &

### الدولة استمرار الدولة

أولاً -

- & ما دعم دعم ما ما
- أداة UI على شبكة الإنترنت حيث يمكن للمستعملين:
- دَرْج وإسقاط العُقَد في القمام
- نقاط اتصال بالربط بين الحواف بينها

## 

حالات سير العمل الاختباري

### 

- **5 - مكتب الأمم المتحدة في نيويورك**المعلومات الأساسية
- **"باستخدام "هايفاير سننفذ ما يلي:**تنفيذ التنفيذ في سير سير العمل
- **APEP إقتراع البيانات الخارجية**إعادة تسمية منطق الإعدامات الفاشلة
- **لوحة بيانات رصد الوظائف**تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن تكن
- **هذا ما سنستخدمه:**الأمر

### المصدر الأساسي 9.0

- **- إطار شبكتنا**إطار عمل الأمم المتحدة
- **بالنسبة لثبات البيانات**المرشّسSQL
- **:قاعدة بيانات لتعاريف تدفق العمل ودولة التنفيذ**
- **: تجهيز المعلومات الأساسية**(أ) النظام.

### فيما يتعلق بتدفق العمل:

- **الموضوع**HTMXS
- **لـ ديناميكية خادم UI تحديثات بدون كتابة جافاسكربت**الألابين
- **: إطار مخطوطات للمكونات التفاعلية:**TailwindCSS + DESUI

## مكونات اللصف والتوليد:

لم يُلِس

```
Mostlylucid.Workflow/
├── Mostlylucid.Workflow.Engine/      # Core workflow execution engine
│   ├── Models/                        # Node, Workflow, Connection models
│   ├── Execution/                     # Workflow executor and runtime
│   └── Nodes/                         # Built-in node implementations
├── Mostlylucid.Workflow.Shared/       # Shared models and DTOs
├── Mostlylucid.Workflow.DbContext/    # Entity Framework context
└── Mostlylucid/                       # Main web app (existing)
    ├── Controllers/WorkflowController.cs
    ├── Services/WorkflowService.cs
    └── Views/Workflow/                # Workflow UI views
```

### فيما يتعلق بالربط بين العقد (سنستكشف البدائل)

**الهياكل الأساسية**
مُصد مُصد مُصد مُكر

```json
{
  "id": "node-1",
  "type": "HttpRequest",
  "name": "Fetch User Data",
  "inputs": {
    "url": "https://api.example.com/users/{{userId}}",
    "method": "GET",
    "headers": {
      "Authorization": "Bearer {{apiToken}}"
    }
  },
  "outputs": {
    "response": "{{result.body}}",
    "statusCode": "{{result.statusCode}}"
  },
  "conditions": {
    "onSuccess": "next-node-id",
    "onError": "error-handler-node-id"
  }
}
```

**بالنسبة للحاوية:**
التكسس

- : من أجل قطع الأشجار المُنَسَّب
- ثالثاً - الاجتماع الأول +
- الرصد: الرصد

**أولاً - لمحة عامة**
وسينظم نظامنا في عدة مشاريع:

- & رئيسي
- ١ -
- أولاً - تعاريف العقد
- سيتم تعريف العقد في JOSON، مما يجعل من السهل ترتيبها، ونسخها، وتقاسمها:

**)٢( A.**
دال - التنفيذ عن طريق

- وتدفقات العمل هي رسوم بيانية دراجية موجهة.
- سيقوم محرك التنفيذ بما يلي:
- الفرز الطوبولوجي لتحديد أمر التنفيذ

## يُنفّذ العقدات المتوازية حيثما كان ممكناً

### فرعة مشروطة على أساس نواتج العقدة

- أولاً -
- الدولة: تلم الدولة
- وسيجري تتبع كل عملية من عمليات التنفيذ على النحو التالي:
- حالة حالة سير العمل (Running، مكتمل، فشل)

### نتائج التنفيذ

- حالات الاستدثار لتدفقات العمل المقررة
- تاريخ التنفيذ و لوث
- أولاً -
- الميج
- سيكون نظام النفعية مستنداً على الملحق:

### تركيب معدسات للعمليات المشتركة

- يمكن تسجيل الأنواع
- التصديق على العقدة والإنفاذ في إطار
- ما الذي يحدث في هذه السلسلة
- الجزء 2: المحركات المعمارية وتدفق العمل الأساسي
- إنشاء هيكل المشروع

###  بناء النماذج الأساسية لتدفق العمل (النود، والعمل، والتدفق، والاتصال)

- تنفيذ محرك التنفيذ
- تصنـف الـعلم الجيني وركـل المتوسـل إليهـا وركـل المتوسـل إليهـا وركـل المتوسـل إليهـا
- الجزء 3: بناء المحرر البصري
- إنشاء واجهة سير العمل مع HTMX و Albin.js
- وضع عقدة النقل والتسريب

## الوصلة المرئية

إنشاء المعيض

- مُهِلَة
- الجزء 4: الإدماج في تبادل إطلاق النار وإدارة الدولة
- إعداد تجميع المعلومات الأساسية لمعالجة المعلومات الأساسية
- عدد مراكز الاقتراع المنفذة في إطار الرقم
- إدارة الدولة المُطرج

## إعادة اختبار و مناولة الخطأ

سند

الجزء 5: الميزات المتقدمة والنشر

## مُنَدَدَدَس مُعَظَف

إصدارات

مُتَجِزات الاختبار

الإنجاز عند الأداء