Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions app/Http/Livewire/AgendarHorario.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
use App\Facades\TokenLink;
use App\Jobs\NovaSolicitacao;
use App\Models\Notificacao\Notificacao;
use App\Models\NotificacaoPsicologo;
use App\Models\Notificacao\NotificacaoPsicologo;
use App\Models\Psicologo\Horario;
use Carbon\Carbon;
use Illuminate\Support\Facades\Auth;
Expand All @@ -24,6 +24,7 @@ class AgendarHorario extends Component
public $status;

protected $updatesQueryString = ['data','slot'];
protected $listeners = ['selecionaHorario'];


public function mount($token)
Expand Down Expand Up @@ -55,8 +56,9 @@ public function buscarData(){
$this->cancelar();
}
}
public function selecionaHorario($id){
public function selecionaHorario($id, $data){
$this->slot = $id;
$this->data = $data;
}

public function getHorarioProperty(){
Expand Down
52 changes: 52 additions & 0 deletions app/Http/Livewire/Calendar.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?php

namespace App\Http\Livewire;

use App\Models\Psicologo\Horario;
use Carbon\Carbon;
use Carbon\CarbonPeriod;
use Livewire\Component;

class Calendar extends Component
{
public $dateSelect;
public $month;
public $weekDays = ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'];
public $controlDate;

protected $casts = [
'controlDate' => 'date'
];

public function mount()
{
$this->controlDate = Carbon::now()->firstOfMonth();
}

public function next()
{
$this->controlDate->addMonth();

}

public function prev()
{
$this->controlDate->subMonthsNoOverflow();
}
public function selectDate($date)
{
$this->dateSelect = $date;
}

public function render()
{
$days = CarbonPeriod::create($this->controlDate->copy()->firstOfMonth(),$this->controlDate->copy()->lastOfMonth());
$this->month = $this->controlDate->monthName;
$horarios = [];
if($this->dateSelect != null){
$data = Carbon::parse($this->dateSelect);
$horarios = Horario::paraDia($data)->with('psicologo')->get( );
}
return view('livewire.calendar',['days' => $days,'horarios' => $horarios]);
}
}
2 changes: 1 addition & 1 deletion app/Jobs/NovaSolicitacao.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

use App\Models\Atendimento\Agendamento;
use App\Models\Notificacao\Notificacao;
use App\Models\NotificacaoPsicologo;
use App\Models\Notificacao\NotificacaoPsicologo;
use App\Notifications\NotificaPsicologos;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
Expand Down
2 changes: 1 addition & 1 deletion app/Models/Notificacao/NotificacaoPsicologo.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?php
namespace App\Models;
namespace App\Models\Notificacao;

use App\Models\Notificacao\Notificacao;
use App\Models\Psicologo\Psicologo;
Expand Down
2 changes: 1 addition & 1 deletion app/Models/Psicologo/Psicologo.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
use App\Models\Atendimento\Atendimento;
use App\Models\Cliente\Cliente;
use App\Models\Notificacao\Notificacao;
use App\Models\NotificacaoPsicologo;
use App\Models\Notificacao\NotificacaoPsicologo;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;

Expand Down
2 changes: 1 addition & 1 deletion app/Repositories/NotificacaoPsicologosRepository.php
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?php
namespace App\Repositories;

use App\Models\NotificacaoPsicologo;
use App\Models\Notificacao\NotificacaoPsicologo;


class NotificacaoPsicologosRepository extends BaseRepository
Expand Down
37 changes: 3 additions & 34 deletions resources/views/chat.blade.php
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,43 +1,12 @@
@extends('layouts.app')
@section('title','Assitente')
@section('title','Assistente')
@include('partials.botman')
@php
$month = now()->monthName;
$days = \Carbon\CarbonPeriod::create(now()->firstOfMonth(),now()->lastOfMonth());
$weekDays = ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'];
@endphp

@section('content')
<div class="antialiased sans-serif ">
<div class="mx-auto container px-4">
<div class="min-h-screen bg-gray-100 py-6 flex flex-col justify-center sm:py-12">
<div x-data="{day : null}" class="flex flex-wrap sm:max-w-xl divide-x-2 sm:mx-auto">
<div class="z-20 relative bg-white sm:rounded-l p-2 shadow">
<div class="grid grid-cols-7 grid-rows-7 gap-6">
<div class="col-span-7 flex justify-between">
<div><svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7"></path></svg></div>
<div>{{$month}}</div>
<div><svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path></svg></div>
</div>
<div class="col-span-7 flex justify-between">
@foreach ($weekDays as $weekDay)
<div>{{$weekDay}}</div>
@endforeach
</div>
@foreach($days as $index => $day)
<div x-on:click="day = {{$index}}" class="{{$day->isToday() ? 'text-blue-500' : '' }} px-1 hover:bg-gray-500 rounded-full text-center">{{$day->day}}</div>
@endforeach
</div>
</div>
<div x-show="day"
x-transition:enter="transform transition ease-in-out duration-500 sm:duration-700"
x-transition:enter-start="-translate-x-full"
x-transition:enter-end="translate-x-0"
x-transition:leave="transform transition ease-in-out duration-500 sm:duration-700"
x-transition:leave-start="translate-x-0"
x-transition:leave-end="-translate-x-full"
class="z-10 relative px-4 py-10 bg-white sm:rounded-r sm:p-20">
</div>
</div>
<livewire:calendar/>
</div>
</div>
</div>
Expand Down
69 changes: 69 additions & 0 deletions resources/views/livewire/calendar.blade.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@

<div>
<div class="grid-cols-2 sm:max-w-xl divide-x-2 sm:mx-auto">
<div class="z-20 relative bg-white sm:rounded-l p-2 shadow">
<div class="grid grid-cols-7 grid-rows-7 gap-6">
<div class="col-span-7 flex justify-between">
<div wire:click="prev"><svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7"></path></svg></div>
<div>{{$month}}</div>
<div wire:click="next"><svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path></svg></div>
</div>
<div class="col-span-7 flex justify-between">
@foreach ($weekDays as $weekDay)
<div>{{$weekDay}}</div>
@endforeach
</div>
@foreach($days as $index => $day)
<div wire:click="selectDate('{{$day->format('Y-m-d')}}')" class="{{$day->isToday() ? 'text-blue-500' : '' }} px-1 hover:bg-gray-500 rounded-full text-center">{{$day->day}}</div>
@endforeach
</div>
</div>

@if($dateSelect != null)
<div
x-transition:enter="transform transition ease-in-out duration-500 sm:duration-700"
x-transition:enter-start="-translate-x-full"
x-transition:enter-end="translate-x-0"
x-transition:leave="transform transition ease-in-out duration-500 sm:duration-700"
x-transition:leave-start="translate-x-0"
x-transition:leave-end="-translate-x-full"
class="z-10 relative bg-white sm:rounded-r ">


@if(count($horarios) > 0)
<h1 class="text-lg text-primary px-2 leading-5 mt-4 border-b border-gray-300 mb-4" > {{Carbon\Carbon::parse ($dateSelect)->format('M, Y, D')}} </h1>
<ul class=" p-2 mt-2">
@foreach($horarios as $horario)
<li wire:click="$emitUp('selecionaHorario',{{$horario->id}},'{{$dateSelect}}')" class="block hover:bg-secondary focus:outline-none focus:bg-secondary transition duration-150 ease-in-out bg-white border border-gray-300 m-2 rounded-md">
<div class="px-4 py-4 sm:px-6">
<div class="flex items-center justify-between">
<div class="text-sm leading-5 font-medium text-indigo-600 truncate">
Horário : {{\Carbon\Carbon::createFromTimeString($horario->hora_inicio)->format('H:i')}} - {{\Carbon\Carbon::createFromTimeString($horario->hora_final)->format('H:i')}}
</div>
</div>
<div class="mt-2 sm:flex sm:justify-between">
<div class="sm:flex">
<div class="mr-6 flex items-center text-sm leading-5 text-gray-500">
<svg class="flex-shrink-0 mr-1.5 h-5 w-5 text-gray-400" viewBox="0 0 20 20" fill="currentColor">
<path d="M9 6a3 3 0 11-6 0 3 3 0 016 0zM17 6a3 3 0 11-6 0 3 3 0 016 0zM12.93 17c.046-.327.07-.66.07-1a6.97 6.97 0 00-1.5-4.33A5 5 0 0119 16v1h-6.07zM6 11a5 5 0 015 5v1H1v-1a5 5 0 015-5z" />
</svg>
{{$horario->psicologo->nome}} ({{$horario->psicologo->crp}})
</div>
<div class="mt-2 flex items-center text-sm leading-5 text-gray-500 sm:mt-0">
{{$horario->psicologo->especialidade}}
</div>
</div>
</div>
</div>
</li>
@endforeach
</ul>

@else
<h1 class="text-lg text-primary px-2 leading-5 mt-4 border-b border-gray-300 mb-4" >Sem horários para a data, escolha outra data</h1>
@endif
</div>
@endif

</div>
</div>
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
<div x-data="{}" class="fixed top-0 w-full p-2 bg-primary rounded-b">
<label for="data" class="text-lg text-primary p-2 leading-5 mt-4">Selecione uma data</label>
<input data-date-inline-picker="true" wire:model.lazy="data" wire:change="buscarData" type="date" id="data" class="w-full mt-2 rounded shadow focus:outline-none text-primary px-4 py-3 bg-white " min="{{now()->addDay()->format('Y-m-d')}}">
<livewire:calendar/>
</div>
@endif
<div class="py-2 px-4">
Expand Down