MansourNa888 commited on
Commit
c0cefd5
·
verified ·
1 Parent(s): d56a32d

Create README.md

Browse files

أريد إنشاء تطبيق محاسبي احترافي يعمل على الهاتف، متعدد المستخدمين، باللغة العربية، ويدعم صلاحيات مختلفة للمستخدمين، ويكون مناسبًا للعمل على Android مبدئيًا مع إمكانية دعم iPhone لاحقًا.

المطلوب بناء نظام كامل يتضمن:
- تطبيق هاتف
- قاعدة بيانات احترافية
- تسجيل دخول
- صلاحيات مستخدمين
- شاشات إدخال
- تقارير
- حسابات تلقائية
- ربط بين الجداول
- دعم إدخال 100 سطر في الصفحة الواحدة

## أولًا: متطلبات عامة
1. التطبيق باللغة العربية بالكامل.
2. التصميم من اليمين إلى اليسار.
3. يدعم أكثر من مستخدم.
4. يوجد نظام تسجيل دخول باسم مستخدم وكلمة مرور.
5. يوجد صلاحيات للمستخدمين:
- مدير النظام
- محاسب
- مدخل بيانات
- مستخدم عرض فقط
6. يجب تسجيل اسم المستخدم الذي أضاف أو عدل السجلات.
7. يجب تسجيل تاريخ ووقت الإضافة والتعديل.
8. التطبيق يعمل على الهاتف.
9. يجب أن تكون الواجهة سهلة وواضحة وتناسب شاشات الجوال.

## ثانيًا: القوائم الرئيسية المطلوبة
النظام يجب أن يحتوي على 10 قوائم رئيسية:
1. المبيعات
2. المنصرفات
3. المستلم
4. قائمة الرعية
5. قائمة المشتريين
6. لوحة التحكم
7. التقارير اليومية
8. التقارير الشهرية
9. كشف حساب الرعوي
10. الإعدادات

---

## ثالثًا: شاشة المبيعات
يجب إنشاء شاشة مبيعات تدعم إدخال 100 سطر في العملية الواحدة.

### أعمدة الإدخال:
1. العدد
2. السعر
3. المشتري
4. الرعوي
5. التاريخ

### أعمدة محسوبة تلقائيًا:
6. الجملة = العدد × السعر
7. الرعوي بدون تكرار لنفس تاريخ الإدخال
8. إجمالي المبلغ الذي له لنفس تاريخ الإدخال
9. الدلالة = إجمالي المبلغ الذي له × .05
10. يتم تقريب الدلالة إلى أقرب 100
11. الباقي = إجمالي المبلغ الذي له - الدلالة
12. الواصل = مجموع المنصرفات من نوع "واصل" إذا كان:
- المنصرف له = اسم الرعوي
- التاريخ في المنصرفات = تاريخ البيع
13. الصافي = الباقي - الواصل
14. المشتري بدون تكرار لنفس تاريخ الإدخال
15. إجمالي المبلغ الذي عليه لنفس التاريخ
16. الدلالة على المشتري = إجمالي المبلغ الذي عليه × .031
17. يتم تقريبها إلى أقرب 100
18. إجمالي الذي عليه مع الدلالة = إجمالي المبلغ الذي عليه + الدلالة على المشتري

### شروط شاشة المبيعات:
- لا يسمح بحفظ صف بدون عدد
- لا يسمح بحفظ صف بدون سعر
- لا يسمح بحفظ صف بدون مشتري
- لا يسمح بحفظ صف بدون رعوي
- لا يسمح بحفظ صف بدون تاريخ
- الجملة تحسب تلقائيًا
- العدد والسعر أرقام موجبة فقط

---

## رابعًا: شاشة المنصرفات
يجب إنشاء شاشة المنصرفات وتدعم إدخال 100 سطر في العملية الواحدة.

### الأعمدة:
1. المبلغ
2. المنصرف له
3. نوع المنصرف
4. التفاصيل
5. التاريخ

### نوع المنصرف يكون قائمة منسدلة تحتوي على:
- واصل
- نقد
- حساب
- واصل بدون
- دين

### شروط شاشة المنصرفات:
- المبلغ إجباري
- المنصرف له إجباري
- نوع المنصرف إجباري
- التاريخ إجباري

---

## خامسًا: شاشة المستلم
يجب إنشاء شاشة المستلم بالأعمدة التالية:
1. المبلغ
2. المستلم منه
3. التفاصيل
4. تاريخ الشراء
5. تاريخ الاستلام
6. ملاحظة

