internal static AtivoModel ConvertToModel(AtivoModelApi modelApi) { var model = new AtivoModel(); model.Id = modelApi.Id; model.Nome = modelApi.Nome; model.Tipo = modelApi.Tipo; model.QtdDiasPeriodoManutencao = modelApi.QtdDiasManutencao; model.UltimaManutencao = modelApi.DataUltimaManutencao; model.Responsavel = modelApi.Responsavel; //Verificar se ativo baixado... model.HasBaixado = (modelApi.BaixaAtivo != null); if (model.HasBaixado) { model.Baixa = BaixaAtivoModel.ConvertToModel(modelApi.BaixaAtivo); } //Verificar se ativo possui manutenções... model.HasManutencoes = (modelApi.ManutencoesAtivo != null && modelApi.ManutencoesAtivo.Any()); if (model.HasManutencoes) { model.Manutencoes = ManutencaoAtivoModel.ConvertToModels(modelApi.ManutencoesAtivo); } return(model); }
/// <summary> /// Gravar as informações do Ativo. /// </summary> /// <param name="ativoModel">Dados do ativo a ser gravado.</param> public void GravarAtivo(AtivoModelApi ativoModel) { try { string baseURL = _configuration.GetSection("SGA_AtivoAPI:BaseURL").Value; string key = _configuration.GetSection("SGA_AtivoAPI:Key").Value; if (!string.IsNullOrEmpty(key)) { baseURL += $"?api_key={key}"; } ativoModel.DataRegistro = DateTime.Now; StringContent content = new StringContent(JsonConvert.SerializeObject(ativoModel), System.Text.Encoding.UTF8, "application/json"); HttpResponseMessage response; if (string.IsNullOrEmpty(ativoModel.Id)) { response = _client.PostAsync(baseURL, content).Result; } else { response = _client.PutAsync(baseURL, content).Result; } response.EnsureSuccessStatusCode(); } catch (Exception erro) { throw new HttpRequestException("Erro ao gravar ativo.", erro); } }
public IActionResult Gravar(AtivoModel model) { if (!ModelState.IsValid) { return(JsonResultErro(ModelState)); } AtivoModelApi modelApi = new AtivoModelApi(); if (!string.IsNullOrEmpty(model.Id)) { modelApi.Id = model.Id; } modelApi.Nome = model.Nome; modelApi.Tipo = model.Tipo; modelApi.QtdDiasManutencao = model.QtdDiasPeriodoManutencao; modelApi.Responsavel = User.Identity.Name; try { _sgaAtivoApiClient.GravarAtivo(modelApi); return(JsonResultSucesso("Ativo registrado com sucesso.")); } catch (Exception erro) { return(JsonResultErro(erro)); } }
public IActionResult Registrar(BaixaAtivoModel model) { if (!ModelState.IsValid) { return(JsonResultErro(ModelState)); } try { //Recuperar o ativo para registrar a baixa; AtivoModelApi modelAtivoApi = _sgaAtivoApiClient.ObterAtivo(model.IdAtivo); if (modelAtivoApi.BaixaAtivo != null) { string dataBaixa = modelAtivoApi.BaixaAtivo.Data.ToString("dd/MM/yyyy"); return(JsonResultErro($"Ativo já baixado em [{dataBaixa}]")); } BaixaAtivoModelApi baixaModelApi = new BaixaAtivoModelApi(); baixaModelApi.Data = model.Data; baixaModelApi.Motivo = model.Motivo; baixaModelApi.Responsavel = User.Identity.Name; modelAtivoApi.BaixaAtivo = baixaModelApi; _sgaAtivoApiClient.GravarAtivo(modelAtivoApi); return(JsonResultSucesso("Baixa do ativo registrado com sucesso.")); } catch (Exception erro) { return(JsonResultErro(erro)); } }
public IActionResult Registrar(ManutencaoAtivoModel model) { if (!ModelState.IsValid) { return(JsonResultErro(ModelState)); } try { //Recuperar o ativo para registrar a manutenção; AtivoModelApi modelAtivoApi = _sgaAtivoApiClient.ObterAtivo(model.IdAtivo); if (modelAtivoApi.ManutencoesAtivo == null) { modelAtivoApi.ManutencoesAtivo = new List <ManutencaoAtivoModelApi>(); } ManutencaoAtivoModelApi manutencaoModelApi = new ManutencaoAtivoModelApi(); manutencaoModelApi.Data = model.Data; manutencaoModelApi.Descricao = model.Descricao; manutencaoModelApi.HasPreventiva = model.HasPreventiva; manutencaoModelApi.Responsavel = User.Identity.Name; modelAtivoApi.ManutencoesAtivo.Add(manutencaoModelApi); modelAtivoApi.DataUltimaManutencao = model.Data; _sgaAtivoApiClient.GravarAtivo(modelAtivoApi); return(JsonResultSucesso("Manutenção em ativo registrado com sucesso.")); } catch (Exception erro) { return(JsonResultErro(erro)); } }