public UnidadInmobiliaria Obtener(int id)
        {
            var unidadInmobiliaria = new UnidadInmobiliaria();
            var comando            = BaseDatos.GetStoredProcCommand("[inmueble].[usp_UnidadInmobiliariaSelect]");

            BaseDatos.AddInParameter(comando, "IdUnidadInmobiliaria", DbType.Int32, id);

            using (var lector = BaseDatos.ExecuteReader(comando))
            {
                if (lector.Read())
                {
                    unidadInmobiliaria.id                = lector.GetInt32(lector.GetOrdinal("IdUnidadInmobiliaria"));
                    unidadInmobiliaria.IdProyecto        = lector.GetInt32(lector.GetOrdinal("IdProyecto"));
                    unidadInmobiliaria.IdEtapa           = lector.GetInt32(lector.GetOrdinal("IdEtapa"));
                    unidadInmobiliaria.IdEdificio        = lector.GetInt32(lector.GetOrdinal("IdEdificio"));
                    unidadInmobiliaria.NroPiso           = lector.GetInt32(lector.GetOrdinal("NroPiso"));
                    unidadInmobiliaria.NroInmuebleActual = lector.GetString(lector.GetOrdinal("NroInmuebleActual"));
                    unidadInmobiliaria.Direccion         = lector.GetString(lector.GetOrdinal("Direccion"));
                    unidadInmobiliaria.Observaciones     = lector.GetString(lector.GetOrdinal("Observaciones"));
                    unidadInmobiliaria.Anulado           = lector.GetBoolean(lector.GetOrdinal("Anulado"));
                    unidadInmobiliaria.IdTipoInmueble    = lector.GetInt32(lector.GetOrdinal("IdTipoInmueble"));
                    unidadInmobiliaria.AreaTerreno       = lector.GetDecimal(lector.GetOrdinal("AreaTerreno"));
                    unidadInmobiliaria.NumDormitorio     = lector.GetDecimal(lector.GetOrdinal("NumDormitorio"));
                    unidadInmobiliaria.NumBanios         = lector.GetDecimal(lector.GetOrdinal("NumBanios"));
                    unidadInmobiliaria.PrecioVenta       = lector.GetDecimal(lector.GetOrdinal("PrecioVenta"));
                }
            }

            comando.Dispose();

            return(unidadInmobiliaria);
        }
        public int Agregar(UnidadInmobiliaria unidadInmobiliaria)
        {
            var comando = BaseDatos.GetStoredProcCommand("[inmueble].[usp_UnidadInmobiliariaInsert]");

            BaseDatos.AddOutParameter(comando, "IdUnidadInmobiliaria", DbType.Int32, 4);
            BaseDatos.AddInParameter(comando, "IdProyecto", DbType.Int32, unidadInmobiliaria.IdProyecto);
            BaseDatos.AddInParameter(comando, "IdEtapa", DbType.Int32, unidadInmobiliaria.IdEtapa);
            BaseDatos.AddInParameter(comando, "IdEdificio", DbType.Int32, unidadInmobiliaria.IdEdificio);
            BaseDatos.AddInParameter(comando, "NroPiso", DbType.Int32, unidadInmobiliaria.NroPiso);
            BaseDatos.AddInParameter(comando, "NroInmuebleActual", DbType.String, unidadInmobiliaria.NroInmuebleActual);
            BaseDatos.AddInParameter(comando, "Direccion", DbType.String, unidadInmobiliaria.Direccion);
            BaseDatos.AddInParameter(comando, "Observaciones", DbType.String, unidadInmobiliaria.Observaciones);
            BaseDatos.AddInParameter(comando, "Anulado", DbType.Boolean, unidadInmobiliaria.Anulado);
            BaseDatos.AddInParameter(comando, "IdTipoInmueble", DbType.Int32, unidadInmobiliaria.IdTipoInmueble);
            BaseDatos.AddInParameter(comando, "AreaTerreno", DbType.Decimal, unidadInmobiliaria.AreaTerreno);
            BaseDatos.AddInParameter(comando, "NumDormitorio", DbType.Decimal, unidadInmobiliaria.NumDormitorio);
            BaseDatos.AddInParameter(comando, "NumBanios", DbType.Decimal, unidadInmobiliaria.NumBanios);
            BaseDatos.AddInParameter(comando, "PrecioVenta", DbType.Decimal, unidadInmobiliaria.PrecioVenta);

            var resultado = BaseDatos.ExecuteNonQuery(comando);

            if (resultado == 0)
            {
                throw new Exception("No se pudo insertar el registro en la base de datos.");
            }

            var valor = (int)BaseDatos.GetParameterValue(comando, "IdUnidadInmobiliaria");

            comando.Dispose();

            return(valor);
        }
        public bool Modificar(UnidadInmobiliaria unidadInmobiliaria)
        {
            var comando = BaseDatos.GetStoredProcCommand("[inmueble].[usp_UnidadInmobiliariaUpdate]");

            BaseDatos.AddInParameter(comando, "IdUnidadInmobiliaria", DbType.Int32, unidadInmobiliaria.id);
            BaseDatos.AddInParameter(comando, "IdProyecto", DbType.Int32, unidadInmobiliaria.IdProyecto);
            BaseDatos.AddInParameter(comando, "IdEtapa", DbType.Int32, unidadInmobiliaria.IdEtapa);
            BaseDatos.AddInParameter(comando, "IdEdificio", DbType.Int32, unidadInmobiliaria.IdEdificio);
            BaseDatos.AddInParameter(comando, "NroPiso", DbType.Int32, unidadInmobiliaria.NroPiso);
            BaseDatos.AddInParameter(comando, "NroInmuebleActual", DbType.String, unidadInmobiliaria.NroInmuebleActual);
            BaseDatos.AddInParameter(comando, "Direccion", DbType.String, unidadInmobiliaria.Direccion);
            BaseDatos.AddInParameter(comando, "Observaciones", DbType.String, unidadInmobiliaria.Observaciones);
            BaseDatos.AddInParameter(comando, "Anulado", DbType.Boolean, unidadInmobiliaria.Anulado);
            BaseDatos.AddInParameter(comando, "IdTipoInmueble", DbType.Int32, unidadInmobiliaria.IdTipoInmueble);
            BaseDatos.AddInParameter(comando, "AreaTerreno", DbType.Decimal, unidadInmobiliaria.AreaTerreno);
            BaseDatos.AddInParameter(comando, "NumDormitorio", DbType.Decimal, unidadInmobiliaria.NumDormitorio);
            BaseDatos.AddInParameter(comando, "NumBanios", DbType.Decimal, unidadInmobiliaria.NumBanios);
            BaseDatos.AddInParameter(comando, "PrecioVenta", DbType.Decimal, unidadInmobiliaria.PrecioVenta);

            var resultado = BaseDatos.ExecuteNonQuery(comando);

            if (resultado == 0)
            {
                throw new Exception("Hubo un error al modificar.");
            }

            comando.Dispose();

            return(true);
        }
        public bool Modificar(UnidadInmobiliaria unidadInmobiliaria)
        {
            UnidadInmobiliaria unidadInmobiliariaExistente = this.Obtener(unidadInmobiliaria.id);

            if (unidadInmobiliaria.IdProyecto != unidadInmobiliariaExistente.IdProyecto ||
                unidadInmobiliaria.IdEtapa != unidadInmobiliariaExistente.IdEtapa ||
                unidadInmobiliaria.IdEdificio != unidadInmobiliariaExistente.IdEdificio ||
                unidadInmobiliaria.NroInmuebleActual != unidadInmobiliariaExistente.NroInmuebleActual)
            {
                UnidadInmobiliaria unidadInmobiliariaExistente2 = this.ValidarExistencia(unidadInmobiliaria);

                if (unidadInmobiliariaExistente2 != null)
                {
                    throw new WebFaultException <Error>(
                              new Error()
                    {
                        codigo      = "0001",
                        descripcion = "Ya existe una unidad inmobiliaria para el proyecto " + unidadInmobiliariaExistente.IdProyecto.ToString() + ", etapa " + unidadInmobiliariaExistente.IdEtapa.ToString() + " y edificio " + unidadInmobiliariaExistente.IdEdificio.ToString() + "."
                    },
                              HttpStatusCode.InternalServerError);
                }
            }

            return(datUnidadInmobiliaria.Instancia.Modificar(unidadInmobiliaria));
        }
 public bool Modificar(UnidadInmobiliaria unidadInmobiliaria)
 {
     //if ("1".Equals(alumnoACrear.Codigo))
     //{
     //    throw new WebFaultException<string>(
     //        "Alumno imposible", HttpStatusCode.InternalServerError);
     //}
     return(busUnidadInmobiliaria.Instancia.Modificar(unidadInmobiliaria));
 }
        public int Agregar(UnidadInmobiliaria unidadInmobiliaria)
        {
            // Esta validación no utiliza la clase Error.
            //if ("203".Equals(unidadInmobiliaria.NroInmuebleActual))
            //{
            //    throw new WebFaultException<string>(
            //        "La unidad inmobiliaria ya existe.", HttpStatusCode.InternalServerError);
            //}

            return(busUnidadInmobiliaria.Instancia.Agregar(unidadInmobiliaria));
        }
 public UnidadInmobiliaria ValidarExistencia(UnidadInmobiliaria unidadInmobiliaria)
 {
     try
     {
         return(datUnidadInmobiliaria.Instancia.ValidarExistencia(unidadInmobiliaria));
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
        //
        // GET: /UnidadInmobiliaria/Details/5

        public ActionResult Details(int id)
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:7182/UnidadInmobiliarias.svc/UnidadInmobiliarias" + "/" + id.ToString());

            request.Method = "GET";

            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            StreamReader    reader   = new StreamReader(response.GetResponseStream());
            string          json     = reader.ReadToEnd();

            JavaScriptSerializer javascript         = new JavaScriptSerializer();
            UnidadInmobiliaria   unidadInmobiliaria = javascript.Deserialize <UnidadInmobiliaria>(json);

            return(View(unidadInmobiliaria));
        }
        public ActionResult Create(UnidadInmobiliaria unidadInmobiliaria)
        {
            try
            {
                string postdata = "{\"IdProyecto\":" + unidadInmobiliaria.IdProyecto + ",\"IdEtapa\":" + unidadInmobiliaria.IdEtapa + ",\"IdEdificio\":" + unidadInmobiliaria.IdEdificio + ",\"NroPiso\":" + unidadInmobiliaria.NroPiso + ",\"NroInmuebleActual\":\"" + unidadInmobiliaria.NroInmuebleActual + "\",\"Direccion\":\"" + unidadInmobiliaria.Direccion + "\",\"Observaciones\":\"" + unidadInmobiliaria.Observaciones + "\",\"Anulado\":false,\"IdTipoInmueble\":" + unidadInmobiliaria.IdTipoInmueble + ",\"AreaTerreno\":" + unidadInmobiliaria.AreaTerreno + ",\"NumDormitorio\":" + unidadInmobiliaria.NumDormitorio + ",\"NumBanios\":" + unidadInmobiliaria.NumBanios + ",\"PrecioVenta\":" + unidadInmobiliaria.PrecioVenta + "}";

                byte[] data = Encoding.UTF8.GetBytes(postdata);

                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:7182/UnidadInmobiliarias.svc/UnidadInmobiliarias");
                request.Method        = "POST";
                request.ContentLength = data.Length;
                request.ContentType   = "application/json";

                var reqStream = request.GetRequestStream();
                reqStream.Write(data, 0, data.Length);

                HttpWebResponse response = (HttpWebResponse)request.GetResponse();

                StreamReader reader = new StreamReader(response.GetResponseStream());

                // Invocar al listado de unidades inmobiliarias y visualizarlo en su vista
                request        = (HttpWebRequest)WebRequest.Create("http://localhost:7182/UnidadInmobiliarias.svc/UnidadInmobiliarias");
                request.Method = "GET";

                response = (HttpWebResponse)request.GetResponse();
                reader   = new StreamReader(response.GetResponseStream());
                string json = reader.ReadToEnd();

                JavaScriptSerializer      javascript            = new JavaScriptSerializer();
                List <UnidadInmobiliaria> unidadesInmobiliarias = javascript.Deserialize <List <UnidadInmobiliaria> >(json);

                return(View("Index", unidadesInmobiliarias));
            }
            catch (WebException we)
            {
                HttpWebResponse response = (HttpWebResponse)we.Response;
                StreamReader    reader   = new StreamReader(response.GetResponseStream());

                string json = reader.ReadToEnd();
                JavaScriptSerializer javascript = new JavaScriptSerializer();
                Error error = javascript.Deserialize <Error>(json);

                ModelState.AddModelError(String.Empty, error.descripcion);

                return(View("Create"));
            }
        }
        public int Agregar(UnidadInmobiliaria unidadInmobiliaria)
        {
            UnidadInmobiliaria unidadInmobiliariaExistente = this.ValidarExistencia(unidadInmobiliaria);

            if (unidadInmobiliariaExistente != null)
            {
                throw new WebFaultException <Error>(
                          new Error()
                {
                    codigo      = "0001",
                    descripcion = "Ya existe una unidad inmobiliaria para el proyecto " + unidadInmobiliariaExistente.IdProyecto.ToString() + ", etapa " + unidadInmobiliariaExistente.IdEtapa.ToString() + " y edificio " + unidadInmobiliariaExistente.IdEdificio.ToString() + "."
                },
                          HttpStatusCode.InternalServerError);
            }

            return(datUnidadInmobiliaria.Instancia.Agregar(unidadInmobiliaria));
        }
        public ActionResult Delete(UnidadInmobiliaria unidadInmobiliaria)
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:7182/UnidadInmobiliarias.svc/UnidadInmobiliarias" + "/" + unidadInmobiliaria.id.ToString());

            request.Method = "DELETE";

            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            StreamReader    reader   = new StreamReader(response.GetResponseStream());

            // Invocar al listado de unidades inmobiliarias y visualizarlo en su vista
            request        = (HttpWebRequest)WebRequest.Create("http://localhost:7182/UnidadInmobiliarias.svc/UnidadInmobiliarias");
            request.Method = "GET";

            response = (HttpWebResponse)request.GetResponse();
            reader   = new StreamReader(response.GetResponseStream());
            string json = reader.ReadToEnd();

            JavaScriptSerializer      javascript            = new JavaScriptSerializer();
            List <UnidadInmobiliaria> unidadesInmobiliarias = javascript.Deserialize <List <UnidadInmobiliaria> >(json);

            return(View("Index", unidadesInmobiliarias));
        }
        public UnidadInmobiliaria ValidarExistencia(UnidadInmobiliaria unidadInmobiliaria)
        {
            var comando = BaseDatos.GetStoredProcCommand("[inmueble].[usp_UnidadInmobiliariaValidarExistencia]");

            BaseDatos.AddInParameter(comando, "IdProyecto", DbType.Int32, unidadInmobiliaria.IdProyecto);
            BaseDatos.AddInParameter(comando, "IdEtapa", DbType.Int32, unidadInmobiliaria.IdEtapa);
            BaseDatos.AddInParameter(comando, "IdEdificio", DbType.Int32, unidadInmobiliaria.IdEdificio);
            BaseDatos.AddInParameter(comando, "NroInmuebleActual", DbType.String, unidadInmobiliaria.NroInmuebleActual);

            UnidadInmobiliaria unidadInmobiliariaExistente = null;

            using (var lector = BaseDatos.ExecuteReader(comando))
            {
                if (lector.Read())
                {
                    unidadInmobiliariaExistente = new UnidadInmobiliaria()
                    {
                        id                = lector.GetInt32(lector.GetOrdinal("IdUnidadInmobiliaria")),
                        IdProyecto        = lector.GetInt32(lector.GetOrdinal("IdProyecto")),
                        IdEtapa           = lector.GetInt32(lector.GetOrdinal("IdEtapa")),
                        IdEdificio        = lector.GetInt32(lector.GetOrdinal("IdEdificio")),
                        NroPiso           = lector.GetInt32(lector.GetOrdinal("NroPiso")),
                        NroInmuebleActual = lector.GetString(lector.GetOrdinal("NroInmuebleActual")),
                        Direccion         = lector.GetString(lector.GetOrdinal("Direccion")),
                        Observaciones     = lector.GetString(lector.GetOrdinal("Observaciones")),
                        Anulado           = lector.GetBoolean(lector.GetOrdinal("Anulado")),
                        IdTipoInmueble    = lector.GetInt32(lector.GetOrdinal("IdTipoInmueble")),
                        AreaTerreno       = lector.GetDecimal(lector.GetOrdinal("AreaTerreno")),
                        NumDormitorio     = lector.GetDecimal(lector.GetOrdinal("NumDormitorio")),
                        NumBanios         = lector.GetDecimal(lector.GetOrdinal("NumBanios")),
                        PrecioVenta       = lector.GetDecimal(lector.GetOrdinal("PrecioVenta"))
                    };
                }
            }

            comando.Dispose();

            return(unidadInmobiliariaExistente);
        }
