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); } } }
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); }
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(); }