This commit is contained in:
Marwan Alwali 2025-11-06 14:27:26 +03:00
parent f6329ffa10
commit 6e50a3f12e
8 changed files with 4201 additions and 5 deletions

View File

@ -21,6 +21,28 @@ class PatientForm(forms.ModelForm):
'caregiver_name', 'caregiver_phone', 'caregiver_relationship',
'emergency_contact'
]
labels = {
'first_name_en': _('First Name (English)'),
'father_name_en': _("Father's Name (English)"),
'grandfather_name_en': _("Grandfather's Name (English)"),
'last_name_en': _('Last Name (English)'),
'first_name_ar': _('First Name (Arabic)'),
'father_name_ar': _("Father's Name (Arabic)"),
'grandfather_name_ar': _("Grandfather's Name (Arabic)"),
'last_name_ar': _('Last Name (Arabic)'),
'national_id': _('National ID'),
'date_of_birth': _('Date of Birth'),
'sex': _('Gender'),
'phone': _('Phone Number'),
'email': _('Email Address'),
'address': _('Address'),
'city': _('City'),
'postal_code': _('Postal Code'),
'caregiver_name': _('Caregiver Name'),
'caregiver_phone': _('Caregiver Phone'),
'caregiver_relationship': _('Relationship to Patient'),
'emergency_contact': _('Emergency Contact Information'),
}
widgets = {
'date_of_birth': forms.DateInput(attrs={'type': 'date', 'class': 'form-control'}),
'first_name_en': forms.TextInput(attrs={'class': 'form-control'}),

View File

@ -25,7 +25,7 @@ logger = logging.getLogger(__name__)
def generate_mrn(tenant):
"""
Generate unique Medical Record Number (MRN).
Format: MRN-YYYY-NNNNNN
Format: YYYY-NNNNNN
"""
current_year = timezone.now().year
@ -38,14 +38,14 @@ def generate_mrn(tenant):
if last_patient and last_patient.mrn:
# Extract number from last MRN
try:
last_number = int(last_patient.mrn.split('-')[-1])
last_number = int(last_patient.mrn[-1])
new_number = last_number + 1
except (ValueError, IndexError):
new_number = 1
else:
new_number = 1
return f"MRN-{current_year}-{new_number:06d}"
return f"{new_number:06d}"
def generate_file_number(tenant):
@ -63,14 +63,14 @@ def generate_file_number(tenant):
if last_file and last_file.file_number:
try:
last_number = int(last_file.file_number.split('-')[-1])
last_number = int(last_file.file_number[-1])
new_number = last_number + 1
except (ValueError, IndexError):
new_number = 1
else:
new_number = 1
return f"FILE-{current_year}-{new_number:06d}"
return f"{new_number:06d}"
def generate_subfile_number(file, clinic):

View File

@ -69,36 +69,47 @@
{% endif %}
<div class="col-md-6">
<label for="{{ form.first_name_en.id_for_label }}" class="form-label">{{ form.first_name_en.label }}</label>
{{ form.first_name_en }}
</div>
<div class="col-md-6">
<label for="{{ form.father_name_en.id_for_label }}" class="form-label">{{ form.father_name_en.label }}</label>
{{ form.father_name_en }}
</div>
<div class="col-md-6">
<label for="{{ form.grandfather_name_en.id_for_label }}" class="form-label">{{ form.grandfather_name_en.label }}</label>
{{ form.grandfather_name_en }}
</div>
<div class="col-md-6">
<label for="{{ form.last_name_en.id_for_label }}" class="form-label">{{ form.last_name_en.label }}</label>
{{ form.last_name_en }}
</div>
<div class="col-md-6">
<label for="{{ form.first_name_ar.id_for_label }}" class="form-label">{{ form.first_name_ar.label }}</label>
{{ form.first_name_ar }}
</div>
<div class="col-md-6">
<label for="{{ form.father_name_ar.id_for_label }}" class="form-label">{{ form.father_name_ar.label }}</label>
{{ form.father_name_ar }}
</div>
<div class="col-md-6">
<label for="{{ form.grandfather_name_ar.id_for_label }}" class="form-label">{{ form.grandfather_name_ar.label }}</label>
{{ form.grandfather_name_ar }}
</div>
<div class="col-md-6">
<label for="{{ form.last_name_ar.id_for_label }}" class="form-label">{{ form.last_name_ar.label }}</label>
{{ form.last_name_ar }}
</div>
<div class="col-md-6">
<label for="{{ form.national_id.id_for_label }}" class="form-label">{{ form.national_id.label }}</label>
{{ form.national_id }}
</div>
<div class="col-md-6">
<label for="{{ form.date_of_birth.id_for_label }}" class="form-label">{{ form.date_of_birth.label }}</label>
{{ form.date_of_birth }}
</div>
<div class="col-md-6">
<label for="{{ form.sex.id_for_label }}" class="form-label">{{ form.sex.label }}</label>
{{ form.sex }}
</div>
</div>
@ -115,18 +126,23 @@
<div class="card-body">
<div class="row g-3">
<div class="col-md-6">
<label for="{{ form.phone.id_for_label }}" class="form-label">{{ form.phone.label }}</label>
{{ form.phone }}
</div>
<div class="col-md-6">
<label for="{{ form.email.id_for_label }}" class="form-label">{{ form.email.label }}</label>
{{ form.email }}
</div>
<div class="col-md-12">
<label for="{{ form.address.id_for_label }}" class="form-label">{{ form.address.label }}</label>
{{ form.address }}
</div>
<div class="col-md-6">
<label for="{{ form.city.id_for_label }}" class="form-label">{{ form.city.label }}</label>
{{ form.city }}
</div>
<div class="col-md-6">
<label for="{{ form.postal_code.id_for_label }}" class="form-label">{{ form.postal_code.label }}</label>
{{ form.postal_code }}
</div>
</div>
@ -143,12 +159,15 @@
<div class="card-body">
<div class="row g-3">
<div class="col-md-12">
<label for="{{ form.caregiver_name.id_for_label }}" class="form-label">{{ form.caregiver_name.label }}</label>
{{ form.caregiver_name }}
</div>
<div class="col-md-6">
<label for="{{ form.caregiver_phone.id_for_label }}" class="form-label">{{ form.caregiver_phone.label }}</label>
{{ form.caregiver_phone }}
</div>
<div class="col-md-6">
<label for="{{ form.caregiver_relationship.id_for_label }}" class="form-label">{{ form.caregiver_relationship.label }}</label>
{{ form.caregiver_relationship }}
</div>
</div>
@ -163,6 +182,7 @@
</h5>
</div>
<div class="card-body">
<label for="{{ form.emergency_contact.id_for_label }}" class="form-label">{{ form.emergency_contact.label }}</label>
{{ form.emergency_contact }}
</div>
</div>

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
static/img/.DS_Store vendored

Binary file not shown.