joaopaulofcc

Untitled

Nov 17th, 2021
562
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.45 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Threading.Tasks;
  5. using Microsoft.AspNetCore.Http;
  6. using Microsoft.AspNetCore.Mvc;
  7. using Microsoft.EntityFrameworkCore;
  8. using conexaoPostgre.Models;
  9.  
  10. namespace conexaoPostgre.Controllers
  11. {
  12.     [Route("[controller]/[action]")]
  13.     [ApiController]
  14.     public class ColaboradorController : ControllerBase
  15.     {
  16.         private BDContexto contexto;
  17.  
  18.         public ColaboradorController(BDContexto bdContexto)
  19.         {
  20.             contexto = bdContexto;
  21.         }
  22.  
  23.         [HttpGet]
  24.         public List<Colaborador> Listar()
  25.         {
  26.             return contexto.Colaboradores.Include(c => c.Cargo).OrderBy(c => c.Id).Select
  27.                 (
  28.                     c => new Colaborador
  29.                     {
  30.                         Id = c.Id,
  31.                         Nome = c.Nome,
  32.                         Salario = c.Salario,
  33.                         Cargo = new Cargo
  34.                         {
  35.                             Id = c.Cargo.Id,
  36.                             Nome = c.Cargo.Nome,
  37.                             Tipo = c.Cargo.Tipo,
  38.                             SalarioMinimo = c.Cargo.SalarioMinimo,
  39.                             SalarioMaximo = c.Cargo.SalarioMaximo
  40.                         }
  41.                     }
  42.                 ).ToList();
  43.             }
  44.  
  45.         [HttpGet]
  46.         public List<Colaborador> ListarPorFaixa(double valorInicial, double valorFinal)
  47.         {
  48.             return contexto.Colaboradores.Where(c => c.Salario >= valorInicial && c.Salario <= valorFinal).Select
  49.             (
  50.                 c => new Colaborador
  51.                 {
  52.                     Id = c.Id,
  53.                     Nome = c.Nome,
  54.                     Salario = c.Salario,
  55.                     Cargo = new Cargo
  56.                     {
  57.                         Id = c.Cargo.Id,
  58.                         Nome = c.Cargo.Nome,
  59.                         Tipo = c.Cargo.Tipo,
  60.                         SalarioMinimo = c.Cargo.SalarioMinimo,
  61.                         SalarioMaximo = c.Cargo.SalarioMaximo                    
  62.                     }
  63.                 }).ToList();
  64.         }
  65.  
  66.         [HttpGet]
  67.         public List<Colaborador> ListarPorCargo(string cargo)
  68.         {
  69.             return contexto.Colaboradores.Where(c => c.Cargo.Nome == cargo).Select
  70.             (
  71.                 c => new Colaborador
  72.                 {
  73.                     Id = c.Id,
  74.                     Nome = c.Nome,
  75.                     Salario = c.Salario,
  76.                     Cargo = new Cargo
  77.                     {
  78.                         Id = c.Cargo.Id,
  79.                         Nome = c.Cargo.Nome,
  80.                         Tipo = c.Cargo.Tipo,
  81.                         SalarioMinimo = c.Cargo.SalarioMinimo,
  82.                         SalarioMaximo = c.Cargo.SalarioMaximo                    
  83.                     }
  84.                 }).ToList();
  85.         }
  86.  
  87.          [HttpPost]
  88.         public string Cadastrar([FromBody]Colaborador dados)
  89.         {
  90.             contexto.Add(dados);
  91.             contexto.SaveChanges();
  92.            
  93.             return "Colaborador cadastrado com sucesso!";
  94.         }
  95.  
  96.         [HttpDelete]
  97.         public string Excluir([FromBody]int id)
  98.         {
  99.             Colaborador dados = contexto.Colaboradores.FirstOrDefault(p => p.Id == id);
  100.  
  101.             if (dados == null)
  102.             {
  103.                 return "Não foi encontrado Colaborador para o ID informado!";
  104.             }
  105.             else
  106.             {
  107.                 contexto.Remove(dados);
  108.                 contexto.SaveChanges();
  109.            
  110.                 return "Colaborador excluído com sucesso!";
  111.             }
  112.         }
  113.  
  114.         [HttpGet]
  115.         public Colaborador Visualizar(int id)
  116.         {
  117.             return contexto.Colaboradores.Include(p => p.Cargo)
  118.             .Select(c => new Colaborador
  119.             {
  120.                 Id = c.Id,
  121.                 Nome = c.Nome,
  122.                 Salario = c.Salario,
  123.                 Cargo = new Cargo
  124.                 {
  125.                     Id = c.Cargo.Id,
  126.                     Nome = c.Cargo.Nome
  127.                 }
  128.             }).FirstOrDefault(p => p.Id == id);
  129.         }
  130.  
  131.         [HttpPut]
  132.         public string Alterar([FromBody]Colaborador dados)
  133.         {
  134.             contexto.Update(dados);
  135.             contexto.SaveChanges();
  136.            
  137.             return "Colaborador alterado com sucesso!";
  138.         }
  139.     }
  140. }
Advertisement
Add Comment
Please, Sign In to add comment