### شروط شاشة المستلم:
- المبلغ إجباري
- المستلم منه إجباري
- تاريخ الشراء إجباري
- تاريخ الاستلام إجباري

### الربط:
يتم ربط المستلم مع المبيعات بواسطة:
- اسم المشتري
- تاريخ الشراء = تاريخ البيع

---

## سادسًا: قائمة الرعية
يجب إنشاء شاشة أو تقرير باسم "قائمة الرعية".

### تحتوي على:
- حقل اسم الرعوي
- حقل تاريخ بداية البحث

### تعرض النتائج من تاريخ البداية إلى تاريخ اليوم

### الأعمدة:
1. الباقي من صفحة المبيعات
2. الواصل من المنصرفات لنفس الرعوي ونفس التاريخ ونوع المنصرف = واصل
3. الصافي = الباقي - الواصل
4. الذي مع الرعوي = مجموع المنصرفات من الأنواع:
- واصل بدون
- حساب
- دين
5. تاريخ المنصرف
6. التفاصيل

### صافي الحساب أعلى الصفحة:
صافي الحساب = مجموع الباقي - مجموع الواصل - مجموع الذي مع الرعوي

---

## سابعًا: قائمة المشتريين
يجب إنشاء قائمة بالمشتريين تحتوي على الأعمدة التالية:
1. المشتري
2. المبلغ
3. التاريخ
4. المبلغ المسلم
5. الباقي

### مصدر البيانات:
- المشتري من قائمة المبيعات بدون تكرار
- المبلغ = إجمالي الذي عليه مع الدلالة من صفحة المبيعات
- التاريخ = تاريخ البيع
- المبلغ المسلم = مجموع المبالغ من شاشة المستلم إذا كان:
- المستلم منه = اسم المشتري
- تاريخ الشراء = تاريخ البيع
- الباقي = المبلغ - المبلغ المسلم

---

## ثامنًا: لوحة التحكم
يجب إنشاء لوحة تحكم تعرض:
- إجمالي المبيعات اليوم
- إجمالي المنصرفات اليوم
- إجمالي المستلم اليوم
- صافي اليوم
- عدد عمليات البيع
- عدد عمليات المنصرفات
- عدد عمليات الاستلام
- عدد المستخدمين النشطين

---

## تاسعًا: التقارير اليومية
إنشاء تقارير يومية تشمل:
- تقرير المبيعات اليومية
- تقرير المنصرفات اليومية
- تقرير المستلم اليومي
- تقرير صافي اليوم
- إمكانية الطباعة
- إمكانية التصدير إلى PDF
- إمكانية التصدير إلى Excel

---

## عاشرًا: التقارير الشهرية
إنشاء تقارير شهرية تشمل:
- إجمالي المبيعات الشهرية
- إجمالي الدلالة
- إجمالي الباقي
- إجمالي الواصل
- إجمالي المستلم
- صافي الشهر
- مقارنة بين الأشهر

---

## حادي عشر: كشف حساب الرعوي
إنشاء كشف حساب تفصيلي للرعوي يحتوي على:
- اسم الرعوي
- من تاريخ
- إلى تاريخ
- إجمالي المبيعات
- إجمالي الدلالة
- إجمالي الباقي
- إجمالي الواصل
- إجمالي الذي مع الرعوي
- صافي الحساب
- تفاصيل الحركات

---

## ثاني عشر: الإعدادات
إنشاء شاشة إعدادات تحتوي على:
- إدارة المستخدمين
- تغيير كلمة المرور
- تحديد نسبة دلالة الرعوي
- تحديد نسبة دلالة المشتري
- تحديد قيمة التقريب
- تغيير اسم النشاط
- النسخ الاحتياطي
- استرجاع النسخة الاحتياطية

### القيم الافتراضية:
- نسبة دلالة الرعوي = .05
- نسبة دلالة المشتري = .031
- التقريب = أقرب 100

---

## ثالث عشر: قاعدة البيانات
أريد قاعدة بيانات احترافية قابلة للتوسع، وتعتمد على الجداول التالية:

### الجداول الأساسية:
1. users
2. sales_batches
3. sales_items
4. expenses
5. receipts
6. settings
7. activity_logs

### الجداول الإضافية الاحترافية:
8. buyers
9. raawis

