Selaa lähdekoodia

organized dashboard

Josh 4 vuotta sitten
vanhempi
commit
103ef31623

+ 2 - 1
app/Http/Controllers/PatientController.php

@@ -17,7 +17,8 @@ class PatientController extends Controller
     public function dashboard(Request $request, Client $patient )
     {
         $mcpPros = Pro::where('is_enrolled_as_mcp', true)->get();
-        return view('app.patient.dashboard', compact('patient'));
+        $facilities = Facility::where('is_active', true)->get();
+        return view('app.patient.dashboard', compact('patient', 'facilities'));
     }
 
     public function actionItems(Request $request, Client $patient )

+ 266 - 99
resources/views/app/patient/dashboard.blade.php

@@ -464,115 +464,172 @@
                 </div>
 
                 {{-- care_team --}}
-                <div class="mt-4">
-                    <div class="d-flex align-items-center mb-2 py-2 border-top border-bottom">
-                        <h6 class="my-0 font-weight-bold text-secondary">Care Team</h6>
-                        <span class="mx-2 text-secondary">|</span>
-                        <div moe>
-                            <a start show class="py-0 font-weight-normal">Add</a>
-                            <form url="/api/clientInfoLine/create">
-                                <input type="hidden" name="clientUid" value="{{ $patient->uid }}">
-                                <input type="hidden" name="category" value="care_team">
-                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="contentText" value="" placeholder="Name"></div>
-                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Specialty" value="" placeholder="Specialty"></div>
-                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Organization" value="" placeholder="Organization"></div>
-                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Phone" value="" placeholder="Phone"></div>
-                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Fax" value="" placeholder="Fax"></div>
-                                <div class="mb-2"><input type="date" class="form-control form-control-sm" name="Next Appointment" value="" placeholder="Next Appointment"></div>
-                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Memo" value="" placeholder="Memo"></div>
-                                <div class="d-flex align-items-center">
-                                    <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
-                                    <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
-                                </div>
-                            </form>
-                        </div>
-
-                         <span class="mx-2 text-secondary">|</span>
-
+                <div  class="mb-2 py-2 border-top border-bottom">
+                    <style>
+                        td.fit {
+    width:1%;
+    white-space:nowrap;
+}
+                    </style>
+        <div class="d-flex align-items-center pb-2">
+            <h6 class="my-0 font-weight-bold text-secondary">ERx</h6>
+            <span class="mx-2 text-secondary">|</span>
             <div moe>
-                <a start show class="">Multi</a>
-                <form url="/api/clientInfoLine/createMultiple">
+                <a start show class="py-0 font-weight-normal">Add</a>
+                <form url="/api/actionItem/create" wide>
                     <input type="hidden" name="clientUid" value="{{ $patient->uid }}">
-                    <input type="hidden" name="category" value="care_team">
-                    <div class="mb-2"><textarea class="form-control form-control-sm" rows="8" name="contentTexts" value="" placeholder="Care Team Members..."></textarea></div>
+                    <input type="hidden" name="prescriberProUid" value="{{ $pro->uid }}">
+                    <input type="hidden" name="category" value="DRUG">
+                    <div class="mb-2">
+                        <label for="" class="control-label text-sm text-secondary mb-1">Pharmacy</label>
+                        <select name="toFacilityUid"
+                                class="form-control form-control-sm">
+                            <option value="">-- Pharmacy --</option>
+                            @foreach ($facilities as $facility)
+                                <option value="{{$facility->uid}}">{{$facility->name}}</option>
+                            @endforeach
+                        </select>
+                    </div>
+                    <div class="mb-2">
+                        <input type="text" class="form-control form-control-sm" name="contentText" value="" placeholder="Title *" required>
+                    </div>
+                    <div class="mb-2">
+                        <input type="text" class="form-control form-control-sm" name="contentDetail" value="" placeholder="Directions">
+                    </div>
                     <div class="d-flex align-items-center">
                         <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
                         <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
                     </div>
                 </form>
             </div>
