|
@@ -2,66 +2,123 @@
|
|
|
|
|
|
@section('content')
|
|
|
|
|
|
- <div class="p-3 mcp-theme-1" id="fdb-pg">
|
|
|
- <div class="card">
|
|
|
-
|
|
|
- <div class="card-header px-3 py-2 d-flex align-items-center">
|
|
|
- <strong class="mr-4">
|
|
|
- FDB Playground
|
|
|
- </strong>
|
|
|
- </div>
|
|
|
- <div class="card-body px-3 py-4">
|
|
|
- <div class="row">
|
|
|
- <div class="col-2">
|
|
|
- <div class="mb-2 d-flex align-items-center">
|
|
|
- <label class="m-0 width-100px">Search</label>
|
|
|
- <div class="flex-grow-1">
|
|
|
- <input type="text" class="form-control form-control-sm min-width-unset"
|
|
|
- fdb-med-suggest-search fdb-suggest-group="1">
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="mb-2 d-flex align-items-center">
|
|
|
- <label class="m-0 width-100px">Route</label>
|
|
|
- <div class="flex-grow-1">
|
|
|
- <select class="form-control form-control-sm min-width-unset"
|
|
|
- fdb-med-suggest-route fdb-suggest-group="1"
|
|
|
- disabled>
|
|
|
- </select>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="mb-2 d-flex align-items-center">
|
|
|
- <label class="m-0 width-100px">Dosage</label>
|
|
|
- <div class="flex-grow-1">
|
|
|
- <select class="form-control form-control-sm min-width-unset"
|
|
|
- fdb-med-suggest-dosage fdb-suggest-group="1"
|
|
|
- disabled>
|
|
|
- </select>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="mb-2 d-flex align-items-center">
|
|
|
- <label class="m-0 width-100px">Strength</label>
|
|
|
- <div class="flex-grow-1">
|
|
|
- <select class="form-control form-control-sm min-width-unset"
|
|
|
- fdb-med-suggest-strength fdb-suggest-group="1"
|
|
|
- disabled>
|
|
|
- </select>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="col-2 side-effects">
|
|
|
-
|
|
|
- </div>
|
|
|
- <div class="col-2 geriatric-precautions">
|
|
|
-
|
|
|
- </div>
|
|
|
- <div class="col-2 indications">
|
|
|
-
|
|
|
- </div>
|
|
|
- <div class="col-2 contraindications">
|
|
|
-
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <style>
|
|
|
+ .fdb-suggestions-container .suggestions-outer {
|
|
|
+ right: auto;
|
|
|
+ left: 0;
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+
|
|
|
+ <div class="p-0 mcp-theme-1" id="fdb-pg">
|
|
|
+ <div class="px-3 py-2 bg-light border-bottom d-flex align-items-center font-weight-bold font-size-14">FDB Playground</div>
|
|
|
+ <div class="p-3">
|
|
|
+ <div class="d-flex align-items-baseline mb-2">
|
|
|
+ <span class="font-size-14 font-weight-bold">Medications</span>
|
|
|
+ <a href="#" v-on:click.prevent="addRx()" class="ml-3">+ Add</a>
|
|
|
</div>
|
|
|
+ <table class="table table-sm table-striped table-bordered" style="table-layout: fixed">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ <th class="border-bottom-0 text-secondary">Medication</th>
|
|
|
+ <th class="border-bottom-0 text-secondary">Route</th>
|
|
|
+ <th class="border-bottom-0 text-secondary">Dosage</th>
|
|
|
+ <th class="border-bottom-0 text-secondary">Strength</th>
|
|
|
+ <th class="border-bottom-0 text-secondary">Side Effects</th>
|
|
|
+ <th class="border-bottom-0 text-secondary">Ger. Precautions</th>
|
|
|
+ <th class="border-bottom-0 text-secondary">Indications</th>
|
|
|
+ <th class="border-bottom-0 text-secondary">Contraindications</th>
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody>
|
|
|
+ <tr v-for="(item, index) in rx">
|
|
|
+ <td class="p-0 width-200px position-relative" style="z-index: 1">
|
|
|
+ <input type="text" class="rounded-0 border-0 form-control form-control-sm min-width-unset" style="z-index: 1"
|
|
|
+ fdb-med-suggest-search :fdb-suggest-group="index">
|
|
|
+ </td>
|
|
|
+ <td class="p-0 width-200px position-relative">
|
|
|
+ <select class="rounded-0 border-0 form-control form-control-sm min-width-unset"
|
|
|
+ fdb-med-suggest-route :fdb-suggest-group="index"
|
|
|
+ disabled>
|
|
|
+ </select>
|
|
|
+ </td>
|
|
|
+ <td class="p-0 width-200px position-relative">
|
|
|
+ <select class="rounded-0 border-0 form-control form-control-sm min-width-unset"
|
|
|
+ fdb-med-suggest-dosage :fdb-suggest-group="index"
|
|
|
+ disabled>
|
|
|
+ </select>
|
|
|
+ </td>
|
|
|
+ <td class="p-0 width-200px position-relative">
|
|
|
+ <select class="rounded-0 border-0 form-control form-control-sm min-width-unset"
|
|
|
+ fdb-med-suggest-strength :fdb-suggest-group="index"
|
|
|
+ disabled>
|
|
|
+ </select>
|
|
|
+ </td>
|
|
|
+
|
|
|
+ <td class="overflow-auto side-effects" :fdb-suggest-group="index">
|
|
|
+
|
|
|
+ </td>
|
|
|
+ <td class="overflow-auto geriatric-precautions" :fdb-suggest-group="index">
|
|
|
+
|
|
|
+ </td>
|
|
|
+ <td class="overflow-auto indications" :fdb-suggest-group="index">
|
|
|
+
|
|
|
+ </td>
|
|
|
+ <td class="overflow-auto contraindications" :fdb-suggest-group="index">
|
|
|
+
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+{{-- <div class="row">--}}
|
|
|
+{{-- <div class="col-2">--}}
|
|
|
+{{-- <div class="mb-2 d-flex align-items-center">--}}
|
|
|
+{{-- <label class="m-0 width-100px">Search</label>--}}
|
|
|
+{{-- <div class="flex-grow-1">--}}
|
|
|
+{{-- <input type="text" class="form-control form-control-sm min-width-unset"--}}
|
|
|
+{{-- fdb-med-suggest-search fdb-suggest-group="1">--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- <div class="mb-2 d-flex align-items-center">--}}
|
|
|
+{{-- <label class="m-0 width-100px">Route</label>--}}
|
|
|
+{{-- <div class="flex-grow-1">--}}
|
|
|
+{{-- <select class="form-control form-control-sm min-width-unset"--}}
|
|
|
+{{-- fdb-med-suggest-route fdb-suggest-group="1"--}}
|
|
|
+{{-- disabled>--}}
|
|
|
+{{-- </select>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- <div class="mb-2 d-flex align-items-center">--}}
|
|
|
+{{-- <label class="m-0 width-100px">Dosage</label>--}}
|
|
|
+{{-- <div class="flex-grow-1">--}}
|
|
|
+{{-- <select class="form-control form-control-sm min-width-unset"--}}
|
|
|
+{{-- fdb-med-suggest-dosage fdb-suggest-group="1"--}}
|
|
|
+{{-- disabled>--}}
|
|
|
+{{-- </select>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- <div class="mb-2 d-flex align-items-center">--}}
|
|
|
+{{-- <label class="m-0 width-100px">Strength</label>--}}
|
|
|
+{{-- <div class="flex-grow-1">--}}
|
|
|
+{{-- <select class="form-control form-control-sm min-width-unset"--}}
|
|
|
+{{-- fdb-med-suggest-strength fdb-suggest-group="1"--}}
|
|
|
+{{-- disabled>--}}
|
|
|
+{{-- </select>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- <div class="col-2 side-effects">--}}
|
|
|
+
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- <div class="col-2 geriatric-precautions">--}}
|
|
|
+
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- <div class="col-2 indications">--}}
|
|
|
+
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- <div class="col-2 contraindications">--}}
|
|
|
+
|
|
|
+{{-- </div>--}}
|
|
|
+{{-- </div>--}}
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
@@ -154,150 +211,184 @@
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- function fillSideEffects(_gcn_seqno) {
|
|
|
- $('.side-effects').empty();
|
|
|
+ function fillSideEffects(_group, _gcn_seqno) {
|
|
|
+ let container = $('.side-effects[fdb-suggest-group=' + _group + ']');
|
|
|
+ container.empty();
|
|
|
$.get('/fdb-side-effects?gcn-seq-no=' + _gcn_seqno, _data => {
|
|
|
- $('.side-effects').html(_data);
|
|
|
+ container.html(_data);
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- function fillGeriatricPrecautions(_gcn_seqno) {
|
|
|
- $('.geriatric-precautions').empty();
|
|
|
+ function fillGeriatricPrecautions(_group, _gcn_seqno) {
|
|
|
+ let container = $('.geriatric-precautions[fdb-suggest-group=' + _group + ']');
|
|
|
+ container.empty();
|
|
|
$.get('/fdb-geriatric-precautions?gcn-seq-no=' + _gcn_seqno, _data => {
|
|
|
- $('.geriatric-precautions').html(_data);
|
|
|
+ container.html(_data);
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- function fillIndications(_gcn_seqno) {
|
|
|
- $('.indications').empty();
|
|
|
+ function fillIndications(_group, _gcn_seqno) {
|
|
|
+ let container = $('.indications[fdb-suggest-group=' + _group + ']');
|
|
|
+ container.empty();
|
|
|
$.get('/fdb-indications?gcn-seq-no=' + _gcn_seqno, _data => {
|
|
|
- $('.indications').html(_data);
|
|
|
+ container.html(_data);
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- function fillContraindications(_gcn_seqno) {
|
|
|
- $('.contraindications').empty();
|
|
|
+ function fillContraindications(_group, _gcn_seqno) {
|
|
|
+ let container = $('.contraindications[fdb-suggest-group=' + _group + ']');
|
|
|
+ container.empty();
|
|
|
$.get('/fdb-contraindications?routed-med-id=' + _gcn_seqno, _data => {
|
|
|
- $('.contraindications').html(_data);
|
|
|
+ container.html(_data);
|
|
|
});
|
|
|
}
|
|
|
|
|
|
addMCInitializer('fdb-pg', function() {
|
|
|
|
|
|
- $('[fdb-med-suggest-search]:not([fdb-suggest-initialized])').each(function() {
|
|
|
- let elem = $(this);
|
|
|
- elem.next('.fdb-suggestions-container').remove();
|
|
|
- $('<div class="fdb-suggestions-container position-relative" fdb-suggest-group="' + elem.attr('fdb-suggest-group') + '">' +
|
|
|
- '<div class="suggestions-outer fdb-suggestions position-absolute d-none"></div>' +
|
|
|
- '</div>').insertAfter(elem);
|
|
|
-
|
|
|
- elem
|
|
|
- .off('keydown.fdb-suggest')
|
|
|
- .on('keydown.fdb-suggest', function (e) {
|
|
|
- suggestionsOuter = $(this).next('.fdb-suggestions-container').find('>.suggestions-outer');
|
|
|
- return handleKeydown($(this), e);
|
|
|
- })
|
|
|
- .off('keypress.fdb-suggest')
|
|
|
- .on('keypress.fdb-suggest', function (e) {
|
|
|
- suggestionsOuter = $(this).next('.fdb-suggestions-container').find('>.suggestions-outer');
|
|
|
- return handleKeypress($(this), e);
|
|
|
- });
|
|
|
+ new Vue({
|
|
|
+ el: '#fdb-pg',
|
|
|
+ delimiters: ['@{{', '}}'],
|
|
|
+ data: {
|
|
|
+ dx: [{
|
|
|
+
|
|
|
+ }],
|
|
|
+ rx: [{
|
|
|
+
|
|
|
+ }],
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ addRx: function() {
|
|
|
+ this.rx.push({});
|
|
|
+ Vue.nextTick(() => {
|
|
|
+ this.initFDBSuggest();
|
|
|
+ $('[fdb-med-suggest-search]').last().focus();
|
|
|
+ });
|
|
|
+ },
|
|
|
+ initFDBSuggest: function() {
|
|
|
+ $('[fdb-med-suggest-search]:not([fdb-suggest-initialized])').each(function() {
|
|
|
+ let elem = $(this);
|
|
|
+ elem.next('.fdb-suggestions-container').remove();
|
|
|
+ $('<div class="fdb-suggestions-container position-relative" fdb-suggest-group="' + elem.attr('fdb-suggest-group') + '">' +
|
|
|
+ '<div class="suggestions-outer fdb-suggestions position-absolute d-none"></div>' +
|
|
|
+ '</div>').insertAfter(elem);
|
|
|
+
|
|
|
+ elem
|
|
|
+ .off('keydown.fdb-suggest')
|
|
|
+ .on('keydown.fdb-suggest', function (e) {
|
|
|
+ suggestionsOuter = $(this).next('.fdb-suggestions-container').find('>.suggestions-outer');
|
|
|
+ return handleKeydown($(this), e);
|
|
|
+ })
|
|
|
+ .off('keypress.fdb-suggest')
|
|
|
+ .on('keypress.fdb-suggest', function (e) {
|
|
|
+ suggestionsOuter = $(this).next('.fdb-suggestions-container').find('>.suggestions-outer');
|
|
|
+ return handleKeypress($(this), e);
|
|
|
+ });
|
|
|
+
|
|
|
+ $(this).attr('fdb-suggest-initialized', 1);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted: function() {
|
|
|
|
|
|
- $(this).attr('fdb-suggest-initialized', 1);
|
|
|
- });
|
|
|
+ // on auto-suggest selection
|
|
|
+ $(document).off('click', '.suggest-item.fdb-suggest[data-med-name-id]');
|
|
|
+ $(document).on('click', '.suggest-item.fdb-suggest[data-med-name-id]', function () {
|
|
|
|
|
|
- // on auto-suggest selection
|
|
|
- $(document).off('click', '.suggest-item.fdb-suggest[data-med-name-id]');
|
|
|
- $(document).on('click', '.suggest-item.fdb-suggest[data-med-name-id]', function () {
|
|
|
+ $('.suggestions-outer.fdb-suggestions').addClass('d-none');
|
|
|
|
|
|
- $('.suggestions-outer.fdb-suggestions').addClass('d-none');
|
|
|
+ let medNameID = $(this).attr('data-med-name-id'),
|
|
|
+ label = $.trim($(this).text()),
|
|
|
+ group = $(this).closest('.fdb-suggestions-container').attr('fdb-suggest-group');
|
|
|
|
|
|
- let medNameID = $(this).attr('data-med-name-id'),
|
|
|
- label = $.trim($(this).text()),
|
|
|
- group = $(this).closest('.fdb-suggestions-container').attr('fdb-suggest-group');
|
|
|
+ // set value
|
|
|
+ let input = $(this).closest('.position-relative').prev('[fdb-med-suggest-search]');
|
|
|
+ input.val(label);
|
|
|
+ input.attr('data-med-name-id', medNameID);
|
|
|
+ input.trigger('input');
|
|
|
+ input.trigger('change');
|
|
|
|
|
|
- // set value
|
|
|
- let input = $(this).closest('.position-relative').prev('[fdb-med-suggest-search]');
|
|
|
- input.val(label);
|
|
|
- input.attr('data-med-name-id', medNameID);
|
|
|
- input.trigger('input');
|
|
|
- input.trigger('change');
|
|
|
+ $(document).trigger('fdb-med-changed', [group]);
|
|
|
|
|
|
- $(document).trigger('fdb-med-changed', [group]);
|
|
|
+ return false;
|
|
|
+ });
|
|
|
|
|
|
- return false;
|
|
|
- });
|
|
|
+ // med changed, update routes
|
|
|
+ $(document).off('fdb-med-changed');
|
|
|
+ $(document).on('fdb-med-changed', function(e, group) {
|
|
|
+ let routeSelect = $('[fdb-med-suggest-route][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
+ let dosageSelect = $('[fdb-med-suggest-dosage][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
+ let strengthSelect = $('[fdb-med-suggest-strength][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
+ let medNameID = $('[fdb-med-suggest-search][fdb-suggest-group='+group+']').attr('data-med-name-id');
|
|
|
+ $.get('/fdb-routed-meds?med-name-id=' + medNameID, _data => {
|
|
|
+ routeSelect
|
|
|
+ .empty()
|
|
|
+ .append('<option value="">-- select --</option>');
|
|
|
+ for (let i = 0; i < _data.length; i++) {
|
|
|
+ routeSelect.append('<option value="' + _data[i].routed_med_id + '">' + _data[i].med_routed_med_id_desc + '</option>')
|
|
|
+ }
|
|
|
+ routeSelect.prop('disabled', false);
|
|
|
+ if(_data.length === 1) {
|
|
|
+ routeSelect.val(_data[0].routed_med_id).trigger('change');
|
|
|
+ }
|
|
|
+ }, 'json');
|
|
|
+ routeSelect.prop('disabled', false);
|
|
|
+ });
|
|
|
|
|
|
- // med changed, update routes
|
|
|
- $(document).off('fdb-med-changed');
|
|
|
- $(document).on('fdb-med-changed', function(e, group) {
|
|
|
- let routeSelect = $('[fdb-med-suggest-route][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
- let dosageSelect = $('[fdb-med-suggest-dosage][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
- let strengthSelect = $('[fdb-med-suggest-strength][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
- let medNameID = $('[fdb-med-suggest-search][fdb-suggest-group='+group+']').attr('data-med-name-id');
|
|
|
- $.get('/fdb-routed-meds?med-name-id=' + medNameID, _data => {
|
|
|
- routeSelect
|
|
|
- .empty()
|
|
|
- .append('<option value="">-- select --</option>');
|
|
|
- for (let i = 0; i < _data.length; i++) {
|
|
|
- routeSelect.append('<option value="' + _data[i].routed_med_id + '">' + _data[i].med_routed_med_id_desc + '</option>')
|
|
|
- }
|
|
|
- routeSelect.prop('disabled', false);
|
|
|
- if(_data.length === 1) {
|
|
|
- routeSelect.val(_data[0].routed_med_id).trigger('change');
|
|
|
- }
|
|
|
- }, 'json');
|
|
|
- routeSelect.prop('disabled', false);
|
|
|
- });
|
|
|
+ // on route selection
|
|
|
+ $(document).off('change', '[fdb-med-suggest-route]');
|
|
|
+ $(document).on('change', '[fdb-med-suggest-route]', function () {
|
|
|
+ let group = $(this).attr('fdb-suggest-group');
|
|
|
+ let dosageSelect = $('[fdb-med-suggest-dosage][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
+ let strengthSelect = $('[fdb-med-suggest-strength][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
+ let routedMedID = $('[fdb-med-suggest-route][fdb-suggest-group='+$(this).attr('fdb-suggest-group')+']').val();
|
|
|
+ $.get('/fdb-routed-dosages?routed-med-id=' + routedMedID, _data => {
|
|
|
+ dosageSelect
|
|
|
+ .empty()
|
|
|
+ .append('<option value="">-- select --</option>');
|
|
|
+ for (let i = 0; i < _data.length; i++) {
|
|
|
+ dosageSelect.append('<option value="' + _data[i].routed_dosage_form_med_id + '">' + _data[i].med_routed_df_med_id_desc + '</option>')
|
|
|
+ }
|
|
|
+ dosageSelect.prop('disabled', false);
|
|
|
+ if(_data.length === 1) {
|
|
|
+ dosageSelect.val(_data[0].routed_dosage_form_med_id).trigger('change');
|
|
|
+ }
|
|
|
+ }, 'json');
|
|
|
+ });
|
|
|
|
|
|
- // on route selection
|
|
|
- $(document).off('change', '[fdb-med-suggest-route]');
|
|
|
- $(document).on('change', '[fdb-med-suggest-route]', function () {
|
|
|
- let group = $(this).attr('fdb-suggest-group');
|
|
|
- let dosageSelect = $('[fdb-med-suggest-dosage][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
- let strengthSelect = $('[fdb-med-suggest-strength][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
- let routedMedID = $('[fdb-med-suggest-route][fdb-suggest-group='+$(this).attr('fdb-suggest-group')+']').val();
|
|
|
- $.get('/fdb-routed-dosages?routed-med-id=' + routedMedID, _data => {
|
|
|
- dosageSelect
|
|
|
- .empty()
|
|
|
- .append('<option value="">-- select --</option>');
|
|
|
- for (let i = 0; i < _data.length; i++) {
|
|
|
- dosageSelect.append('<option value="' + _data[i].routed_dosage_form_med_id + '">' + _data[i].med_routed_df_med_id_desc + '</option>')
|
|
|
- }
|
|
|
- dosageSelect.prop('disabled', false);
|
|
|
- if(_data.length === 1) {
|
|
|
- dosageSelect.val(_data[0].routed_dosage_form_med_id).trigger('change');
|
|
|
- }
|
|
|
- }, 'json');
|
|
|
- });
|
|
|
+ // on dosage selection
|
|
|
+ $(document).off('change', '[fdb-med-suggest-dosage]');
|
|
|
+ $(document).on('change', '[fdb-med-suggest-dosage]', function () {
|
|
|
+ let group = $(this).attr('fdb-suggest-group');
|
|
|
+ let strengthSelect = $('[fdb-med-suggest-strength][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
+ let dosageFormMedID = $('[fdb-med-suggest-dosage][fdb-suggest-group='+$(this).attr('fdb-suggest-group')+']').val();
|
|
|
+ $.get('/fdb-meds?dosage-form-med-id=' + dosageFormMedID, _data => {
|
|
|
+ strengthSelect
|
|
|
+ .empty()
|
|
|
+ .append('<option value="">-- select --</option>');
|
|
|
+ for (let i = 0; i < _data.length; i++) {
|
|
|
+ strengthSelect.append('<option value="' + _data[i].gcn_seqno + '">' + _data[i].med_medid_desc + '</option>')
|
|
|
+ }
|
|
|
+ }, 'json');
|
|
|
+ strengthSelect.prop('disabled', false);
|
|
|
+ });
|
|
|
|
|
|
- // on dosage selection
|
|
|
- $(document).off('change', '[fdb-med-suggest-dosage]');
|
|
|
- $(document).on('change', '[fdb-med-suggest-dosage]', function () {
|
|
|
- let group = $(this).attr('fdb-suggest-group');
|
|
|
- let strengthSelect = $('[fdb-med-suggest-strength][fdb-suggest-group='+group+']').empty().prop('disabled', true);
|
|
|
- let dosageFormMedID = $('[fdb-med-suggest-dosage][fdb-suggest-group='+$(this).attr('fdb-suggest-group')+']').val();
|
|
|
- $.get('/fdb-meds?dosage-form-med-id=' + dosageFormMedID, _data => {
|
|
|
- strengthSelect
|
|
|
- .empty()
|
|
|
- .append('<option value="">-- select --</option>');
|
|
|
- for (let i = 0; i < _data.length; i++) {
|
|
|
- strengthSelect.append('<option value="' + _data[i].gcn_seqno + '">' + _data[i].med_medid_desc + '</option>')
|
|
|
- }
|
|
|
- }, 'json');
|
|
|
- strengthSelect.prop('disabled', false);
|
|
|
- });
|
|
|
+ // on strength (medid) selection
|
|
|
+ $(document).off('change', '[fdb-med-suggest-strength]');
|
|
|
+ $(document).on('change', '[fdb-med-suggest-strength]', function () {
|
|
|
+ fillSideEffects($(this).attr('fdb-suggest-group'), $(this).val());
|
|
|
+ fillGeriatricPrecautions($(this).attr('fdb-suggest-group'), $(this).val());
|
|
|
+ fillIndications($(this).attr('fdb-suggest-group'), $(this).val());
|
|
|
|
|
|
- // on strength (medid) selection
|
|
|
- $(document).off('change', '[fdb-med-suggest-strength]');
|
|
|
- $(document).on('change', '[fdb-med-suggest-strength]', function () {
|
|
|
- fillSideEffects($(this).val());
|
|
|
- fillGeriatricPrecautions($(this).val());
|
|
|
- fillIndications($(this).val());
|
|
|
+ let routedMedID = $('[fdb-med-suggest-route][fdb-suggest-group='+$(this).attr('fdb-suggest-group')+']').val();
|
|
|
+ fillContraindications($(this).attr('fdb-suggest-group'), routedMedID);
|
|
|
+ });
|
|
|
|
|
|
- let routedMedID = $('[fdb-med-suggest-route][fdb-suggest-group='+$(this).attr('fdb-suggest-group')+']').val();
|
|
|
- fillContraindications(routedMedID);
|
|
|
- });
|
|
|
+ Vue.nextTick(() => {
|
|
|
+ this.initFDBSuggest();
|
|
|
+ $('[fdb-med-suggest-search]').first().focus();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
|
|
|
}, '#fdb-pg');
|
|
|
}).call(window);
|