### متطلبات قاعدة البيانات:
- استخدام مفاتيح أساسية Primary Keys
- استخدام Foreign Keys
- إنشاء العلاقات بين الجداول
- استخدام فهارس Indexes لتحسين الأداء
- تخزين كلمات المرور بشكل مشفر
- حفظ created_at و updated_at
- تصميم القاعدة بحيث تكون قابلة للتوسع

### العلاقات:
- sales_batches ترتبط مع users
- sales_items ترتبط مع sales_batches
- sales_items ترتبط مع users
- expenses ترتبط مع users
- receipts ترتبط مع users
- activity_logs ترتبط مع users
- يفضل استخدام buyers و raawis لتوحيد الأسماء بدل الاعتماد على النصوص الحرة

---

## رابع عشر: القواعد الحسابية الرسمية
1. الجملة = العدد × السعر
2. إجمالي المبلغ الذي له = مجموع الجملة لنفس الرعوي ولنفس التاريخ
3. دلالة الرعوي = إجمالي المبلغ الذي له × .05
4. يتم تقريب الدلالة إلى أقرب 100
5. الباقي = إجمالي المبلغ الذي له - الدلالة
6. الواصل = مجموع المنصرفات من نوع "واصل" لنفس الرعوي ولنفس ال

Files changed (1) hide show
  1. README.md +348 -0