-
-                        <span class="mx-2 text-secondary">|</span>
-                        <a start show class="py-0 font-weight-normal"
-                           href="/patients/view/{{ $patient->uid }}/care-team">
-                            View All
-                        </a>
-                    </div>
-                    <table class="table table-sm border-0 m-0">
-                        <tbody>
-                        <?php $itemCount = 0; ?>
-                        @foreach($infoLines as $category => $lines)
-                            @if($category === "care_team")
-                                @foreach ($lines as $line)
-                                    <?php $itemCount++; ?>
-                                    <tr>
-                                        <td class="text-black p-0 border-0">
-                                            <div class="d-flex">
-                                                <span moe relative class="mr-2">
-                                                    <a class="on-hover-opaque" start show title="Delete">
-                                                        <i class="font-size-11 fa fa-trash-alt text-danger"></i>
-                                                    </a>
-                                                    <form url="/api/clientInfoLine/remove">
-                                                        <input type="hidden" name="uid" value="{{ $line->uid }}">
-                                                        <p class="small">Are you sure you want to delete this entry?</p>
-                                                        <div class="d-flex align-items-center">
-                                                            <button class="btn btn-sm btn-danger mr-2" submit>Delete</button>
-                                                            <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
-                                                        </div>
-                                                    </form>
-                                                </span>
-                                                <div moe relative class="mr-2">
-                                                    <a class="on-hover-opaque" start show title="Edit">
-                                                        <i class="font-size-11 fa fa-edit"></i>
-                                                    </a>
-                                                    <form url="/api/clientInfoLine/updateContent">
-                                                        <input type="hidden" name="uid" value="{{ $line->uid }}">
-                                                        <input type="hidden" name="clientUid" value="{{ $patient->uid }}">
-                                                        <input type="hidden" name="category" value="care_team">
-                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="contentText" value="{{$line->contentText}}" placeholder="Name"></div>
-                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Specialty" value="{{ getVal($line->contentDetail, 'Specialty') }}" placeholder="Specialty"></div>
-                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Organization" value="{{getVal($line->contentDetail, 'Organization') }}" placeholder="Organization"></div>
-                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Phone" value="{{getVal($line->contentDetail, 'Phone') }}" placeholder="Phone"></div>
-                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Fax" value="{{getVal($line->contentDetail, 'Fax') }}" placeholder="Fax"></div>
-                                                        <div class="mb-2"><input type="date" class="form-control form-control-sm" name="Next Appointment" value="{{getVal($line->contentDetail, 'Next Appointment') }}" placeholder="Next Appointment"></div>
-                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Memo" value="{{getVal($line->contentDetail, 'Memo') }}" placeholder="Memo"></div>
-                                                        <div class="d-flex align-items-center">
-                                                            <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
-                                                            <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
-                                                        </div>
-                                                    </form>
-                                                </div>
-                                                <span class="font-weight-bold">{{$line->contentText}}</span>
-                                                <span class="text-secondary mx-1">/</span>
-                                                <span class="text-secondary">{{ getVal($line->contentDetail, 'Specialty') }}</span>
-                                                <span class="text-secondary mx-1">/</span>
-                                                <span class="text-secondary">Next Apt: {{ getVal($line->contentDetail, 'Next Appointment') ? $line->contentDetail('Next Appointment') : '-' }}</span>
-                                            </div>
-                                        </td>
-                                    </tr>
-                                @endforeach
+        </div>
+        <table class="table table-sm table-bordered mb-0" style="table-layout: fixed">
+            <thead>
+            <tr>
+                <th class="px-2 text-secondary border-bottom-0 w-25">Prescription</th>
+                <th class="px-2 text-secondary border-bottom-0 fit">Created</th>
+                <th class="px-2 text-secondary border-bottom-0 fit">Status</th>
+                <th class="px-2 text-secondary border-bottom-0 fit">Pharmacy</th>
+                <th class="px-2 text-secondary border-bottom-0">&nbsp;</th>
+            </tr>
+            </thead>
+            <tbody>
+            <?php $prevItemType = false; ?>
+            @foreach($patient->actionItems as $item)
+                @if($item->action_item_category === 'DRUG')
+                <tr>
+                    <td class="px-2">
+                        {{$item->content_text}}
+                        <span moe>
+                            <a start show class="on-hover-opaque"><i class="fa fa-edit"></i></a>
+                            <form url="/api/actionItem/updateContent" wide>
+                                <input type="hidden" name="uid" value="{{ $item->uid }}">
+                                <div class="mb-2">
+                                    <input type="text" class="form-control form-control-sm" name="contentText" value="{{ $item->content_text }}" placeholder="Title *" required>
+                                </div>
+                                <div class="mb-2">
+                                    <input type="text" class="form-control form-control-sm" name="contentDetail" value="{{ $item->content_detail }}" placeholder="Details">
+                                </div>
+                                <div class="d-flex align-items-center">
+                                    <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
+                                    <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                                </div>
+                            </form>
+                        </span>
+                        <div class="text-sm text-secondary">{{$item->content_detail}}</div>
+                    </td>
+                    <td class="px-2">{{friendly_date_time($item->created_at, false)}}</td>
+                    <td class="px-2">
+                        {{ucwords($item->status_category)}}
+                        <span moe>
+                            <a start show class="on-hover-opaque"><i class="fa fa-edit"></i></a>
+                            <form url="/api/actionItem/updateStatus">
+                                <input type="hidden" name="uid" value="{{ $item->uid }}">
+                                <div class="mb-2">
+                                    <label for="" class="control-label text-sm text-secondary mb-1">Status *</label>
+                                    <select name="statusCategory" class="form-control form-control-sm" required>
+                                        <option {{ $item->status_category === 'OPEN' ? 'selected' : '' }} value="OPEN">Open</option>
+                                        <option {{ $item->status_category === 'CLOSED' ? 'selected' : '' }} value="CLOSED">Closed</option>
+                                    </select>
+                                </div>
+                                <div class="mb-2">
+                                    <input type="text" class="form-control form-control-sm" name="statusMemo" value="" placeholder="Memo">
+                                </div>
+                                <div class="d-flex align-items-center">
+                                    <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
+                                    <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                                </div>
+                            </form>
+                        </span>
+                    </td>
+                    <td class="px-2">
+                        {{$item->facility ? $item->facility->name : ''}}
+                        <span moe>
+                            <a start show class="on-hover-opaque"><i class="fa fa-edit"></i></a>
+                            <form url="/api/actionItem/updateToFacility">
+                                <input type="hidden" name="uid" value="{{ $item->uid }}">
+                                <div class="mb-2">
+                                    <label for="" class="control-label text-sm text-secondary mb-1">Facility *</label>
+                                    <select name="toFacilityUid" class="form-control form-control-sm" required>
+                                        <option value="">-- Facility --</option>
+                                        @foreach ($facilities as $facility)
+                                            <option {{ $item->to_facility_id === $facility->id ? 'selected' : '' }} value="{{$facility->uid}}">{{$facility->name}}</option>
+                                        @endforeach
+                                    </select>
+                                </div>
+                                <div class="d-flex align-items-center">
+                                    <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
+                                    <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                                </div>
+                            </form>
+                        </span>
+                    </td>
+                    <td class="px-2 text-center">
+                        <div class="d-flex align-items-center justify-content-start">
+                        @if($item->is_signed_by_prescriber)
+                            <span class="text-secondary">
+                                <i class="fa fa-check"></i>
+                                Signed
+                            </span>
+                            <span class="mx-2 text-secondary">|</span>
+                        @else
+                            @if($pro->id === $item->prescriber_pro_id)
+                                <span moe relative>
+                                    <a start show>Sign</a>
+                                    <form url="/api/actionItem/signAsPrescriber" right>
+                                        <input type="hidden" name="uid" value="{{ $item->uid }}">
+                                        <p class="small min-width-200px text-left">Sign this action items as the prescriber?</p>
+                                        <div class="d-flex align-items-center">
+                                            <button class="btn btn-sm btn-success mr-2" submit>Yes</button>
+                                            <button class="btn btn-sm btn-default mr-2 border" cancel>No</button>
+                                        </div>
+                                    </form>
+                                </span>
+                                <span class="mx-2 text-secondary">|</span>
                             @endif
