Exemple #1
0
        //// GET: Subastas/Edit/5
        //public ActionResult Edit(int? id)
        //{
        //    if (id == null)
        //    {
        //        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
        //    }
        //    Subasta subasta = db.Subastas.Find(id);
        //    if (subasta == null)
        //    {
        //        return HttpNotFound();
        //    }
        //    return View(subasta);
        //}

        //// POST: Subastas/Edit/5
        //// Para protegerse de ataques de publicación excesiva, habilite las propiedades específicas a las que desea enlazarse. Para obtener
        //// más información vea http://go.microsoft.com/fwlink/?LinkId=317598.
        //[HttpPost]
        //[ValidateAntiForgeryToken]
        //public ActionResult Edit([Bind(Include = "id,id_Comprador,id_Vendedor,id_Producto,estado,valor_Actual,finalizado,fecha_Inicio,fecha_Cierre")] Subasta subasta)
        //{
        //    if (ModelState.IsValid)
        //    {
        //        db.Entry(subasta).State = EntityState.Modified;
        //        db.SaveChanges();
        //        return RedirectToAction("Index");
        //    }
        //    return View(subasta);
        //}


        public ActionResult FinalizarCompraDirecta(int idSubasta)
        {
            user_sitio   = Session["usuario"] as UsuarioSite;
            valor_tenant = user_sitio.Dominio.ToString();
            int idLogueado = usuIBL.ObtenerIdByEmail(valor_tenant, user_sitio.Email);
            var usuario    = usuIBL.GetUsuario(valor_tenant, idLogueado);

            Subasta subasta = subIBL.ObtenerSubasta(valor_tenant, idSubasta);

            if (subasta == null)
            {
                return(HttpNotFound());
            }

            if (usuario.billetera < subasta.precio_Compra)
            {
                ViewBag.idSubasta = subasta.id;
                return(View("SinSaldo"));
            }
            else
            {
                usuario.billetera = usuario.billetera - (double)subasta.precio_Compra;
                usuIBL.ActualizarUsuario(valor_tenant, usuario);//le descuento plata al comprador

                int idVendedor = subasta.id_Vendedor;
                var vendedor   = usuIBL.GetUsuario(valor_tenant, idVendedor);

                vendedor.billetera = vendedor.billetera + (double)subasta.precio_Compra;
                usuIBL.ActualizarUsuario(valor_tenant, vendedor);//le agrego plata al vededor

                subasta.estado       = EstadoTransaccion.Cerrada;
                subasta.finalizado   = TipoFinalizacion.Compra_directa;
                subasta.id_Comprador = idLogueado;
                subasta.fecha_Cierre = DateTime.Now;
                subIBL.ActualizarSubasta(valor_tenant, subasta);
                //enviar mail
                try
                {
                    subIBL.correoCompraDirecta(valor_tenant, subasta);
                }
                catch (Exception)
                {
                    throw;
                }


                //enviar mail
                ViewBag.Vendedor = vendedor;
                return(View("Transaccion", subasta));
            }
        }