README.md ADDED
@@ -0,0 +1,348 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ أريد إنشاء تطبيق محاسبي احترافي يعمل على الهاتف، متعدد المستخدمين، باللغة العربية، ويدعم صلاحيات مختلفة للمستخدمين، ويكون مناسبًا للعمل على Android مبدئيًا مع إمكانية دعم iPhone لاحقًا.
2
+
3
+ المطلوب بناء نظام كامل يتضمن:
4
+ - تطبيق هاتف
5
+ - قاعدة بيانات احترافية
6
+ - تسجيل دخول
7
+ - صلاحيات مستخدمين
8
+ - شاشات إدخال
9
+ - تقارير
10
+ - حسابات تلقائية
11
+ - ربط بين الجداول
12
+ - دعم إدخال 100 سطر في الصفحة الواحدة
13
+
14
+ ## أولًا: متطلبات عامة
15
+ 1. التطبيق باللغة العربية بالكامل.
16
+ 2. التصميم من اليمين إلى اليسار.
17
+ 3. يدعم أكثر من مستخدم.
18
+ 4. يوجد نظام تسجيل دخول باسم مستخدم وكلمة مرور.
19
+ 5. يوجد صلاحيات للمستخدمين:
20
+ - مدير النظام
21
+ - محاسب
22
+ - مدخل بيانات
23
+ - مستخدم عرض فقط
24
+ 6. يجب تسجيل اسم المستخدم الذي أضاف أو عدل السجلات.
25
+ 7. يجب تسجيل تاريخ ووقت الإضافة والتعديل.
26
+ 8. التطبيق يعمل على الهاتف.
27
+ 9. يجب أن تكون الواجهة سهلة وواضحة وتناسب شاشات الجوال.
28
+
29
+ ## ثانيًا: القوائم الرئيسية المطلوبة
30
+ النظام يجب أن يحتوي على 10 قوائم رئيسية:
31
+ 1. المبيعات
32
+ 2. المنصرفات
33
+ 3. المستلم
34
+ 4. قائمة الرعية
35
+ 5. قائمة المشتريين
36
+ 6. لوحة التحكم
37
+ 7. التقارير اليومية
38
+ 8. التقارير الشهرية
39
+ 9. كشف حساب الرعوي
40
+ 10. الإعدادات
41
+
42
+ ---
43
+
44
+ ## ثالثًا: شاشة المبيعات
45
+ يجب إنشاء شاشة مبيعات تدعم إدخال 100 سطر في العملية الواحدة.
46
+
47
+ ### أعمدة الإدخال:
48
+ 1. العدد
49
+ 2. السعر
50
+ 3. المشتري
51
+ 4. الرعوي
52
+ 5. التاريخ
53
+
54
+ ### أعمدة محسوبة تلقائيًا:
55
+ 6. الجملة = العدد × السعر
56
+ 7. الرعوي بدون تكرار لنفس تاريخ الإدخال
57
+ 8. إجمالي المبلغ الذي له لنفس تاريخ الإدخال
58
+ 9. الدلالة = إجمالي المبلغ الذي له × .05
59
+ 10. يتم تقريب الدلالة إلى أقرب 100
60
+ 11. الباقي = إجمالي المبلغ الذي له - الدلالة
61
+ 12. الواصل = مجموع المنصرفات من نوع "واصل" إذا كان:
62
+ - المنصرف له = اسم الرعوي
63
+ - التاريخ في المنصرفات = تاريخ البيع
64
+ 13. الصافي = الباقي - الواصل
65
+ 14. المشتري بدون تكرار لنفس تاريخ الإدخال
66
+ 15. إجمالي المبلغ الذي عليه لنفس التاريخ
67
+ 16. الدلالة على المشتري = إجمالي المبلغ الذي عليه × .031
68
+ 17. يتم تقريبها إلى أقرب 100
69
+ 18. إجمالي الذي عليه مع الدلالة = إجمالي المبلغ الذي عليه + الدلالة على المشتري
70
+
71
+ ### شروط شاشة المبيعات:
72
+ - لا يسمح بحفظ صف بدون عدد
73
+ - لا يسمح بحفظ صف بدون سعر
74
+ - لا يسمح بحفظ صف بدون مشتري
75
+ - لا يسمح بحفظ صف بدون رعوي
76
+ - لا يسمح بحفظ صف بدون تاريخ
77
+ - الجملة تحسب تلقائيًا
78
+ - العدد والسعر أرقام موجبة فقط
79
+
80
+ ---
81
+
82
+ ## رابعًا: شاشة المنصرفات
83
+ يجب إنشاء شاشة المنصرفات وتدعم إدخال 100 سطر في العملية الواحدة.
84
+
85
+ ### الأعمدة:
86
+ 1. المبلغ
87
+ 2. المنصرف له
88
+ 3. نوع المنصرف
89
+ 4. التفاصيل
90
+ 5. التاريخ
91
+
92
+ ### نوع المنصرف يكون قائمة منسدلة تحتوي على:
93
+ - واصل
94
+ - نقد
95
+ - حساب
96
+ - واصل بدون
97
+ - دين
98
+
99
+ ### شروط شاشة المنصرفات:
100
+ - المبلغ إجباري
101
+ - المنصرف له إجباري
102
+ - نوع المنصرف إجباري
103
+ - التاريخ إجباري
104
+
105
+ ---
106
+
107
+ ## خامسًا: شاشة المستلم
108
+ يجب إنشاء شاشة المستلم بالأعمدة التالية:
109
+ 1. المبلغ
110
+ 2. المستلم منه
111
+ 3. التفاصيل
112
+ 4. تاريخ الشراء
113
+ 5. تاريخ الاستلام
114
+ 6. ملاحظة
115
+
116
+ ### شروط شاشة المستلم:
117
+ - المبلغ إجباري
118
+ - المستلم منه إجباري
119
+ - تاريخ الشراء إجباري
120
+ - تاريخ الاستلام إجباري
121
+
122
+ ### الربط:
123
+ يتم ربط المستلم مع المبيعات بواسطة:
124
+ - اسم المشتري
125
+ - تاريخ الشراء = تاريخ البيع
126
+
127
+ ---
128
+
129
+ ## سادسًا: قائمة الرعية
130
+ يجب إنشاء شاشة أو تقرير باسم "قائمة الرعية".
131
+
132
+ ### تحتوي على:
133
+ - حقل اسم الرعوي
134
+ - حقل تاريخ بداية البحث
135
+
136
+ ### تعرض النتائج من تاريخ البداية إلى تاريخ اليوم
137
+
138
+ ### الأعمدة:
139
+ 1. الباقي من صفحة المبيعات
140
+ 2. الواصل من المنصرفات لنفس الرعوي ونفس التاريخ ونوع المنصرف = واصل
141
+ 3. الصافي = الباقي - الواصل
142
+ 4. الذي مع الرعوي = مجموع المنصرفات من الأنواع:
143
+ - واصل بدون
144
+ - حساب
145
+ - دين
146
+ 5. تاريخ المنصرف
147
+ 6. التفاصيل
148
+
149
+ ### صافي الحساب أعلى الصفحة:
150
+ صافي الحساب = مجموع الباقي - مجموع الواصل - مجموع الذي مع الرعوي
151
+
152
+ ---
153
+
154
+ ## سابعًا: قائمة المشتريين
155
+ يجب إنشاء قائمة بالمشتريين تحتوي على الأعمدة التالية:
156
+ 1. المشتري
157
+ 2. المبلغ
158
+ 3. التاريخ
159
+ 4. المبلغ المسلم
160
+ 5. الباقي
161
+
162
+ ### مصدر البيانات:
163
+ - المشتري من قائمة المبيعات بدون تكرار
164
+ - المبلغ = إجمالي الذي عليه مع الدلالة من صفحة المبيعات
165
+ - التاريخ = تاريخ البيع
166
+ - المبلغ المسلم = مجموع المبالغ من شاشة المستلم إذا كان:
167
+ - المستلم منه = اسم المشتري
168
+ - تاريخ الشراء = تاريخ البيع
169
+ - الباقي = المبلغ - المبلغ المسلم
170
+
171
+ ---
172
+
173
+ ## ثامنًا: لوحة التحكم
174
+ يجب إنشاء لوحة تحكم تعرض:
175
+ - إجمالي المبيعات اليوم
176
+ - إجمالي المنصرفات اليوم
177
+ - إجمالي المستلم اليوم
178
+ - صافي اليوم
179
+ - عدد عمليات البيع
180
+ - عدد عمليات المنصرفات
181
+ - عدد عمليات الاستلام
182
+ - عدد المستخدمين النشطين
183
+
184
+ ---
185
+
186
+ ## تاسعًا: التقارير اليومية
187
+ إنشاء تقارير يومية تشمل:
188
+ - تقرير المبيعات اليومية
189
+ - تقرير المنصرفات اليومية
190
+ - تقرير المستلم اليومي
191
+ - تقرير صافي اليوم
192
+ - إمكانية الطباعة
193
+ - إمكانية التصدير إلى PDF
194
+ - إمكانية التصدير إلى Excel
195
+
196
+ ---
197
+
198
+ ## عاشرًا: التقارير الشهرية
199
+ إنشاء تقارير شهرية تشمل:
200
+ - إجمالي المبيعات الشهرية
201
+ - إجمالي الدلالة
202
+ - إجمالي الباقي
203
+ - إجمالي الواصل
204
+ - إجمالي المستلم
205
+ - صافي الشهر
206
+ - مقارنة بين الأشهر
207
+
208
+ ---
209
+
210
+ ## حادي عشر: كشف حساب الرعوي
211
+ إنشاء كشف حساب تفصيلي للرعوي يحتوي على:
212
+ - اسم الرعوي
213
+ - من تاريخ
214
+ - إلى تاريخ
215
+ - إجمالي المبيعات
216
+ - إجمالي الدلالة
217
+ - إجمالي الباقي
218
+ - إجمالي الواصل
219
+ - إجمالي الذي مع الرعوي
220
+ - صافي الحساب
221
+ - تفاصيل الحركات
222
+
223
+ ---
224
+
225
+ ## ثاني عشر: الإعدادات
226
+ إنشاء شاشة إعدادات تحتوي على:
227
+ - إدارة المستخدمين
228
+ - تغيير كلمة المرور
229
+ - تحديد نسبة دلالة الرعوي
230
+ - تحديد نسبة دلالة المشتري
231
+ - تحديد قيمة التقريب
232
+ - تغيير اسم النشاط
233
+ - النسخ الاحتياطي
234
+ - استرجاع النسخة الاحتياطية
235
+
236
+ ### القيم الافتراضية:
237
+ - نسبة دلالة الرعوي = .05
238
+ - نسبة دلالة المشتري = .031
239
+ - التقريب = أقرب 100
240
+
241
+ ---
242
+
243
+ ## ثالث عشر: قاعدة البيانات
244
+ أريد قاعدة بيانات احترافية قابلة للتوسع، وتعتمد على الجداول التالية:
245
+
246
+ ### الجداول الأساسية:
247
+ 1. users
248
+ 2. sales_batches
249
+ 3. sales_items
250
+ 4. expenses
251
+ 5. receipts
252
+ 6. settings
253
+ 7. activity_logs
254
+
255
+ ### الجداول الإضافية الاحترافية:
256
+ 8. buyers
257
+ 9. raawis
258
+
259
+ ### متطلبات قاعدة البيانات:
260
+ - استخدام مفاتيح أساسية Primary Keys
261
+ - استخدام Foreign Keys
262
+ - إنشاء العلاقات بين الجداول
263
+ - استخدام فهارس Indexes لتحسين الأداء
264
+ - تخزين كلمات المرور بشكل مشفر
265
+ - حفظ created_at و updated_at
266
+ - تصميم القاعدة بحيث تكون قابلة للتوسع
267
+
268
+ ### العلاقات:
269
+ - sales_batches ترتبط مع users
270
+ - sales_items ترتبط مع sales_batches
271
+ - sales_items ترتبط مع users
272
+ - expenses ترتبط مع users
273
+ - receipts ترتبط مع users
274
+ - activity_logs ترتبط مع users
275
+ - يفضل استخدام buyers و raawis لتوحيد الأسماء بدل الاعتماد على النصوص الحرة
276
+
277
+ ---
278
+
279
+ ## رابع عشر: القواعد الحسابية الرسمية
280
+ 1. الجملة = العدد × السعر
281
+ 2. إجمالي المبلغ الذي له = مجموع الجملة لنفس الرعوي ولنفس التاريخ
282
+ 3. دلالة الرعوي = إجمالي المبلغ الذي له × .05
283
+ 4. يتم تقريب الدلالة إلى أقرب 100
284
+ 5. الباقي = إجمالي المبلغ الذي له - الدلالة
285
+ 6. الواصل = مجموع المنصرفات من نوع "واصل" لنفس الرعوي ولنفس التاريخ
286
+ 7. الصافي = الباقي - الواصل
287
+ 8. إجمالي المبلغ الذي عليه = مجموع الجملة لنفس المشتري ولنفس التاريخ
288
+ 9. دلالة المشتري = إجمالي المبلغ الذي عليه × .031
289
+ 10. يتم تقريبها إلى أقرب 100
290
+ 11. إجمالي الذي عليه مع الدلالة = إجمالي المبلغ الذي عليه + دلالة المشتري
291
+ 12. المبلغ المسلم = مجموع المستلم لنفس المشتري ولنفس تاريخ الشراء
292
+ 13. الباقي للمشتري = المبلغ - المبلغ المسلم
293
+ 14. صافي حساب الرعوي = مجموع الباقي - مجموع الواصل - مجموع الذي مع الرعوي
294
+
295
+ ---
296
+
297
+ ## خامس عشر: قواعد التقريب
298
+ اعتمد التقريب الرياضي إلى أقرب 100:
299
+ - 149 تصبح 100
300
+ - 150 تصبح 200
301
+ - 251 تصبح 300
302
+
303
+ ---
304
+
305
+ ## سادس عشر: متطلبات الواجهة
306
+ - واجهات عربية حديثة وواضحة
307
+ - دعم الاتجاه من اليمين إلى اليسار
308
+ - جداول سهلة الاستخدام على الهاتف
309
+ - أزرار كبيرة ومناسبة للمس
310
+ - دعم البحث والتصفية
311
+ - دعم إدخال 100 سطر بسهولة
312
+ - إظهار رسائل خطأ وتنبيه واضحة
313
+
314
+ ---
315
+
316
+ ## سابع عشر: متطلبات الأمان
317
+ - تسجيل دخول آمن
318
+ - كلمات مرور مشفرة
319
+ - صلاحيات حسب نوع المستخدم
320
+ - منع الوصول غير المصرح
321
+ - تسجيل العمليات في activity_logs
322
+ - نسخ احتياطي واسترجاع
323
+
324
+ ---
325
+
326
+ ## ثامن عشر: المطلوب من التنفيذ
327
+ أريد إخراج المشروع بالشكل التالي:
328
+ 1. تحليل النظام
329
+ 2. تصميم قاعدة البيانات
330
+ 3. SQL كامل للجداول والعلاقات
331
+ 4. Views أو Queries للتقارير
332
+ 5. API إذا لزم
333
+ 6. تصميم واجهات التطبيق شاشة بشاشة
334
+ 7. بناء التطبيق باستخدام Flutter
335
+ 8. backend احترافي باستخدام Laravel API + MySQL
336
+ 9. كود منظم وقابل للتوسع
337
+ 10. شرح طريقة التشغيل
338
+
339
+ ---
340
+
341
+ ## تاسع عشر: ملاحظات مهمة
342
+ - المقصود بعدم التكرار هو عدم التكرار في العرض والتقرير، وليس منع الإدخال
343
+ - يجب أن يكون النظام مرنًا وقابلًا للتعديل لاحقًا
344
+ - يجب الحفاظ على الدقة المحاسبية
345
+ - يجب أن تكون جميع النتائج المحسوبة دقيقة ومحدثة عند أي تعديل أو حذف
346
+ - أريد النظام بصيغة احترافية قابلة للتسليم والتنفيذ مباشرة
347
+
348
+ أنشئ النظام بالكامل بناءً على هذه المواصفات، وابدأ أولًا بتصميم قاعدة البيانات والجداول والعلاقات، ثم انتقل إلى الواجهات والمنطق الحسابي.