-                        @endforeach
-                        @if($itemCount === 0)
-                            <tr>
-                                <td class="text-secondary p-0 border-0">
-                                    No items to show
-                                </td>
-                            </tr>
                         @endif
-                        </tbody>
-                    </table>
-                </div>
+                        <span moe relative>
+                            <a start show>eFax</a>
+                            <form url="/api/actionItem/efax" right>
+                                <input type="hidden" name="uid" value="{{ $item->uid }}">
+                                <div class="mb-2">
+                                    <input type="text" class="form-control form-control-sm" name="toFaxNumber" value="" placeholder="To Number *" required>
+                                </div>
+                                <div class="d-flex align-items-center">
+                                    <button class="btn btn-sm btn-primary mr-2" submit>Send</button>
+                                    <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                                </div>
+                            </form>
+                        </span>
+                        </div>
+                    </td>
+                </tr>
+                @endif
+            @endforeach
+            </tbody>
+        </table>
+    </div>
+                
             </div>
             <div class="col-6">
 
@@ -1408,6 +1465,116 @@
                         </tbody>
                     </table>
                 </div>
+            
+                <div class="mt-4">
+                    <div class="d-flex align-items-center mb-2 py-2 border-top border-bottom">
+                        <h6 class="my-0 font-weight-bold text-secondary">Care Team</h6>
+                        <span class="mx-2 text-secondary">|</span>
+                        <div moe>
+                            <a start show class="py-0 font-weight-normal">Add</a>
+                            <form url="/api/clientInfoLine/create">
+                                <input type="hidden" name="clientUid" value="{{ $patient->uid }}">
+                                <input type="hidden" name="category" value="care_team">
+                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="contentText" value="" placeholder="Name"></div>
+                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Specialty" value="" placeholder="Specialty"></div>
+                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Organization" value="" placeholder="Organization"></div>
+                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Phone" value="" placeholder="Phone"></div>
+                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Fax" value="" placeholder="Fax"></div>
+                                <div class="mb-2"><input type="date" class="form-control form-control-sm" name="Next Appointment" value="" placeholder="Next Appointment"></div>
+                                <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Memo" value="" placeholder="Memo"></div>
+                                <div class="d-flex align-items-center">
+                                    <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
+                                    <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                                </div>
+                            </form>
+                        </div>
+
+                         <span class="mx-2 text-secondary">|</span>
+
+            <div moe>
+                <a start show class="">Multi</a>
+                <form url="/api/clientInfoLine/createMultiple">
+                    <input type="hidden" name="clientUid" value="{{ $patient->uid }}">
+                    <input type="hidden" name="category" value="care_team">
+                    <div class="mb-2"><textarea class="form-control form-control-sm" rows="8" name="contentTexts" value="" placeholder="Care Team Members..."></textarea></div>
+                    <div class="d-flex align-items-center">
+                        <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
+                        <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                    </div>
+                </form>
+            </div>
+
+                        <span class="mx-2 text-secondary">|</span>
+                        <a start show class="py-0 font-weight-normal"
+                           href="/patients/view/{{ $patient->uid }}/care-team">
+                            View All
+                        </a>
+                    </div>
+                    <table class="table table-sm border-0 m-0">
+                        <tbody>
+                        <?php $itemCount = 0; ?>
+                        @foreach($infoLines as $category => $lines)
+                            @if($category === "care_team")
+                                @foreach ($lines as $line)
+                                    <?php $itemCount++; ?>
+                                    <tr>
+                                        <td class="text-black p-0 border-0">
+                                            <div class="d-flex">
+                                                <span moe relative class="mr-2">
+                                                    <a class="on-hover-opaque" start show title="Delete">
+                                                        <i class="font-size-11 fa fa-trash-alt text-danger"></i>
+                                                    </a>
+                                                    <form url="/api/clientInfoLine/remove">
+                                                        <input type="hidden" name="uid" value="{{ $line->uid }}">
+                                                        <p class="small">Are you sure you want to delete this entry?</p>
+                                                        <div class="d-flex align-items-center">
+                                                            <button class="btn btn-sm btn-danger mr-2" submit>Delete</button>
+                                                            <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                                                        </div>
+                                                    </form>
+                                                </span>
+                                                <div moe relative class="mr-2">
+                                                    <a class="on-hover-opaque" start show title="Edit">
+                                                        <i class="font-size-11 fa fa-edit"></i>
+                                                    </a>
+                                                    <form url="/api/clientInfoLine/updateContent">
+                                                        <input type="hidden" name="uid" value="{{ $line->uid }}">
+                                                        <input type="hidden" name="clientUid" value="{{ $patient->uid }}">
+                                                        <input type="hidden" name="category" value="care_team">
+                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="contentText" value="{{$line->contentText}}" placeholder="Name"></div>
+                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Specialty" value="{{ getVal($line->contentDetail, 'Specialty') }}" placeholder="Specialty"></div>
+                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Organization" value="{{getVal($line->contentDetail, 'Organization') }}" placeholder="Organization"></div>
+                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Phone" value="{{getVal($line->contentDetail, 'Phone') }}" placeholder="Phone"></div>
+                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Fax" value="{{getVal($line->contentDetail, 'Fax') }}" placeholder="Fax"></div>
+                                                        <div class="mb-2"><input type="date" class="form-control form-control-sm" name="Next Appointment" value="{{getVal($line->contentDetail, 'Next Appointment') }}" placeholder="Next Appointment"></div>
+                                                        <div class="mb-2"><input type="text" class="form-control form-control-sm" name="Memo" value="{{getVal($line->contentDetail, 'Memo') }}" placeholder="Memo"></div>
+                                                        <div class="d-flex align-items-center">
+                                                            <button class="btn btn-sm btn-primary mr-2" submit>Save</button>
+                                                            <button class="btn btn-sm btn-default mr-2 border" cancel>Cancel</button>
+                                                        </div>
+                                                    </form>
+                                                </div>
+                                                <span class="font-weight-bold">{{$line->contentText}}</span>
+                                                <span class="text-secondary mx-1">/</span>
+                                                <span class="text-secondary">{{ getVal($line->contentDetail, 'Specialty') }}</span>
+                                                <span class="text-secondary mx-1">/</span>
+                                                <span class="text-secondary">Next Apt: {{ getVal($line->contentDetail, 'Next Appointment') ? $line->contentDetail('Next Appointment') : '-' }}</span>
+                                            </div>
+                                        </td>
+                                    </tr>
+                                @endforeach
+                            @endif
+                        @endforeach
+                        @if($itemCount === 0)
+                            <tr>
+                                <td class="text-secondary p-0 border-0">
+                                    No items to show
+                                </td>
+                            </tr>
+                        @endif
+                        </tbody>
+                    </table>
+                </div>
             </div>
         </div>