Better dispensing
This commit is contained in:
+27
-40
@@ -188,33 +188,24 @@
|
||||
<option value="">-- Select a drug variant --</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div id="batchInfoSection" style="display: none; margin: 15px 0; padding: 10px; background: #f5f5f5; border-radius: 4px;">
|
||||
<h4 style="margin-top: 0;">Available Batches (FEFO Order)</h4>
|
||||
<div id="batchInfoContent">
|
||||
<p class="loading">Loading batches...</p>
|
||||
|
||||
<div class="form-group">
|
||||
<label>Dispense Mode *</label>
|
||||
<div style="display: flex; gap: 18px; align-items: center; flex-wrap: wrap; margin-top: 6px;">
|
||||
<label style="display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: 500;">
|
||||
<input type="radio" name="dispenseMode" id="dispenseModeQuantity" value="subunit" checked>
|
||||
Quantity
|
||||
</label>
|
||||
<label style="display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: 500;">
|
||||
<input type="radio" name="dispenseMode" id="dispenseModePack" value="pack">
|
||||
Whole Pack
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="dispenseBatchSelect">Preferred Batch Override</label>
|
||||
<select id="dispenseBatchSelect" onchange="updateAllocationPreview()">
|
||||
<option value="">Automatic FEFO Selection</option>
|
||||
</select>
|
||||
<small style="display: block; margin-top: 6px; color: #666;">Leave on automatic to use the earliest-expiry batch first. Choose a batch here to consume that batch first instead.</small>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="dispenseMode">Dispense Mode *</label>
|
||||
<select id="dispenseMode" onchange="updateDispenseModeUi()">
|
||||
<option value="subunit">Subunit Quantity</option>
|
||||
<option value="pack">Whole Packs</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group" id="dispenseQuantityGroup">
|
||||
<label for="dispenseQuantity">Quantity *</label>
|
||||
<input type="number" id="dispenseQuantity" step="0.1" onchange="updateAllocationPreview()">
|
||||
<input type="number" id="dispenseQuantity" step="0.1">
|
||||
</div>
|
||||
|
||||
<div class="form-row" id="dispensePackRow" style="display: none;">
|
||||
@@ -226,22 +217,23 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="dispensePackCount">Pack Count *</label>
|
||||
<input type="number" id="dispensePackCount" min="0.0001" step="0.0001" onchange="updateDispenseQuantityFromPack()">
|
||||
<input type="number" id="dispensePackCount" min="1" step="1" onchange="updateDispenseQuantityFromPack()">
|
||||
<small id="dispensePackPreview" style="display: block; margin-top: 6px; color: #666;">Select a pack and whole-number count.</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label>
|
||||
<input type="checkbox" id="dispenseAllowSplit" onchange="updateAllocationPreview()">
|
||||
Allow Split Across Multiple Batches
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div id="allocationPreviewSection" style="display: none; margin: 15px 0; padding: 10px; background: #f0f8ff; border-radius: 4px; border-left: 3px solid #2196F3;">
|
||||
<h4 style="margin-top: 0;">Allocation Preview</h4>
|
||||
<div id="allocationPreviewContent">
|
||||
<p class="loading">Loading allocation...</p>
|
||||
|
||||
<div id="batchInfoSection" style="display: none; margin: 15px 0; padding: 12px; background: #f5f5f5; border-radius: 4px;">
|
||||
<h4 style="margin-top: 0; margin-bottom: 4px;">Batch Allocation</h4>
|
||||
<p style="margin: 0 0 10px; color: #666;">Batches are shown in FEFO order. Adjust the allocation against each batch so the total matches the requested dispense amount.</p>
|
||||
<details id="expiredBatchDetails" style="display: none; margin-bottom: 10px; background: #fffaf0; border: 1px solid #f5d08a; border-radius: 4px; padding: 8px 10px;">
|
||||
<summary style="cursor: pointer; font-weight: 600; color: #7a4f01;">Show expired batches</summary>
|
||||
<div id="expiredBatchContent" style="margin-top: 10px;"></div>
|
||||
</details>
|
||||
<div id="batchAllocationSummary" style="display: none; margin-bottom: 10px; padding: 8px 10px; background: #f0f8ff; border-left: 3px solid #2196F3; border-radius: 4px;">
|
||||
<div id="batchAllocationSummaryContent"></div>
|
||||
</div>
|
||||
<div id="batchInfoContent">
|
||||
<p class="loading">Loading batches...</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -250,11 +242,6 @@
|
||||
<input type="text" id="dispenseAnimal">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="dispenseUser">Dispensed by *</label>
|
||||
<input type="text" id="dispenseUser">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="dispenseNotes">Notes</label>
|
||||
<input type="text" id="dispenseNotes" placeholder="Optional">
|
||||
|
||||
Reference in New Issue
Block a user