public IEnumerable <ApiProducts.Library.Models.ProductoRes> GetProductsIds(object value)
        {
            var ConnectionStringLocal = _configuration.GetValue <string>("CadenaConexion");
            var jsonString            = Newtonsoft.Json.JsonConvert.SerializeObject(value);
            List <ApiProducts.Library.Models.ProductoRes> list = new List <ApiProducts.Library.Models.ProductoRes>();

            ApiProducts.Library.Models.Producto objProducto = new ApiProducts.Library.Models.Producto();
            //string json = @"[ {""idPedido"": 1, ""idProducto"": 1, ""cantidad"": 1 }]";
            //Deserialize the data
            var obj = JsonConvert.DeserializeObject <List <ApiProducts.Library.Models.ProductoMinRes> >(value.ToString());

            //Loop thrrouch values and save the details into database
            foreach (ApiProducts.Library.Models.ProductoMinRes p in obj)
            {
                using (IProduct producto = Factorizador.CrearConexionServicio(ApiProducts.Library.Models.ConnectionType.MSSQL, ConnectionStringLocal))
                {
                    objProducto = producto.GetProduct(p.Id);

                    list.Add(new ApiProducts.Library.Models.ProductoRes()
                    {
                        Id          = objProducto.Id,
                        Titulo      = objProducto.Titulo,
                        Plataforma  = objProducto.Plataforma,
                        Imagen      = objProducto.Imagen,
                        Imagen2     = objProducto.Imagen2,
                        Imagen3     = objProducto.Imagen3,
                        PrecioVenta = objProducto.PrecioVenta,
                        Edicion     = objProducto.FechaLanzamiento,
                        IdCarrito   = p.IdCarrito
                    });
                }
            }
            return(list);
        }
        public IActionResult InsertOrderDetail(ApiProducts.Library.Models.PedidoCabDet value)
        {
            int id       = 0;
            int idPedido = 0;
            var ConnectionStringLocal = _configuration.GetValue <string>("CadenaConexion");
            var jsonString            = Newtonsoft.Json.JsonConvert.SerializeObject(value);

            int insertCodigo = 0;

            ApiProducts.Library.Models.Producto  objProducto = new ApiProducts.Library.Models.Producto();
            ApiProducts.Library.Models.PedidoCab objPedido   = new ApiProducts.Library.Models.PedidoCab();
            //string json = @"[ {""idPedido"": 1, ""idProducto"": 1, ""cantidad"": 1 }]";
            //Deserialize the data
            //var obj = JsonConvert.DeserializeObject<List<ApiProducts.Library.Models.PedidoCabDet>>(value.ToString());
            //Loop thrrouch values and save the details into database


            using (IOrder Order = Factorizador.CrearConexionServicioOrder(ApiProducts.Library.Models.ConnectionType.MSSQL, ConnectionStringLocal))
            {
                idPedido = Order.InsertOrder(value.ClienteId, value.Total, "TC", "");
            }

            foreach (int p in value.ListaProductos)
            {
                using (ICode Code = Factorizador.CrearConexionServicioCode(ApiProducts.Library.Models.ConnectionType.MSSQL, ConnectionStringLocal))
                {
                    insertCodigo = Code.InsertCode(idPedido, p, Functions.RandomCodigo());
                }

                using (IProduct producto = Factorizador.CrearConexionServicio(ApiProducts.Library.Models.ConnectionType.MSSQL, ConnectionStringLocal))
                {
                    objProducto = producto.GetProduct(p);
                }

                using (IOrder Order = Factorizador.CrearConexionServicioOrder(ApiProducts.Library.Models.ConnectionType.MSSQL, ConnectionStringLocal))
                {
                    id = Order.InsertDetail(idPedido, p, insertCodigo, 1, objProducto.PrecioVenta);
                }

                using (IOrder order = Factorizador.CrearConexionServicioOrder(ApiProducts.Library.Models.ConnectionType.MSSQL, ConnectionStringLocal))
                {
                    objPedido = order.GetOrder(idPedido);
                }
            }

            if (id > 0)
            {
                return(Ok(new
                {
                    Id = objPedido,
                    Estatus = "success",
                    Code = 200,
                    Msg = "Detalle del pedido insertado correctamente!!"
                }));
            }

            return(NotFound());
        }
        //[Authorize]
        public IActionResult GetProduct(int id)//[FromBody] ApiProducts.Library.Models.CatProductos value
        {
            var ConnectionStringLocal = _configuration.GetValue <string>("CadenaConexion");

            //var ConnectionStringAzure = _configuration.GetValue<string>("ConnectionStringAzure");
            using (IProduct producto = Factorizador.CrearConexionServicio(ApiProducts.Library.Models.ConnectionType.MSSQL, ConnectionStringLocal))
            {
                ApiProducts.Library.Models.Producto objusr = producto.GetProduct(id);

                if (objusr.Id > 0)
                {
                    return(Ok(new
                    {
                        Producto = objusr
                    }));
                }

                return(NotFound());
            }
        }