feat(opd): convert Formulation into standardized Form/Type select dropdown matching OPD consult

This commit is contained in:
DevSoftTech Server 2026-09-22 18:55:08 +05:30
parent 519a52bd73
commit c870e7eccc
2 changed files with 110 additions and 6 deletions

View File

@ -85,8 +85,27 @@
<input type="text" id="med_item_name" class="form-control form-control-sm" placeholder="Enter Medicine Name">
</div>
<div class="mb-2">
<label class="form-label">Formulation</label>
<input type="text" id="med_formulation" class="form-control form-control-sm" placeholder="Formulation">
<label class="form-label">Formulation / Type</label>
<select id="med_formulation" class="form-select form-select-sm">
<option value="">Select Type</option>
<option value="TAB">TAB (Tablet)</option>
<option value="CAP">CAP (Capsule)</option>
<option value="SYR">SYR (Syrup)</option>
<option value="INJ">INJ (Injection)</option>
<option value="CREAM">CREAM (Cream)</option>
<option value="OINT">OINT (Ointment)</option>
<option value="GEL">GEL (Gel)</option>
<option value="EYE DROP">EYE DROP</option>
<option value="EAR DROP">EAR DROP</option>
<option value="DROPS">DROPS</option>
<option value="RESPULES">RESPULES</option>
<option value="SACHET">SACHET</option>
<option value="LOTION">LOTION</option>
<option value="SPRAY">SPRAY</option>
<option value="PATCH">PATCH</option>
<option value="POWDER">POWDER</option>
<option value="SUPPOSITORY">SUPPOSITORY</option>
</select>
</div>
<div class="mb-2">
<label class="form-label">Generic Name</label>
@ -434,7 +453,40 @@
row = row || {};
$('#med_id').val(row.id || 0);
$('#med_item_name').val(row.item_name || '');
$('#med_formulation').val(row.formulation || '');
var rawForm = (row.formulation || '').toString().trim().toUpperCase();
if (rawForm === 'TABLETS' || rawForm === 'TABLET' || rawForm === 'TABS') {
rawForm = 'TAB';
} else if (rawForm === 'CAPSULES' || rawForm === 'CAPSULE' || rawForm === 'CAPS') {
rawForm = 'CAP';
} else if (rawForm === 'SYRUP' || rawForm === 'SYRUPS') {
rawForm = 'SYR';
} else if (rawForm === 'INJECTIONS' || rawForm === 'INJECTION') {
rawForm = 'INJ';
} else if (rawForm === 'OINTMENT' || rawForm === 'OINTMENTS') {
rawForm = 'OINT';
} else if (rawForm === 'CREAMS') {
rawForm = 'CREAM';
} else if (rawForm === 'GELS') {
rawForm = 'GEL';
} else if (rawForm === 'EYE DROPS') {
rawForm = 'EYE DROP';
} else if (rawForm === 'EAR DROPS') {
rawForm = 'EAR DROP';
} else if (rawForm === 'POWDERS') {
rawForm = 'POWDER';
} else if (rawForm === 'LOTIONS') {
rawForm = 'LOTION';
} else if (rawForm === 'SPRAYS') {
rawForm = 'SPRAY';
} else if (rawForm === 'PATCHES') {
rawForm = 'PATCH';
} else if (rawForm === 'SACHETS') {
rawForm = 'SACHET';
}
if (rawForm && !$('#med_formulation option[value="' + rawForm.replace(/"/g, '&quot;') + '"]').length) {
$('#med_formulation').append('<option value="' + $('<div>').text(rawForm).html() + '">' + $('<div>').text(rawForm).html() + '</option>');
}
$('#med_formulation').val(rawForm);
$('#med_genericname').val(row.genericname || '');
$('#med_salt_name').val(row.salt_name || row.sal_name || row.salt || row.saltname || '');
$('#med_dosage_restriction').val(row.dosage_restriction || row.dose_restriction || row.restriction_note || row.restriction || '');

View File

@ -41,8 +41,27 @@
</div>
<div class="mb-2">
<label class="form-label">Type</label>
<input type="text" id="rx_med_type" class="form-control form-control-sm" placeholder="TAB/CAP/SYR/INJ">
<label class="form-label">Form / Type</label>
<select id="rx_med_type" class="form-select form-select-sm">
<option value="">Select Type</option>
<option value="TAB">TAB (Tablet)</option>
<option value="CAP">CAP (Capsule)</option>
<option value="SYR">SYR (Syrup)</option>
<option value="INJ">INJ (Injection)</option>
<option value="CREAM">CREAM (Cream)</option>
<option value="OINT">OINT (Ointment)</option>
<option value="GEL">GEL (Gel)</option>
<option value="EYE DROP">EYE DROP</option>
<option value="EAR DROP">EAR DROP</option>
<option value="DROPS">DROPS</option>
<option value="RESPULES">RESPULES</option>
<option value="SACHET">SACHET</option>
<option value="LOTION">LOTION</option>
<option value="SPRAY">SPRAY</option>
<option value="PATCH">PATCH</option>
<option value="POWDER">POWDER</option>
<option value="SUPPOSITORY">SUPPOSITORY</option>
</select>
</div>
<div class="mb-2">
@ -223,7 +242,40 @@
$('#rx_med_item_id').val(row.id || 0);
$('#rx_med_id').val(row.med_id || 0);
$('#rx_med_name').val(row.med_name || '');
$('#rx_med_type').val(row.med_type || '');
var rawType = (row.med_type || '').toString().trim().toUpperCase();
if (rawType === 'TABLETS' || rawType === 'TABLET' || rawType === 'TABS') {
rawType = 'TAB';
} else if (rawType === 'CAPSULES' || rawType === 'CAPSULE' || rawType === 'CAPS') {
rawType = 'CAP';
} else if (rawType === 'SYRUP' || rawType === 'SYRUPS') {
rawType = 'SYR';
} else if (rawType === 'INJECTIONS' || rawType === 'INJECTION') {
rawType = 'INJ';
} else if (rawType === 'OINTMENT' || rawType === 'OINTMENTS') {
rawType = 'OINT';
} else if (rawType === 'CREAMS') {
rawType = 'CREAM';
} else if (rawType === 'GELS') {
rawType = 'GEL';
} else if (rawType === 'EYE DROPS') {
rawType = 'EYE DROP';
} else if (rawType === 'EAR DROPS') {
rawType = 'EAR DROP';
} else if (rawType === 'POWDERS') {
rawType = 'POWDER';
} else if (rawType === 'LOTIONS') {
rawType = 'LOTION';
} else if (rawType === 'SPRAYS') {
rawType = 'SPRAY';
} else if (rawType === 'PATCHES') {
rawType = 'PATCH';
} else if (rawType === 'SACHETS') {
rawType = 'SACHET';
}
if (rawType && !$('#rx_med_type option[value="' + rawType.replace(/"/g, '&quot;') + '"]').length) {
$('#rx_med_type').append('<option value="' + $('<div>').text(rawType).html() + '">' + $('<div>').text(rawType).html() + '</option>');
}
$('#rx_med_type').val(rawType);
$('#rx_genericname').val(row.genericname || '');
$('#rx_dosage').val((row.dosage || '').toString());
ensureOption($('#rx_dosage_when'), row.dosage_when || '');