Пример #1
0
        public IHttpActionResult SearchDrugstore(SearchModel data)
        {
            List <ProductSearchModel> lista = new List <ProductSearchModel>();


            using (FarmaciaAEntities db = new FarmaciaAEntities())
            {
                var Farmacia = db.FARMACIA.FirstOrDefault();

                db.SUCURSAL_PRODUCTO.Where(x => x.ID_SUCURSAL == data.idSucursal && x.PRODUCTO.PRODUCTO1.ToLower().Contains(data.producto.ToLower())).ToList().ForEach(x =>
                {
                    lista.Add(new ProductSearchModel
                    {
                        idSucursalProducto = x.ID_SUCURSAL_PRODUCTO,
                        idSucursal         = x.ID_SUCURSAL,
                        producto           = x.PRODUCTO.PRODUCTO1,
                        precio             = Convert.ToDecimal(x.PRECIO),
                        sucursal           = x.SUCURSAL.SUCURSAL1,
                        latitud            = x.SUCURSAL.LATITUD,
                        longitud           = x.SUCURSAL.LONGITUD,
                        direccion          = x.SUCURSAL.DIRECCION,
                        idFarmacia         = Convert.ToInt32(Farmacia.ID_FARMACIA)
                    });
                });
                return(Ok(lista.OrderBy(x => x.precio)));
            }
        }
Пример #2
0
        public IHttpActionResult NearbyDrugstore(SearchModel data)
        {
            using (FarmaciaAEntities db = new FarmaciaAEntities())
            {
                List <ProductSearchModel> lista = new List <ProductSearchModel>();
                var Farmacia = db.FARMACIA.FirstOrDefault();

                lista.AddRange(db.nearby(data.producto, data.longitud, data.latitud).ToList().Select(x => new ProductSearchModel {
                    sucursal           = x.SUCURSAL,
                    idSucursal         = x.ID_SUCURSAL,
                    latitud            = x.LATITUD,
                    longitud           = x.LONGITUD,
                    direccion          = x.DIRECCION,
                    idSucursalProducto = x.ID_SUCURSAL_PRODUCTO,
                    producto           = x.PRODUCTO,
                    precio             = Convert.ToInt32(x.PRECIO),
                    idFarmacia         = Convert.ToInt32(Farmacia.ID_FARMACIA)
                }));

                /*
                 * db.SUCURSAL.ToList().ForEach(x =>
                 * {
                 *  double lat = Convert.ToDouble(x.LATITUD, CultureInfo.CreateSpecificCulture("en-US"));
                 *  double lon = Convert.ToDouble(x.LONGITUD, CultureInfo.CreateSpecificCulture("en-US"));
                 *
                 *  List<double> callfun = db.Database.SqlQuery<double>("select dbo.DistanceFromLatLonInKm({0}, {1}, {2}, {3})", new object[] { lonC, latC, lon, lat }).ToList();
                 *  if (callfun.FirstOrDefault() < 2)
                 *  {
                 *      x.SUCURSAL_PRODUCTO.Where(y => y.PRODUCTO.PRODUCTO1.ToLower().Contains(data.producto.ToLower())).ToList().ForEach(y =>
                 *      {
                 *          lista.Add(new ProductSearchModel()
                 *          {
                 *              sucursal = x.SUCURSAL1,
                 *              idSucursal = x.ID_SUCURSAL,
                 *              latitud = x.LATITUD,
                 *              longitud = x.LONGITUD,
                 *              direccion = x.DIRECCION,
                 *              idSucursalProducto = y.ID_SUCURSAL_PRODUCTO,
                 *              producto = y.PRODUCTO.PRODUCTO1,
                 *              precio = Convert.ToDecimal(y.PRECIO),
                 *              idFarmacia = Convert.ToInt32(Farmacia.ID_FARMACIA)
                 *          });
                 *      });
                 *  }
                 * });*/

                return(Ok(lista));
            }
        }
Пример #3
0
        public IHttpActionResult ProductDetail(ProductSearchModel data)
        {
            DetailModel detalle = null;

            using (FarmaciaAEntities db = new FarmaciaAEntities())
            {
                db.SUCURSAL_PRODUCTO.Where(x => x.ID_SUCURSAL_PRODUCTO == data.idSucursalProducto).ToList().ForEach(x =>
                {
                    detalle = new DetailModel()
                    {
                        producto          = x.PRODUCTO.PRODUCTO1,
                        presentacion      = x.PRODUCTO.PRESENTACION.PRESENTACION1,
                        fechaVencimiento  = x.FECHA_VENCIMIENTO.ToShortDateString(),
                        laboratorio       = x.PRODUCTO.LABORATORIO.LABORATORIO1.Trim(),
                        principiosActivos = x.PRODUCTO.DESCRIPCION.Trim().Replace("\t", " "),
                        categoria         = x.PRODUCTO.CATEGORIA.CATEGORIA1,
                        precio            = Convert.ToDouble(x.PRECIO),
                        existencia        = x.EXISTENCIA
                    };
                });

                return(Ok(detalle));
            }
        }