Example #13
0
        public void AgregarTest()
        {
            string postdata = "{\"IdUnidadInmobiliaria\":0,\"IdProyecto\":3,\"IdEtapa\":1,\"IdEdificio\":1,\"NroPiso\":1,\"NroInmuebleActual\":\"203\",\"Direccion\":\"AV. MEXICO 785\",\"Observaciones\":\"DEPARTAMENTO DE ESTRENO\",\"Anulado\":false,\"IdTipoInmueble\":1,\"AreaTerreno\":69.00,\"NumDormitorio\":3.00,\"NumBanios\":2.00,\"PrecioVenta\":224000.00}";

            byte[] data = Encoding.UTF8.GetBytes(postdata);

            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:7182/UnidadInmobiliarias.svc/UnidadInmobiliarias");

            request.Method        = "POST";
            request.ContentLength = data.Length;
            request.ContentType   = "application/json";

            var reqStream = request.GetRequestStream();

            reqStream.Write(data, 0, data.Length);

            HttpWebResponse response = null;

            try
            {
                response = (HttpWebResponse)request.GetResponse();
                StreamReader reader = new StreamReader(response.GetResponseStream());

                int id = Convert.ToInt32(reader.ReadToEnd());

                Assert.AreEqual(13, id);

                // Verifica si el inmueble se registró
                request        = (HttpWebRequest)WebRequest.Create("http://localhost:7182/UnidadInmobiliarias.svc/UnidadInmobiliarias/" + id.ToString());
                request.Method = "GET";

                response = (HttpWebResponse)request.GetResponse();
                reader   = new StreamReader(response.GetResponseStream());
                string json = reader.ReadToEnd();

                JavaScriptSerializer javascript         = new JavaScriptSerializer();
                UnidadInmobiliaria   unidadInmobiliaria = javascript.Deserialize <UnidadInmobiliaria>(json);

                Assert.AreEqual(17, unidadInmobiliaria.id);
                Assert.AreEqual("203", unidadInmobiliaria.NroInmuebleActual);
            }
            catch (WebException we)
            {
                //HttpStatusCode code = ((HttpWebResponse)e.Response).StatusCode;
                //string description = ((HttpWebResponse)e.Response).StatusDescription;

                //StreamReader reader = new StreamReader(e.Response.GetResponseStream());
                //string error = reader.ReadToEnd();

                //JavaScriptSerializer javascript = new JavaScriptSerializer();
                //string detail = javascript.Deserialize<string>(error);

                //Assert.AreEqual("La unidad inmobiliaria ya se encuentra registrada.", detail);

                response = (HttpWebResponse)we.Response;
                StreamReader reader = new StreamReader(response.GetResponseStream());

                string json = reader.ReadToEnd();
                JavaScriptSerializer javascript = new JavaScriptSerializer();
                Error error = javascript.Deserialize <Error>(json);

                Assert.AreEqual("La unidad inmobiliaria ya existe.", error.descripcion);
            }
        }