توثيق يوميات موقع البناء وقائمة العيوب لأودو 19 Community
دليل يوميات موقع البناء وقائمة العيوب لأودو: تثبيت الوحدة والمواقع والسياج الجغرافي والحرف وبطاقات الأسعار والمعدات والميزانية مقابل الفعلي والمخططات والعلامات وتطبيق المشرف والتسليمات والمزامنة دون اتصال والتقارير والواجهة البرمجية وبناء التطبيق.
يشرح الإصدار 1.0.0حُدّث في 29 أكتوبر 2026
ابدأ من هنا
ببساطة: تمنحك هذه الحزمة نظامًا متكاملًا لـالتقارير اليومية لمواقع البناء وقائمة العيوب والملاحظات لـأودو Community: وحدة أودو (
taqnix_construction_jobsite) لمكتب المشروع، والشيفرة المصدرية بـ Flutter لـتطبيق الآيفون والآيباد والأندرويد الذي يستخدمه مشرفو الموقع في الموقع، مع تغطية الشبكة أو بدونها. يكتب مشرف الموقع السجل اليومي (الطقس، والتأخيرات، والطواقم حسب مقاول الباطن، وساعات المعدات والوقود، والصور، والتوقيع)، ويضع علامات (دبابيس) على المخططات للعيوب، ويتحقق من التسليمات مقابل أوامر الشراء. ويرى مكتب المشروع التكاليف مقابل الميزانية في اليوم نفسه.نصيحة: لا شيء هنا يحتاج إلى أودو Enterprise: تستخدم الوحدة المشروع، وسجلات الوقت (للحساب التحليلي للمشروع)، والمشتريات، والمخزون، والفوترة فقط. ولا تُستخدم الخرائط ولا مخطط Gantt ولا غيرها من شاشات Enterprise.
محتويات الحزمة
| البند | ما هو |
|---|---|
taqnix_construction_jobsite.zip | وحدة أودو 19: المواقع مع السياج الجغرافي والميزانية، والسجلات اليومية، والحِرف وبطاقات الأسعار، والمعدات، والمخططات وقائمة العيوب والملاحظات، والتسليمات (إشعار استلام البضاعة الرقمي GRN)، والميزانية مقابل الفعلي، والتقارير، وواجهة برمجة التطبيق، وترجمة عربية، واختبارات آلية. |
flutter-app-source.zip | مشروع Flutter (أندرويد وiOS): قاعدة بيانات وصندوق صادر للعمل دون اتصال، ومحرك مزامنة، وعارض مخططات مع وضع العلامات (الدبابيس)، وشاشات السجل اليومي، وفحص التسليم بالماسح الضوئي والتعرّف على النصوص، والإنجليزية والعربية، وسكربت إعداد واختبارات. |
documentation/ | هذا الدليل بالإنجليزية (index.html) والعربية (index-ar.html) مع ملفات PDF، والملف API.md للمطورين. |
licensing/ | الرخصة (OPL-1: شراء واحد = شركة واحدة وعلامة تطبيق واحدة مع التحديثات). |
preview-images/ | لقطات من التطبيق ومن شاشات أودو. |
changelog.txt | سجل الإصدارات. |
كيف يسير يوم العمل
| اللحظة | من | ماذا يحدث | في أودو |
|---|---|---|---|
| الصباح | مشرف الموقع | يفتح الموقع، فيسجّل التطبيق الطقس من موقع الهاتف (أو يكتبه بنفسه)، ويبدأ السجل ويعدّ الطواقم الموجودة في الموقع. | سجل يومي بحالة مسودة للموقع واليوم. |
| خلال اليوم | مشرف الموقع | يضيف ساعات المعدات والوقود والتأخيرات والصور؛ ويضع علامات (دبابيس) على المخططات؛ ويستلم التسليمات الواصلة. | علامات، وتسليم (GRN) مع صوره، واستلام معتمد في المخزون، وطلب متأخر (Backorder) عند النقص. |
| نهاية الوردية | مشرف الموقع | يراجع قائمة التحقق ويوقّع على الشاشة: إرسال الوردية. | يُقدَّم السجل؛ وتُرحَّل تكاليف العمالة والمعدات إلى الحساب التحليلي للموقع. |
| صباح اليوم التالي | مدير المشروع | يعتمد السجل أو يرفضه مع ذكر السبب؛ ويتابع العلامات الحرجة. | سجل معتمد، ومهمة لمشرف الموقع بعد الرفض. |
| في أي وقت | مهندس الكميات | يقارن الميزانية بالتكلفة الفعلية حسب العمالة والمعدات والمواد وغيرها؛ ويغلق العلامات التي تم تصحيحها. | الميزانية مقابل الفعلي، وتحليل التكاليف، وقائمة العيوب والملاحظات. |
ببساطة: العمل دون اتصال أولًا. الأقبية الخرسانية لا إشارة فيها: يُحفظ كل سجل وصورة وعلامة وتسليم على الهاتف أولًا، ثم يُرسل إلى أودو عند توفر الاتصال، مرة واحدة وبالترتيب مع إعادة محاولة آمنة (الفصل 21).
ما تحتاج إليه
| البند | التفاصيل |
|---|---|
| أودو | الإصدار 19.0 Community أو Enterprise. تُثبَّت تلقائيًا مع الوحدة تطبيقات المشروع وسجلات الوقت والمشتريات والمخزون والفوترة. |
| دليل الحسابات | أي توطين؛ فأوامر الشراء وفواتير الموردين تستخدمه. وتُرحَّل تكاليف السجلات إلى الحساب التحليلي للمشروع. |
| العنوان | عنوان https عام لأودو (يجب أن تصل إليه الهواتف). وفي الشبكة المغلقة يمكنك استخدام عنوان http على الشبكة المحلية إذا بنيت التطبيق لذلك. |
| الهواتف والأجهزة اللوحية | أندرويد 8 أو أحدث، أو آيفون / آيباد بنظام iOS 15 أو أحدث، مع كاميرا وGPS. والجهاز اللوحي هو الأفضل للمخططات. |
| الطقس | يستطيع التطبيق قراءة طقس الموقع مجانًا من خدمة Open-Meteo عندما يكون الهاتف متصلًا (دون مفتاح)؛ وفي وضع عدم الاتصال يكتبه مشرف الموقع. |
| حاسوب لبناء التطبيق | جهاز Mac للآيفون والأندرويد (ويندوز أو لينكس يبنيان الأندرويد فقط)، بمساحة حرة نحو 30 غيغابايت، وFlutter 3.41 أو أحدث، وAndroid Studio وXcode. |
| حسابات المتاجر | Google Play Console وبرنامج Apple Developer، أو توزيع داخلي على موظفيك. |
ثبّت وحدة أودو
- فُكّ ضغط الحزمة. بداخلها
taqnix_construction_jobsite.zip؛ فُكّه لتحصل على المجلدtaqnix_construction_jobsite. - انسخ المجلد إلى أحد مجلدات
addons_pathفي خادم أودو وأعد تشغيل أودو. - سجّل الدخول كمدير وفعّل وضع المطوّر ثم افتح التطبيقات واضغط تحديث قائمة التطبيقات.
- أزل مرشح «التطبيقات» وابحث عن Construction Jobsite واضغط تثبيت.
# or from the command line ./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_construction_jobsite --stop-after-init
ببساطة: بعد التثبيت يظهر تطبيق جديد باسم موقع العمل (Jobsite) في القائمة الرئيسية. ينشئ التثبيت أيضًا الحِرف (النجارة، الأعمال الكهروميكانيكية MEP، البناء بالطوب، حدادو التسليح، الخرسانة، التشطيبات، العمالة العامة)، وتسلسلات أرقام السجلات والعلامات وإشعارات التسليم، وتذكيرًا بالسجلات الناقصة.
مهم: خذ نسخة احتياطية قبل التثبيت على قاعدة بيانات الإنتاج كما تفعل مع أي وحدة.
الإعداد الأول في 30 دقيقة
- افتح موقع العمل ← الإعدادات ← المواقع وأنشئ مشروعًا أو افتح مشروعًا قائمًا: فعّل تقارير موقع العمل، واكتب رمز الموقع والإحداثيات ونصف القطر، وأضف مشرفي الموقع (الفصل 7).
- امنح المستخدمين المجموعات مشرف الموقع أو مهندس الكميات أو مدير المشروع (الفصل 13).
- علّم مقاولي الباطن لديك (الإعدادات ← مقاولو الباطن) وحدّد حِرفهم وبطاقات الأسعار (الفصل 8).
- أضف المعدات مع أسعارها وأسعار الوقود (الفصل 9).
- أدخل ميزانية الموقع حسب العمالة والمعدات والمواد وغيرها (الفصل 10) وعلّم الموقع على أوامر الشراء الخاصة به.
- ارفع المخططات (PDF أو صور) (الفصل 11).
- ابنِ التطبيق بسكربت الإعداد (الفصل 25) وثبّته على الهواتف وسجّل الدخول واكتب أول سجل.
نصيحة: البيانات التجريبية في اللقطات (Atlas Build Co.: موقعان، ومخططات، وعلامات، وسجلات، وأوامر شراء) ينشئها الملف
tests/seed.py في الحزمة المصدرية: وهو مثال كامل لكل إعداد.المواقع ومشرفو الموقع والسياج الجغرافي
ببساطة: الموقع هو مشروع أودو عادي فُعّل فيه تقارير موقع العمل. يضم تبويب موقع العمل كل شيء: الرمز، والعنوان، ومشرفي الموقع الذين يرفعون التقارير عنه، وإحداثيات السياج الجغرافي ونصف قطره، والميزانية والأرقام الفعلية.
| الحقل | ماذا يفعل |
|---|---|
| مشرفو الموقع | المستخدمون الذين يرون هذا الموقع في التطبيق ويكتبون سجلاته ويضعون علاماته. لا يرى مشرف الموقع إلا المواقع المسندة إليه. |
| خط العرض، خط الطول، نصف قطر السياج الجغرافي | مكان الموقع. يعرض التطبيق المسافة إلى الموقع ويسجّل عند التقديم هل كان الهاتف داخل نصف القطر. |
| منع التقديم خارج الموقع | مفعّل: لا يستطيع مشرف الموقع تقديم السجل خارج نصف القطر إلا إذا كتب سببًا (ويصل مدير المشروع مهمة). معطّل: يُكتفى بوسم السجل. |
| نسبة الإنجاز | التقدم الفعلي في العمل يدخله مدير المشروع؛ ويُستخدم في مؤشر أداء التكلفة. |
ببساطة: تعدد المواقع أمر عادي: يفتح التطبيق على منتقي المواقع مع المسافة إلى كل موقع، ويبقى كل شيء (السجلات والعلامات والمخططات والتسليمات) منفصلًا لكل موقع.
الحِرف ومقاولو الباطن وبطاقات الأسعار
ببساطة: تُسجَّل الطواقم حسب مقاول الباطن والحرفة. للحرفة سعر افتراضي بالساعة ومعامل للعمل الإضافي؛ وبطاقة الأسعار تتجاوزهما لمقاول باطن أو لمشروع أو لكليهما.
| السعر المستخدم (بهذا الترتيب) | مثال |
|---|---|
| بطاقة المشروع ومقاول الباطن | Gulf MEP في Marina Heights: 26.00 للساعة |
| بطاقة المشروع | جميع البنّائين في Marina Heights: 17.50 |
| بطاقة مقاول الباطن | Steelworks United في كل المواقع: 18.50 |
| السعر الافتراضي للحرفة | الأعمال الكهروميكانيكية MEP: 24.00 |
| يمكن أن يكون للبطاقات تواريخ | البطاقة التي تبدأ الشهر القادم لا تُطبَّق بعد |
ببساطة: تكلفة العمالة لسطر طاقم = عدد العمال × سعر الساعة × (الساعات العادية + ساعات العمل الإضافي × معامل العمل الإضافي). لا يرى مشرفو الموقع الأسعار ولا التكاليف أبدًا: فهذه الحقول محمية بصلاحيات الوصول (يراها مهندسو الكميات ومديرو المشاريع).
المعدات: الآلات المملوكة والمستأجرة
ببساطة: لكل آلة رقم أسطول، ونوع (حفّارة، رافعة، مضخة، مولّد، لودر...)، ومملوكة أو مستأجرة (مع شركة التأجير)، وعدّاد بالساعات أو الكيلومترات، وسعر بالساعة ووحدة وقود وسعره. ويمكن حصر الآلة في بعض المواقع.
| الإعداد | المعنى |
|---|---|
| سعر الساعة | سعر التحميل على آلة مملوكة أو سعر الإيجار، عن كل ساعة تشغيل. |
| نسبة احتساب التوقف (%) | حصة السعر المحتسبة عن ساعات وقوف الآلة (تُدفع الرافعة المستأجرة عادةً وهي متوقفة). |
| نسبة احتساب العطل (%) | الحصة المحتسبة عن ساعات العطل (عادةً 0). |
| سعر الوقود، الوقود مشمول | يُحتسب الوقود إضافة إلا إذا كان الإيجار شاملًا (الوقود مشمول). |
| آخر قراءة للعداد | تُحدَّث عند كل سجل يُقدَّم؛ ويبدأ التطبيق اليوم التالي منها. |
ببساطة: تكلفة المعدات لسطر = ساعات التشغيل × السعر + ساعات التوقف × السعر × نسبة التوقف + ساعات العطل × السعر × نسبة العطل + الوقود × سعر الوقود.
الميزانية مقابل الفعلي
ببساطة: لكل موقع ميزانية في أربعة بنود: العمالة والمعدات والمواد وغيرها. وتأتي التكلفة الفعلية من سجلات أودو التي تحتفظ بها أصلًا:
| البند | من أين تأتي التكلفة الفعلية |
|---|---|
| العمالة | أسطر الطواقم في السجلات اليومية المقدَّمة (أو المعتمدة): ساعات العمل × الأسعار، مرحَّلة إلى الحساب التحليلي للمشروع. |
| المعدات | أسطر الآلات في السجلات: الساعات، والتوقف، والوقود. |
| المواد | الاستلامات المعتمدة لأوامر الشراء المعلَّمة بالموقع، بسعر الأمر (الافتراضي)، أو فواتير الموردين المرحَّلة التي تحمل الحساب التحليلي للموقع: يُختار ذلك في الإعدادات. |
| أخرى | أي تكلفة تحليلية أخرى على حساب الموقع (سجلات وقت موظفيك، والمصروفات). |
ببساطة: الانحراف = الميزانية − الفعلي (السالب يعني تجاوز الميزانية). النسبة المستخدمة = الفعلي ÷ الميزانية. مؤشر أداء التكلفة = القيمة المكتسبة ÷ الفعلي، حيث القيمة المكتسبة = إجمالي الميزانية × نسبة الإنجاز: فوق 1 تنفق أقل مما يساويه العمل المنجز، وتحت 1 تنفق أكثر. ويعرض التزام المواد أوامر الشراء المؤكدة التي لم تُستلم بعد.
نصيحة: علّم الموقع على أمر الشراء (حقل موقع العمل) لتُحتسب استلاماته ضمن تكلفة المواد للموقع وتظهر في التطبيق لفحص التسليم.
المخططات وعارض المخططات في أودو
ببساطة: ارفع أوراق كل موقع من موقع العمل ← الموقع ← المخططات: PDF (يمكن أن يضم عدة صفحات) أو PNG أو JPEG أو SVG. يحفظ أودو الملف وبصمته (hash) وعدد صفحاته؛ وينزّل التطبيق الورقة مرة واحدة ويحتفظ بها على الجهاز، فتعمل المخططات دون اتصال. وللملف PDF يمكنك رفع صورة للصفحة الأولى لتكون المعاينة المعروضة في أودو.
ببساطة: اضغط فتح المخطط مع علاماته للانتقال إلى العارض في أودو: تُرسم كل علامة في الورقة في موضعها الدقيق بلون خطورتها؛ انقر على علامة لرؤيتها أو فتحها؛ ويستطيع مدير المشروع إضافة علامة بالنقر على المخطط.
ببساطة: تستخدم العلامات إحداثيات معيارية: يُخزَّن الموضع كنسبة من عرض الصفحة وارتفاعها (من 0.0 إلى 1.0، والأصل في أعلى اليسار)، فتظهر العلامة التي وُضعت على هاتف في المكان نفسه على الجهاز اللوحي وفي أودو وفي النسخة المطبوعة.
مرجع الإعدادات
| الإعداد | المعنى |
|---|---|
| توقيع مشرف الموقع للتقديم | يوقّع مشرف الموقع على الشاشة؛ ويُحفظ التوقيع في السجل ويُطبع في التقرير. |
| ترحيل التكاليف | عند تقديم مشرف الموقع للسجل (الافتراضي: تتحرك الميزانية في اليوم نفسه) أو عند اعتماد المدير. |
| منع التقديم خارج الموقع، نصف القطر الافتراضي | قيم افتراضية تُنسخ إلى المشاريع الجديدة. |
| تذكير مشرفي الموقع بالسجلات الناقصة | بعد الساعة المحلية المختارة يصل مشرف الموقع الذي لم يبدأ سجل اليوم مهمة. |
| صورة إشعار التسليم / لوحة المركبة إلزامية | يرفض التطبيق أي تسليم من دونهما. |
| نسبة التسامح في الزيادة (%) | مقدار ما يجوز أن يزيد به التسليم على المطلوب. |
| الفعلي للمواد من | الاستلامات المعتمدة أو فواتير الموردين المرحَّلة. |
| حجم الصور وجودتها | يصغّر التطبيق الصور على الهاتف قبل إرسالها. |
الأدوار والأجهزة
| المجموعة (Construction Jobsite) | تستطيع |
|---|---|
| مشرف الموقع | تسجيل الدخول إلى التطبيق للمواقع المسندة: السجلات اليومية، وقائمة العيوب والملاحظات، والمخططات، والتسليمات. لا يرى الأسعار ولا التكاليف ولا الميزانيات. |
| مهندس الكميات | كل ما يفعله مشرف الموقع على جميع المواقع، إضافة إلى الأسعار والتكاليف والميزانية مقابل الفعلي؛ ويغلق العلامات ويعيد فتحها. |
| مدير المشروع | كل شيء، إضافة إلى المواقع والحِرف وبطاقات الأسعار والمعدات واعتماد السجلات ورفضها والإعدادات. |
ببساطة: كل هاتف يسجّل الدخول يظهر في الإعدادات ← الأجهزة مع إصدار التطبيق وآخر مرة ظهر فيها؛ احذف الجهاز لتسجيل خروجه. والحسابات التي فيها مصادقة ثنائية لا تستطيع استخدام التطبيق.
التطبيق: تسجيل الدخول واختيار الموقع
ببساطة: أدخل عنوان أودو لديك واسم الدخول وكلمة المرور. بعد تسجيل الدخول يعرض التطبيق مواقع المستخدم مع المسافة من الهاتف، وشارة عندما يكون الهاتف داخل السياج الجغرافي للموقع.
لوحة معلومات الموقع اليومية
ببساطة: لوحة المعلومات هي الصفحة الرئيسية لمشرف الموقع: حالة الوردية، والطقس، وبطاقات أعداد العمالة، وسلامة المعدات، وساعات التأخير، وبنود قائمة العيوب والملاحظات المفتوحة، وتسليمات اليوم، وزر كبير إرسال الوردية. ويسرد خط زمني ما حدث اليوم.
ببساطة: الطقس. عندما يكون الهاتف متصلًا يقرأ التطبيق درجة الحرارة والمطر والرياح والأحوال الجوية لموقع الموقع من خدمة Open-Meteo المجانية، ويعلّم المصدر خدمة الطقس. وفي وضع عدم الاتصال، أو إن لم توافق على القيم، اضغط البطاقة واكتب القيم (أدخلها مشرف الموقع)، بما في ذلك حالة الأرض (جافة، رطبة، مبتلة، موحلة، متجمدة، غارقة).
عدّادات العمالة والمعدات
ببساطة: العمالة. أضف سطرًا: مقاول الباطن، ثم الحرفة، ثم استخدم عدّاد الأعداد الكبير (اضغط مطولًا للتكرار؛ ولكل ضغطة اهتزاز)، وحدّد الساعات العادية وساعات العمل الإضافي لكل عامل، وشاهد ساعات العمل فورًا. يقوم الطواقم نفسها كالسجل الأخير بنسخ طواقم سجلك السابق. ويرى مهندسو الكميات والمديرون التكلفة التقديرية أيضًا.
ببساطة: المعدات. اختر آلة (مملوكة أو مستأجرة)، وتأتي بداية العداد من آخر قراءة، واكتب قراءة النهاية (تُقترح ساعات التشغيل من الفرق)، وساعات التوقف والعطل، والوقود المأخوذ والمشغّل. يتحقق التطبيق من أن قراءة النهاية ليست أقل من البداية ومن أن ساعات الآلة لا تتجاوز 24.
التأخيرات والصور والملاحظات والتوقيع
ببساطة: سجّل التأخيرات حسب الفئة (توقف بسبب الطقس، توقف من العميل، تأخر التصريح، نقص المواد، عطل المعدات، نقص العمالة، توقف للسلامة، أخرى) مع الساعات وملاحظة. وأضف صورًا (تقدم العمل، أو السلامة، أو عامة) مع تعليق؛ يضغطها التطبيق على الهاتف ويحتفظ بها حتى تُرسل.
ببساطة: إرسال الوردية. تعرض قائمة التحقق ما بقي ناقصًا (الطقس، والطواقم، والعدادات، والصور)؛ ثم يوقّع مشرف الموقع بإصبعه. يسجّل التطبيق المسافة إلى الموقع؛ وخارج السياج الجغرافي يشرح السبب، وإذا كان الموقع يفرض ذلك يطلب سببًا.
المخططات وقائمة العيوب والملاحظات بوضع العلامات
ببساطة: افتح المخططات: أوراق الموقع مع مراجعتها ومدى توفرها دون اتصال. تُنزَّل الورقة أول مرة (مرة لكل إصدار)؛ وبعد ذلك تُفتح فورًا دون شبكة. تُعرض ملفات PDF أصليًا صفحةً صفحة بجودة المتجهات، فتبقى الخطوط حادة عند أي تكبير؛ وتستخدم الصور العارض نفسه.
- كبّر على الغرفة، واضغط إضافة ملاحظة (الزر الكبير أسفل اليمين)، ثم اضغط على المكان الدقيق؛ وتساعدك عدسة مكبّرة على وضعها بدقة.
- اكتب العنوان، واختر الحرفة المسؤولة وإن عرفته مقاول الباطن، ودرجة الخطورة (منخفضة، متوسطة، حرجة: خطر على السلامة)، والتاريخ المستهدف.
- التقط صورة وعلّم عليها بالقلم أو السهم أو الدائرة أو النص؛ يُحفظ التعليم كبيانات ويُرسم أيضًا داخل الصورة.
- احفظ: تبقى العلامة على المخطط وتنتقل إلى أودو مع المزامنة التالية.
قائمة العيوب والملاحظات وسير عملها
ببساطة: تمر كل علامة بأربع حالات؛ ويفرض أودو القواعد سواء أُجري التغيير في التطبيق أو في أودو:
| التغيير | من | القاعدة |
|---|---|---|
| مفتوحة ← قيد المراجعة | أي مستخدم لموقع العمل | مقاول الباطن يطّلع عليها. |
| قيد المراجعة ← تم التصحيح | مشرف الموقع | يلزم صورة واحدة على الأقل بعد التصحيح. |
| تم التصحيح ← مغلق | مدير المشروع أو مهندس الكميات | يقبل المفتش العمل. |
| تم التصحيح أو مغلق ← مفتوحة | مدير المشروع أو مهندس الكميات | إعادة الفتح تحتاج إلى تعليق. |
ببساطة: العلامة الحرجة تنشئ فورًا مهمة لمدير المشروع. وفي أودو تكون قائمة العيوب والملاحظات لوحة كانبان حسب الحالة، وقائمة، ورسمًا بيانيًا، وجدول محور (pivot) حسب مقاول الباطن، ولكل علامة سجل محادثة (chatter) وتاريخ.
استلام التسليمات: إشعار استلام البضاعة الرقمي (GRN)
ببساطة: عندما تصل شاحنة افتح التسليمات: يعرض التطبيق أوامر الشراء المفتوحة للموقع مع الكميات المتبقية (تُنزَّل مسبقًا، فتعمل دون اتصال).
- اختر أمر الشراء، ثم اكتب لكل سطر الكمية المستلمة الآن (وكمية مرفوضة مع السبب والحالة إذا كان شيء تالفًا أو خاطئًا)؛ واستلام الكل يملأ الكميات المتبقية.
- يحذّرك التطبيق من الفروق: نقص (سيُنشأ طلب متأخر Backorder)، وزيادة في التسليم فوق نسبة التسامح (ممنوعة)، وعدم استلام أي شيء.
- التقط الصور الإلزامية: إشعار التسليم (إشعار الوزن أو بوليصة الشحن) ولوحة المركبة. امسح رقم الإشعار بالكاميرا أو اقرأه بالتعرّف على النصوص على الجهاز؛ ويمكن قراءة اللوحة بالطريقة نفسها.
- اختياريًا يوقّع السائق. اضغط حفظ الاستلام.
ببساطة: في أودو يُعتمد استلام أمر الشراء بالكميات المعدودة؛ وإذا كان بعضها ناقصًا يُنشأ طلب متأخر (Backorder) يبقى على أمر الشراء. ويحتفظ التسليم (GRN) بالأسطر والصور (المرفقة أيضًا بالاستلام) والتوقيع والموقع، وتُحتسب القيمة المستلمة ضمن تكلفة المواد.
العمل دون اتصال أولًا والمزامنة
ببساطة: كل ما يفعله مشرف الموقع يُكتب أولًا في قاعدة بيانات الهاتف وفي صندوق الصادر برقم تسلسلي ثابت ومعرّف فريد. يرسل التطبيق صندوق الصادر بالترتيب كلما توفر اتصال (وفي الخلفية)، ويضغط الصور أولًا؛ ويطبّق أودو كل عملية مرة واحدة، فلا تُنشئ إعادة المحاولة علامة ثانية أو تسليمًا ثانيًا.
| الحالة | ماذا يحدث |
|---|---|
| قبو دون إشارة | اعمل كالمعتاد؛ يعرض التطبيق دون اتصال وعدد العناصر المنتظرة. |
| العودة إلى الاتصال | يُرسل صندوق الصادر بالترتيب؛ وتتبع الصور سجلها الأب؛ وتتحول شارة الحالة إلى الأخضر. |
| كان السجل قد قُدِّم من قبل | يجيب أودو بأنه مقفل؛ وتشرح ذلك شاشة مشكلات المزامنة. |
| تسليم لأمر ليس فيه ما يُستلم، أو زيادة في التسليم، أو صورة ناقصة | ترفض العملية برسالة واضحة في مشكلات المزامنة؛ أعد المحاولة بعد الإصلاح، أو تجاهلها (بتأكيد). |
| مشرفا موقع يضعان علامات في وقت واحد | تُحفظ العلامتان؛ ولكل علامة معرّفها الخاص. |
اعتماد السجلات وتقرير السجل اليومي
ببساطة: يفتح مدير المشروع موقع العمل ← الموقع ← للاعتماد (أو يفعل ذلك في التطبيق)، ويراجع السجل ويضغط اعتماد، أو رفض مع ذكر السبب: تصل مشرف الموقع مهمة، وتُزال تكاليف السجل، فيصححه ويقدّمه من جديد. والسجلات المقدَّمة خارج السياج الجغرافي تحمل مهمة للمدير.
ببساطة: طباعة التقرير ينشئ ملف PDF للسجل اليومي: الطقس، والطواقم، والآلات، والتأخيرات، والتسليمات، والعلامات المكتشفة، والصور، وتوقيع مشرف الموقع والاعتماد، جاهزًا للإرسال إلى العميل.
التقارير
ببساطة: في موقع العمل ← التقارير قائمة الميزانية مقابل الفعلي لكل المواقع، وجدول المحور (pivot) والرسم البياني لـتحليل التكاليف حسب الموقع ونوع التكلفة والشريك والأسبوع. وللسجلات اليومية تقويم وجدول محور لساعات العمل حسب الموقع والأسبوع ورسم بياني؛ ولقائمة العيوب والملاحظات رسم بياني حسب الحرفة والحالة وجدول محور حسب مقاول الباطن.
الأجهزة اللوحية
ببساطة: على الجهاز اللوحي (نحو 8 بوصات فأكثر) يستخدم التطبيق لوحتين: القائمة في جانب والمخطط أو التفاصيل في الجانب الآخر، فتستطيع قراءة قائمة العيوب والملاحظات والمخطط مفتوح.
ابنِ التطبيق وانشره
ببساطة: فُكّ ضغط
flutter-app-source.zip. ملف README في المجلد هو الدليل الكامل؛ وهذا ملخصه:- ثبّت Flutter 3.41 أو أحدث (يجب أن يكون
flutter doctorأخضر لمنصاتك). - شغّل سكربت الإعداد بعنوان خادمك واسم الحزمة؛ وهو يضبط أيضًا اسم التطبيق ولون التمييز:
dart run tools/setup.dart --url https://odoo.example.com --package com.yourcompany.jobsite
- استبدل الأيقونة المؤقتة في
assets/brandingونفّذflutter pub get. - أندرويد:
flutter build apk --release(أوappbundleلـ Google Play). آيفون وآيباد:flutter build ios --releaseثم أرشِف في Xcode. - ثبّت التطبيق على الهواتف. اللغة (الإنجليزية أو العربية) والمظهر (فاتح، داكن، تلقائي) في إعدادات التطبيق.
مهم: تحتاج نسخ الأندرويد الإصدارية (release) إلى عنوان https. وفي الشبكة المحلية المغلقة يمكنك تفعيل http المحلي كما هو مشروح في README التطبيق.
واجهة برمجة التطبيق للمطورين
ببساطة: كل ما يفعله التطبيق متاح عبر واجهة REST صغيرة (
/api/jobsite/v1)؛ والعقد موجود في documentation/API.md. العمليات متكررة الأمان (idempotent) ومرقَّمة، فيمكنك أيضًا كتابة عميلك الخاص أو استيراد البيانات.# is the server reachable?
curl https://odoo.example.com/api/jobsite/v1/ping
# {"ok": true, "api_version": 1, "server_time": "2026-10-27T05:00:00Z"}
# sign in (returns a token, the roles and the sites of the user)
curl -X POST https://odoo.example.com/api/jobsite/v1/auth/login -H 'Content-Type: application/json' \
-d '{"login": "faisal@example.com", "password": "...", "device": {"id": "phone-1", "platform": "ios"}}'
# drop a punch-list pin (idempotent: the same operation uuid is applied once; x and y are 0..1 of the page)
curl -X POST https://odoo.example.com/api/jobsite/v1/op/pin_create -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
-d '{"uuid": "4c1f...", "pin": {"uuid": "a9d2...", "project_id": 2, "plan_id": 3, "page": 1, "x": 0.31, "y": 0.62,
"title": "Exposed rebar in the slab edge", "severity": "critical", "trade_id": 4}}'
# receive a delivery against a purchase order (short quantities create a backorder in Inventory)
curl -X POST https://odoo.example.com/api/jobsite/v1/op/delivery_receive -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
-d '{"uuid": "77aa...", "delivery": {"uuid": "b1c3...", "project_id": 2, "purchase_id": 7, "ticket_no": "DN-88213", "plate": "DXB L 45219",
"lines": [{"po_line_id": 21, "received": 20}]}, "photos": [{"kind": "ticket", "image_b64": "..."}, {"kind": "plate", "image_b64": "..."}]}'| الاستدعاء | الاستخدام |
|---|---|
POST /auth/login | الرمز المميز والأدوار والمواقع. |
GET /bootstrap | الحِرف ومقاولو الباطن والمعدات والمخططات والعلامات والسجلات والتسليمات والإعدادات. |
GET /changes?cursor= | ما تغيّر منذ آخر مزامنة فقط. |
POST /sync, POST /op/<type> | دفعة مرتبة حتى 100 عملية أو عملية واحدة (log_upsert وlog_submit وpin_create وpin_status وphoto_add وdelivery_receive، ...). |
GET /plans/<id>/file | المخطط مع ETag (بصمته SHA-256). |
GET /projects/<id>/purchase-lines | أسطر الشراء المفتوحة للموقع. |
GET /projects/<id>/budget | الميزانية مقابل الفعلي (للمديرين). |
التحديث والنسخ الاحتياطي وإلغاء التثبيت
ببساطة: استبدل مجلد الوحدة بالإصدار الجديد، وأعد تشغيل أودو ونفّذ
-u taqnix_construction_jobsite. تبقى سجلاتك وعلاماتك وتسليماتك وإعداداتك. حدّث التطبيق بإعادة بنائه من المصدر الجديد؛ فواجهة البرمجة مُرقَّمة الإصدار (/v1)، وتستمر التطبيقات الأقدم في العمل مع الوحدات الأحدث ضمن الإصدار نفسه.ببساطة: خذ نسخة احتياطية من قاعدة البيانات ومن filestore كالمعتاد (المخططات والصور في filestore). يحذف إلغاء تثبيت الوحدة سجلاتها؛ وتبقى في أودو أسطر التكلفة التحليلية التي أنشأتها وأوامر الشراء والاستلامات والفواتير.
حل المشكلات
| المشكلة | السبب والحل |
|---|---|
| يقول التطبيق إنه لا يوجد موقع مسند | أضف المستخدم إلى مشرفي الموقع في المشروع (تبويب موقع العمل) وتأكد من تفعيل تقارير موقع العمل. |
| لا يستطيع مشرف الموقع التقديم: خارج الموقع | يفرض الموقع السياج الجغرافي: تحقق من الإحداثيات ونصف القطر في المشروع، أو اكتب سببًا. |
| يعرض السجل تكاليف 0 | تُرحَّل التكاليف عند تقديم السجل (أو اعتماده، راجع الإعدادات) وتحتاج إلى سعر: حدّد السعر الافتراضي للحرفة أو بطاقة أسعار. |
| تكلفة المواد 0 | علّم الموقع على أمر الشراء (حقل موقع العمل) واعتمد الاستلامات؛ أو بدّل أساس المواد إلى فواتير الموردين. |
| لا توجد أوامر شراء مفتوحة في التطبيق | يجب أن يكون أمر الشراء مؤكدًا ومعلَّمًا بالموقع ولا يزال فيه ما يُستلم في المخزون. |
| يُرفض التسليم: صورة ناقصة | التقط صورتي الإشعار واللوحة، أو أوقف هذين الشرطين في الإعدادات. |
| لا يمكن تحويل علامة إلى تم التصحيح | أضف صورة بعد التصحيح أولًا. |
| لا يظهر المخطط في عارض أودو | ارفع صورة للصفحة الأولى في حقل المعاينة عندما يكون المخطط ملف PDF؛ ويعرض التطبيق ملف PDF نفسه. |
| الطقس غير معبّأ | الهاتف دون اتصال: اكتبه بنفسك. وتحتاج خدمة الطقس إلى موقع الموقع. |
| لا يصل التطبيق إلى خادم http | تحتاج نسخ الأندرويد الإصدارية إلى https: استخدم https، أو فعّل http المحلي للشبكة المحلية المغلقة. |
الدعم
ببساطة: التحديثات مجانية. المساعدة في التثبيت وإصلاح الأخطاء مشمولان لمدة 6 أشهر.
المساعدة في التثبيت وإصلاح الأخطاء مشمولان لمدة 6 أشهر مع تحديثات مدى الحياة. تواصل معنا عبر صفحة السوق التي اشتريت منها الوحدة أو راسل support@taqnix.com مع إصدار أودو ولقطة شاشة.