Skip to content

Instantly share code, notes, and snippets.

@betinho37
Created August 25, 2017 19:10
Show Gist options
  • Save betinho37/9c588c94ec33e79b6f3fe8c80edd0bee to your computer and use it in GitHub Desktop.
Save betinho37/9c588c94ec33e79b6f3fe8c80edd0bee to your computer and use it in GitHub Desktop.
<?php
namespace App\Http\Controllers;
use App\Pagamento;
use App\Empresa;
use App\Destino;
use Illuminate\Http\Request;
use DB;
class pagamentos extends Controller
{
private $pagamentos, $empresa, $destino;
public function __construct(Pagamento $pagamentos, Empresa $empresa, Destino $destino)
{
$this->pagamentos = $pagamentos;
$this->empresa = $empresa;
$this->destino = $destino;
}
public function index()
{
//Soma os Valores do Campo 'valor' Quando forem Pendentes
$soma = DB::table('pagamentos')
->where('situacao', 0)
->sum('valor');
//Ordernar Datas
$pagamentos = $this->pagamentos->orderBy('data', 'asc')->get();
return view('sige.pagamentos.index', compact('pagamentos', 'soma'));
}
public function create ()
{
$list_empresa = $this->empresa->listEmpresas();
$list_destino = $this->destino->listDestinos();
return view ('sige.pagamentos.create', compact('list_empresa', 'list_destino'));
}
public function store(Request $request)
{
//Upload do Arquivo
if ($request->exists('arquivo')) {
$file = \Input::file('arquivo');
//Mover Arquivo para public/upload
$destinationPath = public_path().DIRECTORY_SEPARATOR.'uploads';
/*Renomeia o Arquivo
$name['arquivo'] = time().'.'.$file->getClientOriginalExtension();*/
$inputs = $request->all();
//Salva Nome Verdadeiro do arquivo
$name['arquivo'] = time().'.'.$file->getClientOriginalName();
//Trata o Valor para Inserir no banco
$inputs['valor'] = str_replace(',', '.', str_replace('.', '', $inputs['valor']));
$file->move( $destinationPath, $name['arquivo']);
$inputs['arquivo'] = $name['arquivo'];
$this->pagamentos->create($inputs);
}
return view ('/paginainicial');
}
public function edit($id)
{
$list_empresa = $this->empresa->listEmpresas();
$list_destino = $this->destino->listDestinos();
$pagamentos = Pagamento::find($id);
return view('sige.pagamentos.edit', compact('pagamentos', 'list_empresa', 'list_destino'));
}
public function update (Request $request, $id)
{
$pagamentos =Pagamento::find($id);
if ($file = \Input::file('arquivo'))
{
$destinationPath = public_path().DIRECTORY_SEPARATOR.'uploads';
$namearquivo['arquivo'] = time().'.'.$file->getClientOriginalExtension();
$file->move( $destinationPath, $namearquivo['arquivo']);
$pagamentos->arquivo = $namearquivo['arquivo'];
}
$pagamentos->empresa_id = $request->empresa_id;
$pagamentos->destino_id = $request->destino_id;
$pagamentos->name = $request->name;
$pagamentos->valor = $request->valor = str_replace(',', '.', str_replace('.', '', $request['valor']));;
$pagamentos->data = $request->data;
$pagamentos->situacao = $request->situacao;
$pagamentos->save();
return view('paginainicial');
}
public function download($id)
{
$pagamento = Pagamento::find($id);
$pieces = explode(".", $pagamento->arquivo);
$final = 'meu_arquivo.' . $pieces[1];
return response()->download($pagamento->arquivo);
return response()->download($pagamento->arquivo, $final, 'Content-Type: application/pdf');
// $headers = array('Content-Type: application/pdf',);
// return Response::download($file, 'info.pdf',$headers);
}
public function destroy($id)
{
$pagamentos = Pagamento::find($id);
$pagamentos->delete();
return view('paginainicial');
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment