# نظام إدارة مصنع البلوك — تشاد
نظام ويب كامل (Python/Flask + قاعدة بيانات) لإدارة تشغيل مصنع البلوك يوميًا:
الإنتاج، مخزون الإسمنت، المبيعات والعملاء، المصاريف، الرواتب، وتقرير أرباح/خسائر
شهري يُحسب تلقائيًا من البيانات الفعلية المُدخلة.
هذا النظام منفصل عن ملف "دراسة الجدوى" (الإكسل) — الإكسل للتخطيط قبل البدء،
وهذا النظام لتتبّع الأرقام الفعلية بعد ما يشتغل المصنع، عشان تقدر تقارن
الافتراضات بالواقع.
## التشغيل محليًا (على جهازك)
يحتاج بايثون 3.9 أو أحدث فقط. لا يحتاج تثبيت قاعدة بيانات — يشتغل تلقائيًا
بـ SQLite (ملف `local.db` يُنشأ بنفسه).
```bash
cd company_system
pip install -r requirements.txt
python seed.py # (اختياري) يدخل بيانات تجريبية عشان تجرب النظام فورًا
python app.py
```
افتح المتصفح على:
127.0.0.1
## رفعه أونلاين مجانًا على Render
1. ارفع محتويات هذا المجلد على مستودع GitHub جديد.
2. من render.com اختر **New > Blueprint**، واربطه بالمستودع —
Render بيقرأ ملف `render.yaml` تلقائيًا وينشئ:
- خدمة ويب (Flask عبر gunicorn)
- قاعدة بيانات PostgreSQL مجانية، ويربطها بالخدمة عبر `DATABASE_URL` تلقائيًا
3. بعد أول نشر (deploy)، النظام ينشئ الجداول بنفسه أول ما يفتح (`db.init_db()`
يُستدعى عند تشغيل `app.py`).
4. (اختياري) لإدخال بيانات تجريبية على قاعدة بيانات Render، شغّل من "Shell" الخاص
بالخدمة على لوحة تحكم Render: `python seed.py`
النظام بعدها يفتح على رابط عام (`
your-app-name.onrender.com`) تقدر
تفتحه من أي جهاز أو موبايل.
## هيكل الملفات
| الملف | الوظيفة |
|---|---|
| `app.py` | تطبيق Flask — كل الصفحات والمسارات (routes) |
| `db.py` | الاتصال بقاعدة البيانات — SQLite محليًا، Postgres على Render |
| `entities.py` | تعريف الكيانات (للتوثيق ووضوح الكود) |
| `crud.py` | كل عمليات القراءة/الكتابة والتجميع (إجمالي المخزون، التقرير الشهري...) |
| `schema_postgres.sql` / `schema_sqlite.sql` | تعريف الجداول لكل قاعدة بيانات |
| `seed.py` | بيانات تجريبية تطابق أرقام دراسة الجدوى (الإكسل) للمقارنة |
| `templates/` | صفحات الواجهة (HTML) |
| `static/style.css` | التنسيق |
## أقسام النظام
- **لوحة التحكم**: نظرة سريعة ع …