public string DesativarUsuario(int idUsuario) { try { var garagem = _garagemService.GetByIdUser(idUsuario); bool temGaragemCasa = false; foreach (Garagem gar in garagem) { temGaragemCasa = true; if (VerificaSeHaVagaOcupada(gar.GaragemId, idUsuario)) { return(JsonConvert.SerializeObject(new { code = 400, message = "Você não pode desativar sua conta pois existe(m) vaga(s) ocupada(s) em sua(s) garagem(s) no momento." })); } } if (VerificaSeHaVeiculoQuePossuiGaragemOcupada(idUsuario)) { return(JsonConvert.SerializeObject(new { code = 400, message = "Você não pode desativar sua conta pois você possui veículo(s) alugando vaga(s) no momento." })); } if (temGaragemCasa) { DesativaGaragensCasas(idUsuario, garagem); } _veiculoService.DisableAllVehicle(idUsuario); var dadosPagamento = _dadosPagamentoService.GetAll().Where(d => d.UsuarioId == idUsuario); foreach (var d in dadosPagamento) { d.Ativo = false; _dadosPagamentoService.Update(d); } var dadosBancario = _dadosBancarioService.GetAll().Where(d => d.UsuarioId == idUsuario); foreach (var d in dadosBancario) { d.Ativo = false; _dadosBancarioService.Update(d); } _usuarioService.DisableUser(idUsuario); return(JsonConvert.SerializeObject(new { code = 200, message = "Sua conta foi desativada. Para ativá-la, basta fazer login novamente!!" })); } catch { return(JsonConvert.SerializeObject(new { code = 400, message = "Erro ao desativar. Por favor tente novamente." })); } }