public IHttpActionResult Delete(int id) { try { var placaGrupo = _repository.GetByID(id); if (placaGrupo == null) { return(NotFound()); } var placas = _placaRepository.GetByPlacaGrupoID(id).ToList(); if (placas.Where(x => x.ItemID != null).Count() > 0) { return(BadRequest("Esse Grupo de Placas não pode ser excluído pois já existem Itens vinculados à ele")); } foreach (var placa in placas) { _placaRepository.Delete(placa.ID); } _repository.Delete(id); return(Ok()); } catch (System.Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult GetByPlacaGrupoID(int placaGrupoID) { try { var placaGrupo = _placaGrupoRepository.GetByID(placaGrupoID); var placas = _repository.GetByPlacaGrupoID(placaGrupoID); List <object> lista = new List <object>(); foreach (var placa in placas) { string NumeroPlacaFormatada = placaGrupo.AplicaZerosEsquerda ? placa.NumeroPlaca.ToString().PadLeft(placaGrupo.Tamanho, '0') : placa.NumeroPlaca.ToString().PadRight(placaGrupo.Tamanho, '0'); var item = placa.ItemID == null ? null : _itemRepository.GetByID((int)placa.ItemID); lista.Add(new { placa.DataCadastroFormatada, placa.ID, placa.ItemID, Item = item == null ? null : new { item.Codigo, item.Nome, item.Incorporacao }, placa.NumeroPlaca, placa.Observacao, placa.PlacaGrupoID, NumeroPlacaFormatada, EditarObservacoes = false }); } return(Ok(lista)); } catch (System.Exception ex) { return(BadRequest(ex.Message)); } }