瀏覽代碼

When NA bills as generic - add checkboxes to confirm work was done

Vijayakrishnan 3 年之前
父節點
當前提交
2bd2ac3bc8

+ 53 - 51
resources/views/app/generic-bills/add-bill-form/_default-script.blade.php

@@ -1,63 +1,65 @@
 <script>
     (function() {
-        let selectedGenericRate = 0;
-        window.switchGenericRate = function(_trigger) {
-            selectedGenericRate = 0;
-            if($(_trigger).find('option:selected').first().length) {
-                selectedGenericRate = +($(_trigger).find('option:selected').first().attr('data-amount'));
-            }
-            $(_trigger).closest('form').find('[name="numberOfUnits"]').val('');
+        function init() {
+            let selectedGenericRate = 0;
+            window.switchGenericRate = function (_trigger) {
+                selectedGenericRate = 0;
+                if ($(_trigger).find('option:selected').first().length) {
+                    selectedGenericRate = +($(_trigger).find('option:selected').first().attr('data-amount'));
+                }
+                $(_trigger).closest('form').find('[name="numberOfUnits"]').val('');
 
-            @if($genericRates && count($genericRates) && count($genericRates) === 1)
-                selectedGenericRate = {{ $genericRates[0]->amount }};
-            @endif
+                @if($genericRates && count($genericRates) && count($genericRates) === 1)
+                    selectedGenericRate = {{ $genericRates[0]->amount }};
+                @endif
 
-            // max num units to limit at $15
-            if($(_trigger).attr('data-entity-type') === 'Note') {
-                let maxNABillableAmount = 15,
-                    amountPer5Minutes = selectedGenericRate / 12,
-                    maxNumberOf5Minutes =  Math.ceil(maxNABillableAmount / amountPer5Minutes),
-                    maxHours = (maxNumberOf5Minutes * 5) / 60,
-                    unitsSelect = $(_trigger).closest('form').find('[name="numberOfUnits"]');
-                unitsSelect.find('option').each(function() {
-                    if(this.value) {
-                        if(+this.value > maxHours) {
-                            $(this).hide();
+                // max num units to limit at $15
+                if ($(_trigger).attr('data-entity-type') === 'Note') {
+                    let maxNABillableAmount = 15,
+                        amountPer5Minutes = selectedGenericRate / 12,
+                        maxNumberOf5Minutes = Math.ceil(maxNABillableAmount / amountPer5Minutes),
+                        maxHours = (maxNumberOf5Minutes * 5) / 60,
+                        unitsSelect = $(_trigger).closest('form').find('[name="numberOfUnits"]');
+                    unitsSelect.find('option').each(function () {
+                        if (this.value) {
+                            if (+this.value > maxHours) {
+                                $(this).hide();
+                            }
+                            else {
+                                $(this).show();
+                            }
                         }
                         else {
                             $(this).show();
                         }
-                    }
-                    else {
-                        $(this).show();
-                    }
-                });
-            }
+                    });
+                }
 
-            calculateGenericBillAmount($(_trigger).closest('form').find('[name="numberOfUnits"]'));
-        };
-        window.calculateGenericBillAmount = function(_trigger) {
-            _trigger = $(_trigger);
-            let amountTarget = _trigger.closest('form').find('[calculated-generic-amount]');
-            if(!_trigger.find('option:selected').length) {
-                amountTarget.text('');
-                return;
-            }
-            let hours = +_trigger.find('option:selected').attr('value'),
-                reimbursable = hours * selectedGenericRate;
-            if(isNaN(reimbursable)) reimbursable = 0;
-            amountTarget.html('<b>Reimbursable:</b> $' + reimbursable.toFixed(2));
-        };
-        window.updateGenericBillAction = function(_trigger) {
-            let actions = [];
-            $(_trigger).closest('.generic-bill-actions').find('.generic-bill-action:checked').each(function() {
-                actions.push($(this).attr('data-action'));
-            });
-            $(_trigger).closest('.generic-bill-actions').find('[name="genericDescription"]').val(actions.join("\n"));
-            return false;
-        };
-        @if($genericRates && count($genericRates) && count($genericRates) === 1)
+                calculateGenericBillAmount($(_trigger).closest('form').find('[name="numberOfUnits"]'));
+            };
+            window.calculateGenericBillAmount = function (_trigger) {
+                _trigger = $(_trigger);
+                let amountTarget = _trigger.closest('form').find('[calculated-generic-amount]');
+                if (!_trigger.find('option:selected').length) {
+                    amountTarget.text('');
+                    return;
+                }
+                let hours = +_trigger.find('option:selected').attr('value'),
+                    reimbursable = hours * selectedGenericRate;
+                if (isNaN(reimbursable)) reimbursable = 0;
+                amountTarget.html('<b>Reimbursable:</b> $' + reimbursable.toFixed(2));
+            };
+            window.updateGenericBillAction = function (_trigger) {
+                let actions = [];
+                $(_trigger).closest('.generic-bill-actions').find('.generic-bill-action:checked').each(function () {
+                    actions.push($(this).attr('data-action'));
+                });
+                $(_trigger).closest('.generic-bill-actions').find('[name="genericDescription"]').val(actions.join("<br>"));
+            };
+            @if($genericRates && count($genericRates) && count($genericRates) === 1)
             switchGenericRate($('[name="code"][data-entity-type]'));
-        @endif
+            @endif
+        }
+        addMCInitializer('init-generic-add-bill', init);
     }).call(window);
 </script>

+ 1 - 1
resources/views/app/generic-bills/inline.blade.php

@@ -75,7 +75,7 @@ $genericBills = genericBills($pro, @$patient, @$entityType, @$entityUid);
                         @endif
                         <td>{{$bill->code}}
                             @if($bill->generic_description)
-                                <pre class="mb-0 text-sm text-secondary font-italic">{{$bill->generic_description}}</pre>
+                                <pre class="mb-0 text-sm text-secondary font-italic">{!! $bill->generic_description !!}</pre>
                             @endif
                         </td>
                         <td class="">