يُغطي هذا الموديول العيادة النسائية الكاملة: تسجيل زيارات المريضة (الشكوى، التشخيص، تاريخ آخر دورة)، صرف الروشتات وطلب الفحوصات للزوجة أو الزوج، سونار النساء مع قياسات الرحم والمبيضين والحويصلات، بالإضافة إلى «شيت النساء» الملخّص الذي يجمع التاريخ الحيضي والفحص الموضعي وزيارات المتابعة، وملف مبدئي لتقييم تأخر الإنجاب (Infertility) داخل شاشة النساء نفسها.
gyna) بتاريخ الزيارة، الشكوى الحرة والشكاوى المختارة من قائمة، التشخيصات المتعددة، الملاحظات، وتاريخ آخر دورة (LMP)، مع إمكانية إضافة شكوى/تشخيص جديد للقاموس أثناء العمل.maingyna) تُنشأ تلقائياً عند أول دخول للشاشة.gynadrugs / gynasheetdrugs) مع اختيار متسلسل (تصنيف ← اسم ← شكل ← جرعة) من كتالوج الأدوية، وعرض الروشتات السابقة وتعديلها وطباعتها مع التشخيص الأخير اختيارياً.gynainvestigation / gynasheetinvest) للزوجة أو الزوج، مع طباعة طلب الفحص وتسجيل النتائج لاحقاً.gynaus): تسجيل يوم الدورة، سُمك بطانة الرحم، قياسات المبيض الأيمن والأيسر (طول/عرض/حجم/عدد الحويصلات)، قياسات الرحم وعنق الرحم، بنموذج مبسّط أو كامل حسب إعدادات البرنامج، مع طباعة التقرير.gynausficils): قياس اسم وطول وعرض وحجم كل حويصلة على حدة، وتحديث عدد الحويصلات في سجل السونار ضمن معاملة واحدة (Transaction).gynainfertility): نوع العقم ومدته وفترة المعاشرة ونتائج الهرمونات (FSH/LH/TSH/PRL/AMH) والسائل المنوي وأشعة الصبغة، مع خطط علاجية متعددة (gynainfertilityplan) وأنواع عقم قابلة للإضافة (gynainfertilitytype).gynasheet): صفحة ملخّص واحدة لكل مريضة تتضمن «بيانات حرجة» (importantnote) تُعرض أعلى الشيت، والتاريخ الحيضي (انتظام/كمية/عسر الطمث من قوائم menstrualreg، menstrualamount، menstrualdysm) والفحص الموضعي (الفرج/المهبل/عنق الرحم من قوائم localvulva، localvagina، localcx).newvisitg): التاريخ، الدورة، LMP، وزن الجسم، الرحم والمبيض، نوع الفحص بالموجات (US / TVS / 3D TVS)، الشكوى (C/O) والتشخيص من قوائم قابلة للإضافة (newvisitgco، newvisitgdiag)، وزر TTT لفتح روشتة الشيت مباشرة.infertilitygyna): المهبل، الفحص، السبر (Sounding)، الملحقات (Adnexae) لكل ملف عقم.lastvisit لتسهيل الرجوع إليها من شاشة الاستقبال.ultrasoundgyna.php يوفر سير عمل أخصائي السونار: إنشاء تقرير سونار نسائي رسمي (جدول ultrasoundgyna التابع لموديول السونار)، تعبئته ثم اعتماده بالطباعة (done=1).| الجدول | الغرض | أهم الحقول | العلاقات |
|---|---|---|---|
gyna | سجل زيارة أمراض النساء: الشكوى والتشخيص والملاحظات وLMP، مع حقول ملخّص العقم (inf_*) | patientid, gynadate, complaint, complaintid (CSV), diagnosisid (CSV), diagnosistxt, notes, gynalmp, conditions, doctorid, inf_type, inf_fsh...inf_hsg, inf_note | patients عبر patientid، awusers عبر doctorid، diagnosis/complaint عبر CSV في diagnosisid/complaintid |
gynadrugs | أدوية الروشتة في شاشة النساء (للزوجة أو الزوج) بتاريخ محدد | patientid, date, drugid, drugname, drugtype, drugdos, forhusband, deleted, doctorid, recepittmpid, recepitdrugid | patients عبر patientid، drugs عبر drugid، awusers عبر doctorid |
gynainvestigation | طلبات الفحوصات من شاشة النساء ونتائجها | patientid, date, investid, investresult, forhusband, deleted, doctorid | patients عبر patientid، invests عبر investid |
gynasheet | رأس «شيت النساء»: سجل واحد لكل مريضة يحمل البيانات الحرجة | patientid, importantnote, usvsdtv | patients عبر patientid، تتبعه زيارات newvisitg |
gynasheetdrugs | أدوية روشتة «شيت النساء» (بنية مطابقة تماماً لـ gynadrugs) | patientid, date, drugid, drugname, drugtype, drugdos, forhusband, deleted, doctorid | patients عبر patientid، drugs عبر drugid |
gynasheetinvest | فحوصات «شيت النساء» (بنية مطابقة لـ gynainvestigation) | patientid, date, investid, investresult, forhusband, deleted, doctorid | patients عبر patientid، invests عبر investid |
gynaus | سونار زيارات النساء: يوم الدورة، البطانة، قياسات المبيضين والرحم وعنق الرحم وعدد الحويصلات | patientid, date, day, endo, ovrayll/lw/lv/lno/lsize, ovrayrl/rw/rv/rno/rsize, uterusl/w/v, cervixl/w/v, lfolliclesno, rfolliclesno, notes, doctorid, deleted, mainantenatalid | patients عبر patientid، awusers عبر doctorid، mainantenatal عبر mainantenatalid (استنتاج) |
gynausficils | تفاصيل قياس كل حويصلة (طول/عرض/حجم) لكل جهة في سونار معيّن | gynausid, name, length, width, volume, type (0=أيسر،1=أيمن), sysdate | gynaus عبر gynausid |
gynainfertility | ملخّص تقييم العقم: سجل واحد لكل مريضة (نوع، مدد، هرمونات، سائل منوي، HSG) | patientid, date, type, since_y/m, stay_y/m, stay_hus, abortion, semen, fsh, lh, tsh, prl, amh, hsg, note | patients عبر patientid، gynainfertilitytype عبر type |
gynainfertilityplan | سطور خطة علاج العقم المتعددة لكل مريضة | patientid, plan, itr, deleted | patients عبر patientid |
gynainfertilitytype | قاموس أنواع العقم (Primary/Secondary...) قابل للإضافة من الشاشة | name, deleted | تُشير إليه gynainfertility.type |
infertilitygyna | سجل الفحص النسائي داخل ملف موديول العقم (Vagina / Exam / Sounding / Adnexae) | infertid, date, vagina, exam, sounding, adenxae | infertility عبر infertid |
maingyna | ملاحظات وخطة عامة أعلى شاشة النساء؛ سجل واحد لكل مريضة يُنشأ تلقائياً | patientid, create_date, notes, plan | patients عبر patientid |
newvisitg | زيارات المتابعة داخل «شيت النساء» (دورة، LMP، وزن، رحم/مبيض، نوع الموجات، شكوى وتشخيص) | gynasheetid, date (varchar), newvisitcycles, lmp, bw, ut, ov, newvisitgco (CSV), newvisitgdiag (CSV), usvsdtv, noteg, plan | gynasheet عبر gynasheetid، newvisitgco/newvisitgdiag عبر CSV |
newvisitgco | قاموس شكاوى (C/O) زيارات الشيت — يضيفه المستخدم أثناء العمل | title, del | تُشير إليه newvisitg.newvisitgco (CSV) |
newvisitgdiag | قاموس تشخيصات زيارات الشيت | title, del | تُشير إليه newvisitg.newvisitgdiag (CSV) |
menstrualamount | قاموس كمية الدورة الشهرية (التاريخ الحيضي) | title, del | تُشير إليه infertilitysheet.menstrualamount |
menstrualdysm | قاموس عسر الطمث (Dysmenorrhea) | title, del | تُشير إليه infertilitysheet.menstrualdysm |
menstrualreg | قاموس انتظام الدورة الشهرية | title, del | تُشير إليه infertilitysheet.menstrualreg |
localcx | قاموس نتائج فحص عنق الرحم في الفحص الموضعي | title, del | تُشير إليه infertilitysheet.localcx (CSV) |
localvagina | قاموس نتائج فحص المهبل في الفحص الموضعي | title, del | تُشير إليه infertilitysheet.localvagina (CSV) |
localvulva | قاموس نتائج فحص الفرج في الفحص الموضعي | title, del | تُشير إليه infertilitysheet.localvulva (CSV) |
gyna.php?patientid=) فيُسجَّل الدخول في lastvisit ويُنشأ تلقائياً سجل maingyna (ملاحظات/خطة) إن لم يوجد، وتُعرض كل الزيارات السابقة مرتبة تنازلياً.newrow) فتُنشأ صفّاً فارغاً بتاريخ اليوم في gyna، ثم يُحرَّر كل حقل (الشكوى، التشخيصات المتعددة، LMP، الملاحظات) فورياً عبر update الذي يحفظ عموداً واحداً في كل نداء.complaint وdiagnosis المشتركَين وتُخزَّن كسلسلة معرّفات مفصولة بفواصل؛ ويمكن إضافة مصطلح جديد للقاموس مباشرة (adddiagnosis).gynadrugs بتاريخ اليوم (للزوجة forhusband=0 أو الزوج forhusband=1) ويختار الدواء بتسلسل تصنيف/اسم/شكل/جرعة، ثم يطبع الروشتة (مع التشخيص الأخير إذا فُعّل print_diag في الإعدادات).investcats تحفظ صفوف gynainvestigation وتطبع طلب الفحص؛ وتُسجَّل النتائج لاحقاً في investresult.gynaus (نموذج مبسّط أو كامل حسب programesetting.ultrasound)، وتفتح نافذة الحويصلات لكل مبيض لتحفظ القياسات في gynausficils وتحدّث lfolliclesno/rfolliclesno داخل معاملة واحدة، مع إمكانية طباعة تقارير سونار مختارة.getInfdata): تُنشأ تلقائياً سجل gynainfertility وسطر خطة gynainfertilityplan إن لم يوجدا، وتُعبّأ بيانات النوع والمدد والهرمونات، مع إضافة أنواع جديدة إلى gynainfertilitytype.gynasheet.php): تُنشأ تلقائياً سجلا gynasheet وinfertilitysheet للمريضة؛ يدوَّن التاريخ الحيضي والفحص الموضعي عبر قوائم منسدلة تُحفظ في أعمدة infertilitysheet، وتُضاف زيارات متابعة newvisitg (إجراء append) بشكواها وتشخيصها وروشتتها (gynasheetdrugs) وفحوصاتها (gynasheetinvest).getselectajax يضيف عنواناً جديداً للجدول المرجعي، وgetdataselect/deldataselect يديران حذف القيم منطقياً.gynasheet00.php نسخة قديمة بديلة تعرض الشيت مدموجاً مع زيارات gyna وسونار gynaus في صفحة واحدة (منطق مكرر).infertility تُنشأ معه تلقائياً صفوف فحص نسائي infertilitygyna ضمن مجموعة جداول الملف، وتُحرَّر حقولها (Vagina/Exam/Sounding/Adnexae) موضعياً.ultrasoundgyna.php لإنشاء تقرير سونار نسائي رسمي مسوّدة (done=0) ثم اعتماده بالطباعة (done=1) — في جدول ultrasoundgyna التابع لموديول السونار.patients عبر patientid، وتُقرأ أسماء الزوجة/الزوج وألقابهما (wifetypes/husbandtypes) للطباعة.doctorid في gyna وgynadrugs وgynainvestigation وgynaus يشير إلى awusers.user_id، وقائمة أخصائيي السونار تُجلب بشرط positionid = 4.gynadrugs.drugid وgynasheetdrugs.drugid يشيران إلى drugs.id مع نسخ اسم الدواء denormalized.gynainvestigation.investid وgynasheetinvest.investid يشيران إلى invests.id المجمّعة في investcats.gyna.complaintid ← complaint.id وgyna.diagnosisid ← diagnosis.id (CSV).infertilitygyna.infertid ← infertility.id، وشاشة الشيت تنشئ وتعرض infertilitysheet الذي تُخزَّن فيه قيم قوائم الحيض والفحص الموضعي.gynaus.mainantenatalid يربط سونار النساء بسجل mainantenatal (استنتاج من اسم العمود).ultrasoundgyna.php يدير جدول ultrasoundgyna (تقرير أخصائي السونار) المرتبط بالمريضة عبر patientid.gynaph المرتبط بقاموسَي presenthistoryquestions/presenthistoryanswers.lastvisit (patientid + اسم الكنترولر).programesetting تتحكم في شكل نموذج السونار (مبسّط/كامل) وطباعة التشخيص مع الروشتة وغيرها.conditions في gyna، وdeleted في جداول الأدوية والفحوصات والسونار، وdel في جداول القواميس.infertility.php يستعلم بشرط del = 0 على infertilitygyna بينما العمود غير موجود في تعريف الجدول بالـ dump — يضيفه RedBeanPHP في الوضع المرن وقت التشغيل (استنتاج).gyna.diagnosisid وgyna.complaintid وnewvisitg.newvisitgco وnewvisitg.newvisitgdiag وأعمدة الحيض والفحص الموضعي على infertilitysheet — يستحيل معها الاستعلام والتقارير بكفاءة.gynadrugs ≡ gynasheetdrugs وgynainvestigation ≡ gynasheetinvest (نفس البنية حرفياً لشاشتين مختلفتين)، كما تتكرر بيانات العقم بين gynainfertility وحقول gyna.inf_*.gynasheet00.php نسخة قديمة مكررة من منطق gyna.php + gynasheet.php معاً (Legacy duplicate).newvisitg.date وnewvisitg.lmp من نوع varchar وليست تواريخ، والقياسات الطبية في gynaus/gynausficils مخزّنة varchar(50).getselectajax.update/Add/append/deleterow) — مخاطرة أمنية تسمح بالكتابة في أي جدول، إضافة إلى بناء SQL بسلاسل نصية في بحث الأدوية (search).index تدمج diagnosistxt داخل complaint وتحفظ السجل أثناء عرض الصفحة (ترحيل بيانات خفي).drugname داخل جداول الروشتات، وحقل investresult نصي حر بلا وحدات أو مدى مرجعي.GynaVisit (من جدول gyna) مع جدولي ربط Pivot: gyna_visit_complaints وgyna_visit_diagnoses بدلاً من حقول CSV، وحذف diagnosistxt بعد ترحيل محتواه (الدمج يتم أصلاً في الكود الحالي).gyna_prescriptions + gyna_prescription_items بدمج gynadrugs وgynasheetdrugs مع عمود context (visit / sheet)، واستبدال forhusband بعمود subject (wife/husband)، وربط drug_id بمفتاح أجنبي حقيقي.gyna_investigation_requests بدمج gynainvestigation وgynasheetinvest بنفس أسلوب الدمج، مع فصل النتيجة في جدول/أعمدة منظّمة (قيمة، وحدة، تاريخ النتيجة).GynaUltrasound (من gynaus) مع تحويل كل القياسات إلى decimal، وموديل تابع GynaUltrasoundFollicle (من gynausficils) بعلاقة hasMany وعمود side (enum: left/right) بدل type الرقمي؛ وإلغاء عمودي العدّ lfolliclesno/rfolliclesno والاكتفاء بالعد من العلاقة.GynaSheet + GynaSheetVisit (من newvisitg) مع تحويل date وlmp إلى نوع date فعلي، وتحويل usvsdtv إلى enum (US/TVS/3D_TVS)، وجداول Pivot للشكاوى والتشخيصات بدل CSV.menstrualreg، menstrualamount، menstrualdysm، localcx، localvagina، localvulva، newvisitgco، newvisitgdiag، gynainfertilitytype) في جدول مرجعي موحّد lookups (type, title, is_active) أو Enums مزروعة بقيم معتمدة طبياً، لأنها جميعاً بنفس البنية (id/title/del) وفارغة في النسخة الحالية.gynainfertility وحقول gyna.inf_* في موديل واحد InfertilityProfile مرتبط بالمريضة، مع InfertilityPlan (من gynainfertilityplan)، ونقل infertilitygyna إلى ترحيل موديول العقم كموديل InfertilityGynaExam مرتبط بـ infertility_id.maingyna إلى حقلي notes وplan ضمن ملف المريضة النسائي (GynaProfile) بدلاً من جدول مستقل.deleted_at (SoftDeletes في Laravel) بدل conditions/deleted/del، وإضافة created_at/updated_at ومُعرّف الطبيب الموحّد doctor_id بمفاتيح أجنبية.gynasheet00.php نهائياً عند النقل (شاشة قديمة مكررة) والاكتفاء بشاشة شيت واحدة في واجهة Angular.