コード例 #1
0
        public async Task <bool> EnviarSmsToCliente(PromocionCupon promocionCupon, Usuario usuarioValidado, Promocion promocionSelected)
        {
            if ((_envioSMS_ON == false) || (string.IsNullOrEmpty(usuarioValidado.Movil)))
            {
                return(false);
            }

            using (var client = new HttpClient())
            {
                string mensajeEnvio = BuildMensajeEnvio(promocionCupon, usuarioValidado, promocionSelected);
                if (string.IsNullOrEmpty(mensajeEnvio))
                {
                    return(false);
                }

                string uriStr = string.Format("secure/insert.php?uname={0}&pass={1}&num={2}&msg={3}",
                                              _SMS_UserName, _SMS_Pwd, usuarioValidado.Movil, Uri.EscapeUriString(mensajeEnvio));

                client.BaseAddress = new Uri("http://041x.com/");
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                try
                {
                    HttpResponseMessage response = await client.GetAsync(uriStr);

                    if (response.IsSuccessStatusCode)
                    {
                        return(true);
                    }
                    else
                    {
                        Logger.Log(string.Format("Error enviando SMS: {0}", response.StatusCode.ToString()),
                                   Category.Info, Priority.Low);
                        return(false);
                    }
                }
                catch (HttpRequestException e)
                {
                    Logger.Log(string.Format("Error enviando SMS: {0}", e.InnerException.Message),
                               Category.Info, Priority.Low);
                    return(false);
                }
            }
        }
コード例 #2
0
        private string BuildMensajeEnvio(PromocionCupon promocionCupon, Usuario usuarioValidado, Promocion promocionSelected)
        {
            string file = "plantilla_sms.txt";
            string msg;

            if (!System.IO.File.Exists(file))
            {
                msg = "Cupón: {codigoCupon} Promo: {descripcionPromocion} Ver condiciones en http://www.cuponexpress.com.ve Gracias por usar CUPONEXPRESS";
                var stream = System.IO.File.CreateText(file);
                stream.Write(msg);
                stream.Close();
            }
            else
            {
                msg = System.IO.File.ReadAllText(file);
            }

            msg = msg.Replace("{codigoCupon}", promocionCupon.CodigoCanjeo).
                  Replace("{descripcionPromocion}", promocionSelected.Descripcion).
                  Replace("{fechaVigencia}", promocionCupon.FechaVigencia.Value.ToShortDateString()).
                  Replace("{direccionLocal}", promocionSelected.EnteComercial.Direccion);

            return(msg);
        }
コード例 #3
0
        public void AddOrUpdatePromocion(Kiosko_Promocion_Detalle dto)
        {
            if (dto == null) return;

            var enteComercial = (from q in db.EnteComercials.Include("ListOfPromocions.ListOfPromocionCupons")
                                 where (q.Codigo == dto.ClienteCodigo)
                                 select q).FirstOrDefault();
            if (enteComercial == null) return;

            var promocion = (from q in enteComercial.ListOfPromocions where (q.Codigo == dto.Codigo) select q).FirstOrDefault();
            if (promocion == null)
            {
                var newPromocion = new Promocion()
                {
                    Codigo = dto.Codigo,
                    Descripcion = dto.Descripcion,
                    Detalles = dto.Detalles,
                    DetallesBig = dto.DetallesBig,
                    Condiciones = dto.Condiciones,
                    IsActivo = true
                };

                DateTime outDate;
                if (DateTime.TryParse(dto.Inicio, out outDate)) newPromocion.FechaInicio = outDate;
                if (DateTime.TryParse(dto.Fin, out outDate)) newPromocion.FechaFin = outDate;
                newPromocion.Vigencia = Int32.Parse(dto.Vigencia);

                newPromocion.ImagenSmallUrl = dto.ImagenSmallUrl.card.ToFileName();
                newPromocion.ImagenUrl = dto.ImagenUrl.banner.ToFileName();
                if (dto.Limite != null)
                {
                    newPromocion.CuponesPorUsuario = int.Parse(dto.Limite);
                }

                newPromocion.ListOfPromocionCupons = new List<PromocionCupon>();
                foreach (var item in dto.Kiosko_Promociones)
                {
                    var newCupon = new PromocionCupon()
                    {
                        CodigoCanjeo = item.Codigo,
                        RemoteId = item.ID,
                    };
                    newPromocion.ListOfPromocionCupons.Add(newCupon);
                }
                enteComercial.ListOfPromocions.Add(newPromocion);
            }
            else
            {
                promocion.Descripcion = dto.Descripcion;
                promocion.Detalles = dto.Detalles;
                promocion.DetallesBig = dto.DetallesBig;
                promocion.Condiciones = dto.Condiciones;

                DateTime outDate;
                if (DateTime.TryParse(dto.Inicio, out outDate)) promocion.FechaInicio = outDate;
                if (DateTime.TryParse(dto.Fin, out outDate)) promocion.FechaFin = outDate;
                promocion.Vigencia = Int32.Parse(dto.Vigencia);

                promocion.ImagenSmallUrl = dto.ImagenSmallUrl.card.ToFileName();
                promocion.ImagenUrl = dto.ImagenUrl.banner.ToFileName();
                if (dto.Limite != null)
                {
                    promocion.CuponesPorUsuario = int.Parse(dto.Limite);
                }

                if (promocion.ListOfPromocionCupons != null)
                {
                    foreach (var item in dto.Kiosko_Promociones)
                    {
                        var cupon = (from q in promocion.ListOfPromocionCupons where (q.RemoteId == item.ID) select q).FirstOrDefault();
                        if (cupon == null)
                        {
                            var newCupon = new PromocionCupon()
                            {
                                CodigoCanjeo = item.Codigo,
                                RemoteId = item.ID,
                            };
                            promocion.ListOfPromocionCupons.Add(newCupon);
                        }
                    }
                }
            }
            db.SaveChanges();
        }