Exemple #2
0
        /// <summary>
        /// Actualizar subasta para cerrarla
        /// </summary>
        public void CerrarSubasta()
        {
            try
            {
                Subasta subasta = (Subasta)tablaSubasta.SelectedItem;
                subasta.EstadoSubasta.IdEstadoSubasta = 2;

                HttpClient client2   = new HttpClient();
                var        content   = new StringContent(JsonConvert.SerializeObject(subasta), Encoding.UTF8, "application/json");
                var        response2 = client2.PutAsync("http://localhost:54192/api/Subasta", content).Result;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        public async Task <ActionResult> Create([Bind(Include = "SubastaId,AnuncioId,Fecha,PujaInicial,Duracion,PujaActual,CompradorId,NumDesuTarjeta")] Subasta subasta, int AnuncioId)
        {
            subasta.AnuncioId = AnuncioId;
            subasta.Anuncio   = db.Anuncios.Find(AnuncioId);
            subasta.Fecha     = DateTime.Now;
            if (ModelState.IsValid)
            {
                db.Subastas.Add(subasta);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            ViewBag.AnuncioId   = new SelectList(db.Anuncios, "AnuncioId", "Etiqueta", subasta.AnuncioId);
            ViewBag.CompradorId = new SelectList(db.Compradores, "CompradorId", "Nombre", subasta.Comprador);
            return(View(subasta));
        }
Exemple #4
0
        /// <summary>
        /// Evento del boton para agregar una nueva subasta
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BtnAgregarSubasta_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                //Obtener pedido del listado
                Pedido pedido = (Pedido)dataPedido.SelectedItem;
                if (pedido != null)
                {
                    //Creacion de subasta
                    Subasta subasta = new Subasta();
                    //Aignar pedido a la subasta
                    subasta.Pedido = pedido;
                    //Definir las fechas
                    subasta.FechaInicio  = (DateTime)dateFechaInicio.SelectedDate;
                    subasta.FechaTermino = (DateTime)dateFechaTermino.SelectedDate;
                    //Asignar el estado abierto a la subasta
                    subasta.EstadoSubasta.IdEstadoSubasta = 1;
                    //Se llama al servicio rest
                    HttpClient client   = new HttpClient();
                    var        content  = new StringContent(JsonConvert.SerializeObject(subasta), Encoding.UTF8, "application/json");
                    var        response = client.PostAsync("http://localhost:54192/api/Subasta", content).Result;

                    if (response.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        //var subasta = JsonConvert.DeserializeObject<Subasta>(response.ToString());

                        main.Mensaje("Subasta", "Subasta Agregada con exito");
                        LimpiarCampos();
                        CargarTabla();
                    }
                    else
                    {
                        main.Mensaje("Aviso", "Subasta no fue agregada. Intentelo más tarde");
                    }
                }
                else
                {
                    main.Mensaje("Aviso", "Debe selccionar un pedido de la lista");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Exemple #5
0
        //************************
        public void AgregarSubasta(String tenant, Subasta subasta)
        {
            System.Diagnostics.Debug.WriteLine("ID SUBASTA " + subasta.titulo);

            //int id_subasta = 0;
            try
            {
                db = new TenantDB(tenant);
                db.Subasta.Add(subasta);
                db.SaveChanges();
            }
            catch (Exception e)
            {
                throw e;
            }

            //return id_subasta;
        }
        public static Subasta CancelarSubastas()
        {
            var x = new Subasta();

            try
            {
                x = DSubasta.CancelarSubastas();
                return(x);
            }
            catch (System.Exception ex)
            {
                x.ErrorMensaje     = "Error al cancelar subastas" + ex.Message;
                x.EstadoPeticionOK = false;
                var user = new UserAutentication();
                GasLogB.CrearLogError(ex);
                return(x);
            }
        }
        // GET: Subastas/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            Comprador comprador = QuerysGeneric.GetComprador(User.Identity.Name, db.Compradores);
            IEnumerable <TarjetaDeCredito> tarjetas = QuerysGeneric.GetTarjetas(comprador.Tarjetas);

            ViewBag.TarjetaDeCreditoId = new SelectList(tarjetas, "NumDeTarjeta", "NumDeTarjeta", new Producto_Vendido());
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Subasta subasta = await db.Subastas.FindAsync(id);

            if (subasta == null)
            {
                return(HttpNotFound());
            }
            return(View(subasta));
        }
Exemple #8
0
        public void correoCompraDirecta(String tenant, Subasta sub)
        {
            List <Correo> lista = new List <Correo>();

            try
            {
                log.Info("Entro correoCompraDirecta ");

                lista = _dal.correoCompraDirecta(tenant, sub);
                IEnvioCorreo _envio = new EnvioCorreo();
                _envio.enviarCorreos(lista);
            }
            catch (Exception e)
            {
                log.Error("Error", e);
                throw e;
            }
        }
Exemple #9
0
        public ActionResult CreateCalificacion(int idSubasta, bool venta)
        {
            var user = Session["usuario"] as UsuarioSite;

            valor_tenant = user.Dominio;
            SubastaSite sub_site = new SubastaSite();

            try
            {
                user_sitio   = System.Web.HttpContext.Current.Session["usuario"] as UsuarioSite;
                valor_tenant = user_sitio.Dominio.ToString();
                int idLogueado = _blusuario.ObtenerIdByEmail(valor_tenant, user_sitio.Email);
                var usuario    = _blusuario.GetUsuario(valor_tenant, idLogueado);

                Subasta subasta = subIBL.ObtenerSubasta(valor_tenant, idSubasta);
                ViewBag.ListaImg = subIBL.ObtenerImagenes(valor_tenant, idSubasta);
                if (subasta == null)
                {
                    return(HttpNotFound());
                }
                sub_site.id              = subasta.id;
                sub_site.descripcion     = subasta.descripcion;
                sub_site.fecha_Cierre    = subasta.fecha_Cierre;
                sub_site.finalizado      = subasta.finalizado;
                sub_site.nick_Comprador  = _blusuario.GetNombreUsuario(valor_tenant, Convert.ToInt32(subasta.id_Comprador));
                sub_site.id_Comprador    = Convert.ToInt32(subasta.id_Comprador);
                sub_site.portada         = subasta.portada;
                sub_site.nombre_producto = subasta.titulo;
                sub_site.precio_Compra   = Convert.ToDouble(subasta.precio_Compra);
                if (venta)
                {
                    sub_site.listaVenta = 1;
                }
                else
                {
                    sub_site.listaVenta = 0;
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(View(sub_site));
        }
Exemple #10
0
        //URL: http://chebayrest1930.azurewebsites.net/api/subasta?idProducto=
        public Subasta[] Get(string idProducto)
        {
            IDALSubasta ip     = new DALSubastaEF();
            int         idProd = Int32.Parse(idProducto);
            Producto    p      = ip.ObtenerProducto(idProd, "MobileCenter");

            Subasta[] ret = new Subasta[1];

            Subasta s = new Subasta
            {
                Descripcion = p.descripcion,
                ProductoID  = p.ProductoID,

                Nombre       = p.nombre,
                PrecioActual = p.precio_base_subasta;
            };

            ret[0] = s;
            return(ret);
        }
        public static Infrastructure.Models.Subasta CrearSubasta(Infrastructure.Models.Subasta auctionObj)
        {
            var subasta = new Subasta();

            try
            {
                var validarSubasta = VerSubastaActual();
                if (validarSubasta.Id != 0 && validarSubasta.Estado == 1)
                {
                    subasta.ErrorMensaje     = "Debe terminar o cancelar la subasta actual para poder crear una nueva";
                    subasta.EstadoPeticionOK = false;
                    return(subasta);
                }
                return(DSubasta.CrearSubasta(auctionObj));
            }
            catch (System.Exception ex)
            {
                GasLogB.CrearLogError(ex);
                return(subasta);
            }
        }
Exemple #12
0
 public bool AnularDB(Subasta_Info info)
 {
     try
     {
         using (EntitiesGeneral db = new EntitiesGeneral())
         {
             Subasta Entity = db.Subasta.Where(q => q.IdSubasta == info.IdSubasta).FirstOrDefault();
             if (Entity == null)
             {
                 return(false);
             }
             Entity.su_Estado = false;
             db.SaveChanges();
         }
         return(true);
     }
     catch (Exception)
     {
         throw;
     }
 }
Exemple #13
0
        public int AgregarSubasta_ID(String tenant, Subasta subasta)
        {
            int id_subasta = -1;

            try
            {
                db = new TenantDB(tenant);
                db.Subasta.Add(subasta);
                db.SaveChanges();
                // read out your newly set IDENTITY value


                id_subasta = subasta.id;
                System.Diagnostics.Debug.WriteLine("ID SUBASTA " + id_subasta.ToString());
            }
            catch (Exception e)
            {
                throw e;
            }

            return(id_subasta);
        }
        public static void Agregar(Subasta subasta)
        {
            using (var db = new DBEntities())
            {
                try
                {
                    SUBASTA s = new SUBASTA();
                    s.FECHAINICIO     = subasta.FechaInicio;
                    s.FECHATERMINO    = subasta.FechaTermino;
                    s.IDPEDIDO        = subasta.Pedido.IdPedido;
                    s.IDESTADOSUBASTA = 1;

                    db.SUBASTA.Add(s);
                    db.SaveChanges();

                    subasta.IdSubasta = (int)s.IDSUBASTA;
                }catch (Exception ex)
                {
                    ex.Message.ToString();
                }
            }
        }
        public static Ronda CancelarRonda(Ronda entidad)
        {
            var subasta = new Subasta();

            try
            {
                DSubasta.CancelarRonda(entidad.Id);
                var rondaActual = DSubasta.VerRondaActual(entidad.IdSubasta);
                if (rondaActual == null)
                {
                    rondaActual    = new Ronda();
                    rondaActual.Id = 0;
                }
                return(rondaActual);
            }
            catch (System.Exception ex)
            {
                entidad.EstadoPeticionOK = false;
                entidad.ErrorMensaje     = ex.Message;
                GasLogB.CrearLogError(ex);
                return(entidad);
            }
        }
Exemple #16
0
        private void btnActualizar_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                RestClient  client  = new RestClient("http://localhost:54192/api");
                RestRequest request = new RestRequest("/Subasta", Method.GET);
                request.AddParameter("id", txtID.Text);
                var response = client.Execute(request);
                if (response.StatusCode == HttpStatusCode.OK)
                {
                    MessageBoxResult messageBox = MessageBox.Show("¿Esta seguro de actualizar?", "Confirmacion", MessageBoxButton.YesNo);
                    if (messageBox == MessageBoxResult.Yes)
                    {
                        if (txtActualizarID.Text != string.Empty)
                        {
                            Subasta sub = new Subasta
                            {
                                IdSubasta    = int.Parse(txtActualizarID.Text),
                                FechaInicio  = (DateTime)dateActualizarInicio.SelectedDate,
                                FechaTermino = (DateTime)dateActualizarTermino.SelectedDate,
                                Pedido       = new Pedido
                                {
                                    IdPedido = int.Parse(txtIdPedidoActualizar.Text)
                                },
                                EstadoSubasta = new EstadoSubasta
                                {
                                    IdEstadoSubasta = int.Parse(txtEstadoActualizar.Text)
                                }
                            };


                            HttpClient client2   = new HttpClient();
                            var        content   = new StringContent(JsonConvert.SerializeObject(sub), Encoding.UTF8, "application/json");
                            var        response2 = client2.PutAsync("http://localhost:54192/api/Subasta", content).Result;


                            Console.WriteLine(response);


                            if (response2.StatusCode == System.Net.HttpStatusCode.OK)
                            {
                                //var subasta = JsonConvert.DeserializeObject<Subasta>(response.ToString());

                                main.Mensaje("Subasta", "Subasta Actualizada con exito");
                                HabilitarBtn();
                                LimpiarCampos();
                                flyActualizarSubasta.IsOpen = false;
                                CargarTabla();
                            }
                            else
                            {
                                main.Mensaje("Error", "Subasta no encontrada");
                            }
                        }
                        else
                        {
                            main.Mensaje("Error", "Ingrese los datos necesarios");
                        }
                    }
                    else if (messageBox == MessageBoxResult.No)
                    {
                        main.Mensaje("Subasta", "Subasta no Actualizada");
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
Exemple #17
0
        // MODELO PARA EL SITIO DE SUBASTA
        private SubastaSite crearSubastaSite(Subasta subasta)
        {
            sub_site = new SubastaSite();
            try
            {
                user_sitio   = System.Web.HttpContext.Current.Session["usuario"] as UsuarioSite;
                valor_tenant = user_sitio.Dominio.ToString();



                sub_site.id = subasta.id;


                if (subasta.id_Comprador != null)
                {
                    sub_site.nick_Comprador = usuIBL.GetNombreUsuario(valor_tenant, (int)subasta.id_Comprador);
                }
                sub_site.titulo        = subasta.titulo;
                sub_site.nick_Vendedor = usuIBL.GetNombreUsuario(valor_tenant, (int)subasta.id_Vendedor);
                sub_site.portada       = subasta.portada;

                if (subasta.id_Producto != 0)
                {
                    var prod = proIBL.ObtenerProductoTenant(user_sitio.idTienda, subasta.id_Categoria, subasta.id_Producto);
                    sub_site.nombre_producto = prod.Titulo;
                }

                sub_site.valor_Actual = subasta.valor_Actual;
                sub_site.estado       = subasta.estado;
                if (subasta.finalizado.Equals(TipoFinalizacion.Compra_directa))
                {
                    sub_site.tipo_venta = "Compra directa";
                }
                else
                {
                    sub_site.tipo_venta = "Subasta";
                }

                sub_site.finalizado       = subasta.finalizado;
                sub_site.fecha_Inicio     = subasta.fecha_Inicio;
                sub_site.fecha_Cierre     = subasta.fecha_Cierre;
                sub_site.garantia         = subasta.garantia;
                sub_site.Comentario       = subasta.Comentario;
                sub_site.Atributo_Subasta = subasta.Atributo_Subasta;
                sub_site.valor_Actual     = (double)subasta.valor_Actual;
                sub_site.precio_Base      = (double)subasta.precio_Base;
                sub_site.precio_Compra    = (double)subasta.precio_Compra;
                sub_site.Calificacion     = subasta.Calificacion;
                sub_site.descripcion      = subasta.descripcion;
                sub_site.Favorito         = subasta.Favorito;
                sub_site.id_Vendedor      = subasta.id_Vendedor;
                sub_site.atributos        = AtributoSiteList(subasta.id_Categoria.ToString());
                foreach (var atributo in sub_site.atributos)
                {
                    foreach (var atrib_subasta in sub_site.Atributo_Subasta)
                    {
                        if (atrib_subasta.id_Atributo == atributo.IdAtributo)
                        {
                            atributo.valor = atrib_subasta.valor;
                        }
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }

            return(sub_site);
        }
Exemple #18
0
        public ActionResult Create([Bind(Include = "id_Categoria,id_Producto,atributos,titulo,descripcion,tags,precio_Base,precio_Compra,garantia,coordenadas,direccion,fecha_Inicio,fecha_Cierre")] SubastaSite subasta_site, FormCollection form, HttpPostedFileBase portada)
        {
            Subasta subasta = new Subasta();


            if (subasta_site.fecha_Cierre != null)
            {
                System.Diagnostics.Debug.WriteLine("fecha " + subasta_site.fecha_Cierre);
            }

            else
            {
                System.Diagnostics.Debug.WriteLine("Nulo");
            }
            user_sitio = System.Web.HttpContext.Current.Session["usuario"] as UsuarioSite;

            subasta.id_Vendedor  = usuIBL.ObtenerIdByEmail(user_sitio.Dominio, user_sitio.Email);
            subasta.estado       = EstadoTransaccion.Activa;
            subasta.titulo       = subasta_site.titulo;
            subasta.valor_Actual = (double)subasta_site.precio_Base;
            subasta.fecha_Inicio = (DateTime)System.DateTime.Now;
            if (subasta_site.fecha_Cierre != null)
            {
                subasta.fecha_Cierre = (DateTime)subasta_site.fecha_Cierre;
            }

            subasta.tags          = subasta_site.tags;
            subasta.descripcion   = subasta_site.descripcion;
            subasta.garantia      = subasta_site.garantia;
            subasta.direccion     = subasta_site.direccion;
            subasta.coordenadas   = subasta_site.coordenadas;
            subasta.id_Categoria  = (int)subasta_site.id_Categoria;
            subasta.id_Producto   = (int)subasta_site.id_Producto;
            subasta.precio_Base   = (double)subasta_site.precio_Base;
            subasta.precio_Compra = (double)subasta_site.precio_Compra;
            subasta.valor_Actual  = (double)subasta_site.valor_Actual;
            string tipo = form["Tipo"];
            //string cat = form["Categorias"];
            //string prod = form["Productos"];
            //string atr = form["Atributos"];

            //string atr_sub = form["Atributos"];



            // int producto = int.Parse(prod);
            // subasta.id_Producto = producto;

            CloudBlobContainer blobContainer = _bls.GetContainerTienda(user_sitio.Dominio);


            if (portada != null && portada.ContentLength > 0)
            {
                //Elminar foto anterior
                //TiendaVirtualDTO old = _bl.ObtenerTienda(tiendaVirtualDTO.TiendaVitualId);
                //CloudBlockBlob blobOld = blobContainer.GetBlockBlobReference("Nombreblob");
                //blobOld.Delete();
                var            nombreFoto = user_sitio.Dominio + Guid.NewGuid().ToString() + "_subasta";
                CloudBlockBlob blob       = blobContainer.GetBlockBlobReference(nombreFoto);
                blob.UploadFromStream(portada.InputStream);
                subasta.portada = blob.Uri.ToString();
            }


            string jsonData  = Request.Form[0];
            string jsonData2 = Request.Form[1];


            if (tipo == "Subasta")
            {
                TipoFinalizacion tipoSub = TipoFinalizacion.Subasta;
                subasta.finalizado    = tipoSub;
                subasta.valor_Actual  = (double)subasta.precio_Base;
                subasta.precio_Compra = (double)subasta.precio_Base;
                valor_tenant          = user_sitio.Dominio.ToString();
                id_sub = subIBL.AgregarSubasta_ID(valor_tenant, subasta);
            }
            else
            {
                TipoFinalizacion tipoSub = TipoFinalizacion.Compra_directa;
                subasta.finalizado   = tipoSub;
                subasta.precio_Base  = (double)subasta.precio_Compra;
                subasta.valor_Actual = (double)subasta.precio_Compra;
                valor_tenant         = user_sitio.Dominio.ToString();
                id_sub = subIBL.AgregarSubasta_ID(valor_tenant, subasta);
            }



            foreach (var item in subasta_site.atributos)
            {
                //  System.Diagnostics.Debug.WriteLine("Atributo idsub:" + id_sub.ToString() + " id atrib " + item.IdAtributo.ToString());
                if (item.valor != null)
                {
                    Atributo_Subasta atributo = new Atributo_Subasta();
                    atributo.id_Subasta  = id_sub;
                    atributo.id_Atributo = item.IdAtributo;
                    atributo.valor       = item.valor;
                    //atributo.Subasta = subasta;
                    atrSubIBL.AgregarAtributo_Subasta(valor_tenant, atributo);
                }
            }
            SubastaSite sub_site = crearSubastaSite(subasta);


            return(View("ImagenesSubasta", subasta));
            //return View("DetalleProducto", sub_site);
        }
Exemple #19
0
 public void ActualizarSubasta(String tenant, Subasta subasta)
 {
     _dal.ActualizarSubasta(tenant, subasta);
 }
Exemple #20
0
 public void AgregarSubasta(String tenant, Subasta subasta)
 {
     _dal.AgregarSubasta(tenant, subasta);
 }
Exemple #21
0
 //********************
 public void AltaSubasta(string tenant, Subasta subasta)
 {
     _dal.AltaSubasta(tenant, subasta);
 }
Exemple #22
0
 public int AgregarSubasta_ID(String tenant, Subasta subasta)
 {
     return(_dal.AgregarSubasta_ID(tenant, subasta));
 }
        public static Ronda CrearRonda(Ronda entidad)
        {
            var subasta = new Subasta();

            try
            {
                var vendedor = new Vendedor();
                vendedor.IdSubasta = entidad.IdSubasta;
                var subastaActual = VerSubastaActual();
                entidad.FechaFin    = entidad.FechaFin.AddSeconds(-entidad.FechaFin.Second);
                entidad.FechaInicio = entidad.FechaInicio.AddSeconds(-entidad.FechaInicio.Second);
                vendedor            = VerVendedor(vendedor);
                if (vendedor.Id == 0)
                {
                    entidad.EstadoPeticionOK = false;
                    entidad.ErrorMensaje     = "No se encuentra registrada la oferta por parte del vendedor aun.";
                    return(entidad);
                }
                entidad.IdVendedor = vendedor.Id;
                entidad.Estado     = 1;
                var rondaActual = DSubasta.VerRondaActual(entidad.IdSubasta);
                if (rondaActual == null)
                {
                    entidad.CantidadOfertada = vendedor.Cantidad;
                    entidad.Valor            = subastaActual.TipoSubasta == 1
                        ? vendedor.PrecioPiso
                        : vendedor.PrecioTecho;
                }
                else
                {
                    entidad.Valor = subastaActual.TipoSubasta == 1
                        ? rondaActual.Valor + vendedor.Variacion > vendedor.PrecioTecho ? vendedor.PrecioTecho : rondaActual.Valor + vendedor.Variacion
                        : rondaActual.Valor - vendedor.Variacion < vendedor.PrecioPiso ? vendedor.PrecioPiso : rondaActual.Valor - vendedor.Variacion;
                    if (rondaActual.Estado == 2)
                    {
                        // entidad.CantidadOfertada = rondaActual.CantidadOfertada - rondaActual.CantidadDemandada;
                        entidad.NumeroRonda = rondaActual.NumeroRonda + 1;
                    }
                    else
                    {
                        entidad = DSubasta.ActualizarRonda(entidad);
                        if (entidad.Valor == vendedor.PrecioPiso || entidad.Valor == vendedor.PrecioTecho)
                        {
                            entidad.UltimaRonda = true;
                        }
                        return(entidad);
                    }
                }
                entidad = DSubasta.CrearRonda(entidad);
                if (entidad.NumeroRonda > 0 && (entidad.Valor == vendedor.PrecioPiso || entidad.Valor == vendedor.PrecioTecho))
                {
                    entidad.UltimaRonda = true;
                }

                return(entidad);
            }
            catch (System.Exception ex)
            {
                entidad.EstadoPeticionOK = false;
                entidad.ErrorMensaje     = ex.Message;
                GasLogB.CrearLogError(ex);
                return(entidad);
            }
        }
 public static Subasta ClausurarSubasta(Subasta entidad)
 {
     CancelarSubastas();
     return(VerSubastaActual());
 }
        public Subasta VerSubastaActual()
        {
            Subasta Auction = BSubasta.VerSubastaActual();

            return(Auction);
        }
Exemple #26
0
        public void ActualizarSubasta(String tenant, Subasta subastaNueva)
        {
            try
            {
                System.Diagnostics.Debug.WriteLine("Ingreso actualizo subasta");
                System.Diagnostics.Debug.WriteLine("Actualizo a estado " + subastaNueva.estado.ToString());

                db = new TenantDB(tenant);
                Subasta subasta = db.Subasta.Find(subastaNueva.id);

                System.Diagnostics.Debug.WriteLine("Paso busco subasta");
                if (subasta != null)
                {
                    System.Diagnostics.Debug.WriteLine("Entro mod subasta");

                    /*subasta.Atributo_Subasta = subastaNueva.Atributo_Subasta;
                     * subasta.Calificacion = subastaNueva.Calificacion;
                     * subasta.Comentario = subastaNueva.Comentario;
                     * subasta.coordenadas = subastaNueva.coordenadas;
                     * subasta.descripcion = subastaNueva.descripcion;
                     * subasta.estado = subastaNueva.estado;
                     * subasta.Favorito = subastaNueva.Favorito;
                     * subasta.fecha_Cierre = subastaNueva.fecha_Cierre;
                     * subasta.fecha_Inicio = subastaNueva.fecha_Inicio;
                     * subasta.finalizado = subastaNueva.finalizado;
                     * subasta.garantia = subastaNueva.garantia;
                     * //subasta.id = subastaNueva.id;
                     * subasta.id_Categoria = subastaNueva.id_Categoria;
                     * subasta.id_Comprador = subastaNueva.id_Comprador;
                     * subasta.id_Producto = subastaNueva.id_Producto;
                     * subasta.id_Vendedor = subastaNueva.id_Vendedor;
                     * subasta.Imagen = subastaNueva.Imagen;
                     * //subasta.Oferta = subastaNueva.Oferta;
                     * subasta.precio_Base = subastaNueva.precio_Base;
                     * subasta.precio_Compra = subastaNueva.precio_Compra;
                     * subasta.tags = subastaNueva.tags;
                     * subasta.titulo = subastaNueva.titulo;
                     * subasta.valor_Actual = subastaNueva.valor_Actual;
                     * //subasta.Vendedor = subastaNueva.Vendedor;*/

                    //save modified entity using new Context

                    db.Entry(subasta).CurrentValues.SetValues(subastaNueva);


                    db.SaveChanges();
                    System.Diagnostics.Debug.WriteLine("Sub " + subasta.estado.ToString());

                    // other changed properties

                    System.Diagnostics.Debug.WriteLine("Salgo actualizar subasta");
                }

                else
                {
                    System.Diagnostics.Debug.WriteLine("No hay subasta para actualizar");
                }
            }
            catch (Exception e)
            {
                throw e;
            }
        }