Exemple #1
0
        // GET: UnidadesSaude
        public ActionResult Index()
        {
            UnidadeSaude        unidades = new UnidadeSaude();
            HttpResponseMessage response = client.GetAsync("/api/action/datastore_search?resource_id=ecf0e670-2968-4a01-b256-69f64e3e9ca2").Result;

            if (response.IsSuccessStatusCode)
            {
                unidades = response.Content.ReadAsAsync <UnidadeSaude>().Result;
            }
            return(View(unidades));
        }
Exemple #2
0
        public JsonResult GetPins()
        {
            List <Pin> pins = new List <Pin>();

            HttpResponseMessage response = client.GetAsync("/api/action/datastore_search?resource_id=ecf0e670-2968-4a01-b256-69f64e3e9ca2").Result;

            if (response.IsSuccessStatusCode)
            {
                UnidadeSaude unidade = new UnidadeSaude();
                unidade = response.Content.ReadAsAsync <UnidadeSaude>().Result;
                foreach (var item in unidade.result.Records)
                {
                    pins.Add(new Pin(item));
                }
            }

            return(Json(pins, JsonRequestBehavior.AllowGet));
        }
        /// <summary>
        /// Lista todas as unidades de saúde.
        /// </summary>
        /// <returns>Uma lista de unidades de saúde.</returns>
        public List <UnidadeSaude> Listar()
        {
            var listaDeUnidadesSaude = new List <UnidadeSaude>();

            NpgsqlConnection conn =
                new NpgsqlConnection(this._connectionString);

            try
            {
                conn.Open();

                string sqlCommand = "SELECT codigounidadesaude, nome FROM unidadessaude";

                NpgsqlCommand command = new NpgsqlCommand(sqlCommand, conn);
                command.CommandType = CommandType.Text;

                NpgsqlDataReader reader = command.ExecuteReader();

                while (reader.Read())
                {
                    var unidadeSaude = new UnidadeSaude();
                    unidadeSaude.FromNpgsqlDataReader(reader);
                    listaDeUnidadesSaude.Add(unidadeSaude);
                }
            }
            catch
            {
                throw;
            }
            finally
            {
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }

            return(listaDeUnidadesSaude);
        }
Exemple #4
0
        private void btnInserir_Click(object sender, EventArgs e)
        {
            // valida os campos
            if (!this.ValidarCampos())
            {
                return;
            }


            // workspace
            IWorkspace workspace =
                ArcMapUtils.GetFeatureLayerWorkspace(this._layerDeUnidadesDeSaude);

            IWorkspaceEdit2 workspaceEdit = workspace as IWorkspaceEdit2;

            if (workspaceEdit.IsBeingEdited())
            {
                MessageBox.Show(this, "O workspace está em edição. Aguarde.", this.Text,
                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                return;
            }

            // filtro para achar o bairro e o distrito sanitário a que a unidade de saúde pertence
            ISpatialFilter spatialFilter = new SpatialFilterClass();

            spatialFilter.Geometry   = this._featureParaCopia.ShapeCopy;
            spatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelIntersects;


            // pegar o código do bairro
            IFeatureCursor featCursorBairros = this._layerDeBairros.Search(spatialFilter, false);
            IFeature       featureBairro     = featCursorBairros.NextFeature();

            int nomeIndex = this._layerDeBairros.FeatureClass.FindField("nome");

            int    codigoBairro = featureBairro.OID;
            string nomeBairro   = (string)featureBairro.get_Value(nomeIndex);


            //pegar o código do distrito sanitário
            IFeatureCursor featCursorDistritos = this._layerDeDistritos.Search(spatialFilter, false);
            IFeature       featureDistrito     = featCursorDistritos.NextFeature();

            int nomeIndex1 = this._layerDeDistritos.FeatureClass.FindField("nome");

            int    codigoDistrito = featureDistrito.OID;
            string nomeDistrito   = (string)featureDistrito.get_Value(nomeIndex1);

            this.Cursor = Cursors.WaitCursor;


            //cadastra a nova unidade de saúde
            try
            {
                // inicia edição
                workspaceEdit.StartEditing(true);
                workspaceEdit.StartEditOperation();

                // dados da nova Unidade de Saúde
                UnidadeSaude unidadeDeSaude = new UnidadeSaude();
                unidadeDeSaude.Nome                    = txtNomeUS.Text.ToString();
                unidadeDeSaude.Endereco                = txtEnderecoUS.Text.ToString();
                unidadeDeSaude.Bairro                  = txtBairroUS.Text.ToString();
                unidadeDeSaude.DistritoSanitario       = txtDistritoUS.Text.ToString();
                unidadeDeSaude.CodigoBairro            = (int)codigoBairro;
                unidadeDeSaude.CodigoDistritoSanitario = (int)codigoDistrito;

                // criação da nova feature
                IFeature featureUnidadeDeSaude = this._layerDeUnidadesDeSaude.FeatureClass.CreateFeature();
                featureUnidadeDeSaude.Shape = _featureParaCopia.ShapeCopy;
                unidadeDeSaude.ToFeature(featureUnidadeDeSaude);

                // finaliza edição
                workspaceEdit.StopEditOperation();
                workspaceEdit.StopEditing(true);

                MessageBox.Show(this, "Unidade de Saúde inserida com sucesso !", this.Text,
                                MessageBoxButtons.OK, MessageBoxIcon.Information);

                // limpa seleção
                ArcMap.Document.FocusMap.ClearSelection();

                // fecha o formulário
                this.Close();
            }
            catch
            {
                // cancela edição
                if (workspaceEdit.IsInEditOperation)
                {
                    workspaceEdit.AbortEditOperation();
                }
                workspaceEdit.StopEditing(false);

                MessageBox.Show(this, "Não foi possível realizar a inserção de uma nova unidade de saúde !", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                // refresh
                IActiveView activeView = ArcMap.Document.FocusMap as IActiveView;
                activeView.Refresh();

                // cursor
                this.Cursor = Cursors.Default;
            }
        }
Exemple #5
0
 // <summary>
 /// Recupera os dados das unidades de saude com base no Data Reader.
 /// </summary>
 /// <param name="unidadeSaude">A Unidade de Saude.</param>
 /// <param name="reader">O objeto data reader.</param>
 public static void FromNpgsqlDataReader(this UnidadeSaude unidadeSaude, NpgsqlDataReader reader)
 {
     unidadeSaude.CodigoUnidadeSaude = reader.GetInt32(0);
     unidadeSaude.Nome = reader.GetString(1);
 }