This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Cadastro;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Services\Cadastro\UnificacaoUsuarioPacienteService;
|
||||
use App\Utils\MaskUtil;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class UnificacaoUsuarioPacienteController extends Controller
|
||||
{
|
||||
protected $modulo = 'cadastro';
|
||||
protected $funcionalidade = 'unificacao-usuario-paciente';
|
||||
|
||||
public function autocomplete()
|
||||
{
|
||||
return datatables()
|
||||
->of(UnificacaoUsuarioPacienteService::autocomplete())
|
||||
->filterColumn('cadastro_paciente.prontuario', function ($query, $keyword) {
|
||||
$query->whereRaw('LPAD(cadastro_paciente.prontuario,7,0) like ?', ["%{$keyword}%"]);
|
||||
})
|
||||
->filterColumn('cadastro_cidadao.data_nascimento', function($query, $keyword){
|
||||
$keyword = preg_replace('/[^0-9]/', '', $keyword);
|
||||
if(strlen($keyword) == 8){
|
||||
$data = Carbon::createFromFormat('dmY', $keyword)->format('Y-m-d');
|
||||
$query->whereDate('cadastro_cidadao.data_nascimento', $data);
|
||||
}
|
||||
})
|
||||
->editColumn('cpf', fn ($query) => MaskUtil::getCpfMasked($query->cpf))
|
||||
->editColumn('cns', fn ($query) => MaskUtil::getCnsMasked($query->cns))
|
||||
->toJson();
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$this->auth(__FUNCTION__);
|
||||
|
||||
return response()->json(UnificacaoUsuarioPacienteService::store($request), Response::HTTP_OK);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user