private void CrearNuevaCampaña() { MiCampaña = new Campaña(LogHospitalAutodialer); if (MiCampaña.ConexionCampaña.State == ConnectionState.Open) { if (MiCampaña.Resetear()) { if (MiCampaña.Crear()) { if (MiCampaña.CrearHorario(MiCampaña.CodigoCampaña)) { if (MiCampaña.CargarListin(MiCampaña.CodigoCampaña)) { if (MiCampaña.Iniciar(MiCampaña.CodigoCampaña)) { LogHospitalAutodialer.Write("Campaña iniciada", "", HLogLevel.Record); } } } } } } else { LogHospitalAutodialer.Write("No se pudo conectar con la base de datos y no se creó la campaña", "", HLogLevel.Error); } }
/// <summary> /// Timer que consulta con cada tick la campaña y las imagenes correspondientes a mostrar. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void timerCampaña_Tick(object sender, EventArgs e) { //Se obtiene campaña activa para la fecha y horario actual Campaña c = iControladorCampaña.campañaActiva(); if (c != null) { //Asignamos el tiempo en el que se mostrara la campaña if (Convert.ToInt32((c.iHoraFin - DateTime.Now.TimeOfDay).TotalMilliseconds) > 0) { timerCampaña.Interval = Convert.ToInt32((c.iHoraFin - DateTime.Now.TimeOfDay).TotalMilliseconds); c.iImagenes = iControladorImagen.ObtenerImagenesPorId(c.iIdCampaña); c.iImagenes = c.iImagenes.OrderBy(o => o.iPosicion).ToList <Imagen>(); timerImagen.Enabled = true; this.listaImagenes = c.iImagenes; } else { timerCampaña.Interval = 2000; this.listaImagenes = null; timerImagen.Enabled = false; pb_imagenes.Image = null; } } else //Si la campaña activa es nula y no hay imagenes para mostrar { timerCampaña.Interval = 2000; this.listaImagenes = null; timerImagen.Enabled = false; pb_imagenes.Image = null; } }
private void botonCargarResultados_Click(object sender, EventArgs e) { if (MiCampaña == null) { MessageBox.Show("No has creado la campaña"); } else { if (Campaña.Terminada(MiCampaña.CodigoCampaña)) { if (MiCampaña.EscribirResultadosDeLaCampaña(MiCampaña.CodigoCampaña)) { //MessageBox.Show("Resultados de la campaña cargados"); } else { MessageBox.Show("Error al cargar los resultados de la campaña"); } } else { MessageBox.Show("La campaña no ha finalizado"); } } /*if (Campaña.LeerResultadosDeLaCampaña("C-20164695443")) * { * MessageBox.Show("Resultados de la campaña cargados"); * } * else * { * MessageBox.Show("Error al cargar los resultados de la campaña"); * }*/ }
/// <summary> /// Devuelve la imagen de la campaña correspondiente /// </summary> /// <param name="pCampaña"></param> /// <returns></returns> private Image ImagenCampañaCorrespondiente(Campaña pCampaña) { Imagen imagenActual = pCampaña.ImagenProxima(); this.timer_ImagenesCampaña.Interval = imagenActual.Tiempo * 1000; return(imagenActual.Picture); }
public async Task <ActionResult <Campaña> > PostCampaña(Campaña campaña) { _context.Campaña.Add(campaña); await _context.SaveChangesAsync(); return(CreatedAtAction("GetCampaña", new { id = campaña.IdCamapana }, campaña)); }
public async Task <IActionResult> PutCampaña(int?id, Campaña campaña) { if (id != campaña.IdCamapana) { return(BadRequest()); } _context.Entry(campaña).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CampañaExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
private void botonNuevaCampaña_Click(object sender, EventArgs e) { try { MiCampaña = new Campaña(LogHospitalAutodialer); LogHospitalAutodialer.Write("CAMPAÑA: ", "Se va a resetear la campaña", HLogLevel.Record); MiCampaña.Resetear(); LogHospitalAutodialer.Write("CAMPAÑA: ", "Se va a crear una campaña", HLogLevel.Record); if (MiCampaña.Crear()) { LogHospitalAutodialer.Write("CAMPAÑA: ", "Campaña creada", HLogLevel.Record); //MessageBox.Show("Campaña creada correctamente: " + MiCampaña.CodigoCampaña); if (MiCampaña.CrearHorario(MiCampaña.CodigoCampaña)) { LogHospitalAutodialer.Write("CAMPAÑA: ", "Horario creado", HLogLevel.Record); //MessageBox.Show("Horario creado correctamente de la campaña: " + MiCampaña.CodigoCampaña); botonCargarCampaña.PerformClick(); } else { MessageBox.Show("Error al añadir el horario a la campaña"); } } else { MessageBox.Show("Error al crear la campaña, revisar log"); } } catch (Exception E) { MessageBox.Show("Error al crear la campaña: " + E.Message); } }
//Metodo Courutine, Este metodo inicia la conexion con la campaña. Si esta todo correcto activa la UI de la campaña. IEnumerator joinCampaña() { loadingLogIn.SetActive(true); carga.peticion = "joinCampaña"; carga.json = perfilData.Campañas[0].getAsJSON(); Debug.Log(carga.json); sender.send(carga.getAsJSON()); yield return(new WaitForSeconds(Seconds)); carga = Carga.getFromJSON(str); if (carga.assigned.Equals("false") || carga.json.Equals("denied")) { loadingLogIn.SetActive(false); } else { campaña = Campaña.getFromJson(carga.json); campañaData = CampañaData.getFromJson(campaña.CampañaJSON); loadingLogIn.SetActive(false); menu.SetActive(false); UICampaña.SetActive(true); } }
public ActionResult Delete(int id) { var usuario = db.Usuarios.Where(u => u.NombreUsuario == User.Identity.Name).FirstOrDefault().UsuarioId; movimiento = "Eliminando Códigos"; MovementsHelper.MovimientosBitacora(usuario, modulo, movimiento); db.Database.ExecuteSqlCommand( "spEliminarCampaña @CampañaId", new SqlParameter("@CampañaId", id)); db.Database.ExecuteSqlCommand( "spEliminarCodigos @CampañaId", new SqlParameter("@CampañaId", id)); Campaña campaña = db.Campañas.Where(x => x.CampañaId == id).FirstOrDefault(); db.Campañas.Remove(campaña); var response = DBHelper.SaveChanges(db); if (response.Succeeded) { movimiento = "Eliminar Campaña " + campaña.CampañaId + " " + campaña.Nombre + " / " + campaña.Descripcion; MovementsHelper.MovimientosBitacora(usuario, modulo, movimiento); return(Json(new { success = true, message = "CAMPAÑA ELIMINADA" }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { success = true, message = response.Message }, JsonRequestBehavior.AllowGet)); } }
public void CargarCampañaModificar(Campaña mCampañaMod, TextBox txtNomCampañaMod, NumericUpDown nUDuracionMod, DateTimePicker dTPickFechaDesdeMod, DateTimePicker dTPickFechaHastaMod, NumericUpDown nUpDesdeHoraMod, NumericUpDown nUpHastaHoraMod, GroupBox gBoxCampañaMod) { txtNomCampañaMod.Text = mCampañaMod.Nombre; nUDuracionMod.Value = mCampañaMod.DuracionImagen; dTPickFechaDesdeMod.Value = mCampañaMod.FechaInicio; dTPickFechaHastaMod.Value = mCampañaMod.FechaFin; nUpDesdeHoraMod.Value = Convert.ToDecimal(mCampañaMod.HoraInicio.Hours); nUpHastaHoraMod.Value = Convert.ToDecimal(mCampañaMod.HoraFin.Hours); iControladorImagen.CargoPictureBoxModificar(iControladorImagen.ListaImagensPorCampañaId(mCampañaMod.CampañaId), gBoxCampañaMod, 20, 35); }
/// <summary> /// Modifica una campaña en el repositorio /// </summary> /// <param name="pCampaña">Campaña a modificar</param> /// public void ModificarCampaña(Campaña pCampaña, string pNombre, DateTime pFechaInicio, DateTime pFechaFin, TimeSpan pHoraInicio, TimeSpan pHoraFin, int pDuracionImagen, IList <Imagen> pListaImagen) { pCampaña.Nombre = pNombre; pCampaña.FechaInicio = pFechaInicio; pCampaña.FechaFin = pFechaFin; pCampaña.HoraInicio = pHoraInicio; pCampaña.HoraFin = pHoraFin; pCampaña.DuracionImagen = pDuracionImagen; pCampaña.ListaImagenes = pListaImagen; this.iUdT.RepositorioCampaña.Modificar(pCampaña); iUdT.Guardar(); }
//Metodo para procesar la informacion que se recive del servidor conrinuamente, como las notificaciones, el chat, o el movimiento de los token segun la peticion recivida del servidor public void ProcessData() { if (!String.Equals(str, "accede")) { Carga Aux = new Carga(); Aux = Carga.getFromJSON(str); if (String.Equals(Aux.peticion, "chatMessage")) { Text nuevoTexto = GameObject.Instantiate(Message); nuevoTexto.transform.parent = chatBoxContent.transform; mensaje = Mensaje.getFromJson(Aux.json); nuevoTexto.text = mensaje.Emisor + ": " + mensaje.Messaje; str = "accede"; } if (String.Equals(Aux.peticion, "sendNotificacion")) { mensaje = Mensaje.getFromJson(Aux.json); if (String.Equals(mensaje.Receptor, perfil.Nombre)) { perfilData.Campañas.Add(Campaña.getFromJson(mensaje.Messaje)); botonCampañaTexto.text = perfilData.Campañas[0].Nombre; } str = "accede"; } if (String.Equals(Aux.peticion, "tokenMove")) { Token fichaAux = Token.getFromJson(Aux.json); invocarToken(fichaAux); str = "accede"; } if (String.Equals(Aux.peticion, "leaveCampaña")) { if (String.Equals(Aux.json, "kick")) { carga.assigned = "false"; GameObject[] fichas = GameObject.FindGameObjectsWithTag("Token"); foreach (GameObject ficha in fichas) { Destroy(ficha); } menu.SetActive(true); UICampaña.SetActive(false); str = "accede"; } else { Perfil aux = Perfil.getFromJson(Aux.json); Destroy(GameObject.Find(aux.Nombre)); str = "accede"; } } } }
/// <summary> /// Crea una Imagen /// </summary> /// <param name="pCodigo">Código de la Imagen</param> /// <param name="pTiempoActualizacion">Tiempo de Actualización de la Imagen</param> /// <param name="pCampaña">Campaña para la propiedad de navegación</param> /// <returns>Tipo de dato Imagen que representa la creada</returns> private Imagen CrearImagen(int pCodigo, int pTiempoActualizacion, Campaña pCampaña) { Imagen imagen = new Imagen { Codigo = pCodigo, Tiempo = pTiempoActualizacion, Campaña = pCampaña, Campaña_Codigo = pCampaña.Codigo }; return(imagen); }
public IActionResult AgregarCampanas(Campaña b) { if (ModelState.IsValid) { _context.Add(b); _context.SaveChanges(); return(RedirectToAction("AgregarCampañaConfirmacion")); } return(View(b)); }
/// <summary> /// Metodo para agregar una campaña a la base de datos desde la interfaz de usuario /// </summary> /// <param name="pCampaña">Campaña a agregar</param> public void AgregarCampaña(Campaña pCampaña) { if (iServicio.CampañaDisponible(pCampaña, this.ObtenerCampañas())) { iUnitOfWork.CampañaRepository.Insert(pCampaña); iUnitOfWork.Save(); } else { throw new CampañaNoDisponibleException("La campaña no esta disponible en el rango horario especificado durante el rango de fechas dado"); } }
/// <summary> /// Configura Primer Banner y Campaña /// </summary> private void ConfigurarBannerCampaña() { ///BANNER this.iBannerActual = FachadaDominio.ObtenerBannerSiguiente(); //Ver como hacer para actualizarlo ahí this.label_TextoBanner.Text = iBannerActual.Texto; this.iBannerProximo = FachadaDominio.ObtenerBannerSiguiente(); this.backgroundWorker_RSS.RunWorkerAsync(this.iBannerProximo); ///CAMPAÑA this.iCampañaActual = FachadaDominio.ObtenerCampañaSiguiente(); this.pictureBox_Campaña.Image = this.ImagenCampañaCorrespondiente(this.iCampañaActual); this.iCampañaProxima = FachadaDominio.ObtenerCampañaSiguiente(); }
private void CBoxModCampActivas_SelectedIndexChanged(object sender, EventArgs e) { try { gBoxImagenMod.Controls.Clear(); mCampañaMod = iControladorCampaña.BuscarCampañaPorNombre(cBoxModCampActivas.Text); iControladorCampaña.CargarCampañaModificar(mCampañaMod, txtNomCampañaMod, nUDuracionMod, dTPickFechaDesdeMod, dTPickFechaHastaMod, nUpDesdeHoraMod, nUpHastaHoraMod, gBoxImagenMod); } catch (Exception) { MessageBox.Show("Ocurrió un error al cargar", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void EliminarMateriales(int id, Campaña campaña) { db.Database.ExecuteSqlCommand( "spEliminarMaterialTiendas @ArticuloKFCId", new SqlParameter("@ArticuloKFCId", id)); if (campaña != null) { db.Database.ExecuteSqlCommand( "spEliminarMaterialCampaniasTiendas @ArticuloKFCId, @CampaniaId", new SqlParameter("@ArticuloKFCId", id), new SqlParameter("@CampaniaId", campaña.CampañaId)); } }
/// <summary> /// Evento que surge cuando el timer del cambio hace un tick /// </summary> /// <param name="sender">Objeto que envía el evento</param> /// <param name="e">Argumentos del evento</param> private void timer_Cambio_Tick(object sender, EventArgs e) { if (!iBannerActual.Equals(iBannerProximo)) { iBannerActual = iBannerProximo; this.ActualizarBanner(); } if (!iCampañaActual.Equals(iCampañaProxima)) { iCampañaActual = iCampañaProxima; this.ActualizarCampaña(); } }
private void btn_modificar_Click(object sender, EventArgs e) { //Obtiene la campaña a modificar a partir del ID de la grilla Campaña campania = iFachadaCampaña.ObtenerCampaña(Convert.ToInt32(DGV_Campañas.CurrentRow.Cells[0].Value)); // Abre el formulario de alta de campañas tomando los datos de la campaña a modificar AgregarCampaña campaniaInterfaz = new AgregarCampaña(campania); campaniaInterfaz.ShowDialog(); this.Close(); btn_eliminar.Enabled = false; btn_modificar.Enabled = false; }
/// <summary> /// Se agrega una nueva campaña al repositorio /// </summary> /// <param name="pFechaFin"></param> /// <param name="pFechaInicio"></param> /// <param name="pHoraFin"></param> /// <param name="pHoraInicio"></param> /// <param name="pDuracion"></param> /// <param name="pNombre"></param> public void AgregarCampaña(string pNombre, DateTime pFechaInicio, DateTime pFechaFin, TimeSpan pHoraInicio, TimeSpan pHoraFin, int pDuracion, IList <Imagen> pListaImagen) { Campaña iCampaña = new Campaña() { Nombre = pNombre, FechaInicio = pFechaInicio, FechaFin = pFechaFin, HoraInicio = pHoraInicio, HoraFin = pHoraFin, DuracionImagen = pDuracion, ListaImagenes = pListaImagen, }; iUdT.RepositorioCampaña.Agregar(iCampaña); iUdT.Guardar(); }
/// <summary> /// Evento que surge cuando el Proceso en segundo plano termina de eliminar el banner /// </summary> /// <param name="sender">Objeto que envía el evento</param> /// <param name="e">Argumentos del evento</param> private void backgroundWorker_Eliminar_RunWorkerCompleted(object sender, System.ComponentModel.RunWorkerCompletedEventArgs e) { if (e.Error != null) { Campaña auxCampaña = (Campaña)e.Result; MessageBox.Show("Ha ocurrido un problema mientras se intentaba eliminar la Campaña\n" + "\t- Nombre: " + auxCampaña.Nombre + "\n" + "\t- Intervalo Tiempo: " + auxCampaña.IntervaloTiempo + "\n" + "Intente Eliminarlo nuevamente"); } else { ((List <Campaña>) this.dataGridView.DataSource).Remove((Campaña)e.Result); this.ReDibujarDGV(); } }
/// <summary> /// Devuelve la campaña que esta siendo publicitada, si no hay devuelve una vacia /// </summary> /// <returns></returns> public Campaña campañaActiva() { Campaña camp = new Campaña(); //Campaña vacia List <Campaña> lista = iUnitOfWork.CampañaRepository.Queryable.ToList(); //Todas las campañas foreach (Campaña c in lista) { if (c.iFechaInicio <= DateTime.Now.Date && c.iFechaFin >= DateTime.Now.Date) //Si coinciden las fechas { if (c.iHoraInicio <= DateTime.Now.TimeOfDay && c.iHoraFin >= DateTime.Now.TimeOfDay) //Si coinciden sus horarios { return(camp = c); //Entra aqui se encontro una campaña } } } return(camp); //Entra aqui si no se encontro ninguna campaña }
public ActionResult AddOrEdit(Campaña campaña) { var usuario = db.Usuarios.Where(u => u.NombreUsuario == User.Identity.Name).FirstOrDefault().UsuarioId; if (campaña.CampañaId == 0) { movimiento = "Agregando Campaña"; MovementsHelper.MovimientosBitacora(usuario, modulo, movimiento); campaña.Generada = "NO"; db.Campañas.Add(campaña); var response = DBHelper.SaveChanges(db); if (response.Succeeded) { MovementsHelper.AgregarArticulosNuevaCampaña(campaña.CampañaId); movimiento = "Agregar Campaña " + campaña.CampañaId + " " + campaña.Nombre + " / " + campaña.Descripcion; MovementsHelper.MovimientosBitacora(usuario, modulo, movimiento); return(Json(new { success = true, message = "CAMPAÑA AGREGADA" }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { success = true, message = response.Message }, JsonRequestBehavior.AllowGet)); } } else { movimiento = "Actualizando Campaña"; MovementsHelper.MovimientosBitacora(usuario, modulo, movimiento); db.Entry(campaña).State = EntityState.Modified; var response = DBHelper.SaveChanges(db); if (response.Succeeded) { movimiento = "Actualizar Campaña " + campaña.CampañaId + " " + campaña.Nombre + " / " + campaña.Descripcion; MovementsHelper.MovimientosBitacora(usuario, modulo, movimiento); return(Json(new { success = true, message = "CAMPAÑA ACTUALIZADA" }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { success = true, message = response.Message }, JsonRequestBehavior.AllowGet)); } } }
public void Campaña2Actualizar() { int i = 61; Campaña campaña = new Campaña { Codigo = i, Nombre = "PruebaActualizar", IntervaloTiempo = 80 }; List <Imagen> listaImagenes = new List <Imagen>(); listaImagenes.Add(this.CrearImagen(i, 100, campaña)); listaImagenes.Add(this.CrearImagen(0, 150, campaña)); List <RangoFecha> listaRangosFecha = new List <RangoFecha>(); listaRangosFecha.Add(this.CrearRangoFecha(i, DateTime.Today, campaña)); campaña.Imagenes = listaImagenes; campaña.RangosFecha = listaRangosFecha; Persistencia.FachadaPersistencia fachada = new Persistencia.FachadaPersistencia(); fachada.ActualizarCampaña(campaña); }
public void Campaña3Eliminar() { int i = 61; Campaña campaña = new Campaña { Codigo = i }; List <Imagen> listaImagenes = new List <Imagen>(); listaImagenes.Add(this.CrearImagen(i, 1200000, campaña)); listaImagenes.Add(this.CrearImagen(i + 1, 1200000, campaña)); List <RangoFecha> listaRangosFecha = new List <RangoFecha>(); listaRangosFecha.Add(this.CrearRangoFecha(122, DateTime.Today.AddDays(10), campaña)); campaña.Imagenes = listaImagenes; campaña.RangosFecha = listaRangosFecha; Persistencia.FachadaPersistencia fachada = new Persistencia.FachadaPersistencia(); fachada.EliminarCampaña(campaña); }
public void Campaña1Insertar() { Campaña campaña; Persistencia.FachadaPersistencia fachada = new Persistencia.FachadaPersistencia(); for (int i = 1; i < 61; i++) { campaña = new Campaña { Codigo = i, Nombre = "Prueba " + i.ToString(), IntervaloTiempo = 80 }; List <Imagen> listaImagenes = new List <Imagen>(); listaImagenes.Add(this.CrearImagen(1, 1200000, campaña)); List <RangoFecha> listaRangosFecha = new List <RangoFecha>(); listaRangosFecha.Add(this.CrearRangoFecha(1, DateTime.Today.AddDays(10), campaña)); campaña.Imagenes = listaImagenes; campaña.RangosFecha = listaRangosFecha; fachada.CrearCampaña(campaña); } }
private void CargarResultadosDeLaCampaña() { if (MiCampaña != null) { if (MiCampaña.ConexionCampaña.State == ConnectionState.Open) { if (Campaña.Terminada(MiCampaña.CodigoCampaña)) { if (MiCampaña.EscribirResultadosDeLaCampaña(MiCampaña.CodigoCampaña)) { LogHospitalAutodialer.Write("Datos de la campaña cargados. Finalización de la rutina", "", HLogLevel.Record); } } else { LogHospitalAutodialer.Write("La campaña aún no ha terminado", "", HLogLevel.Record); } } } }
public void PrubaCrearCampaña() { Imagen imagen1 = new Imagen { Codigo = 1, Tiempo = 10, Picture = ImagenServices.ImageToByteArray(Image.FromFile(@"F:/Lucho/Varios/Salida.jpg", true)) }; List <Imagen> listaImagenes = new List <Imagen>(); listaImagenes.Add(imagen1); RangoHorario rangoHor1 = new RangoHorario { Codigo = 1, HoraFin = DateTime.Now.TimeOfDay, HoraInicio = DateTime.Now.AddMinutes(98).TimeOfDay }; RangoFecha rangoFecha1 = new RangoFecha { Codigo = 1, FechaInicio = DateTime.Today, FechaFin = DateTime.Today.AddDays(10), RangosHorario = new List <RangoHorario>() }; rangoFecha1.RangosHorario.Add(rangoHor1); List <RangoFecha> listaRangosFecha = new List <RangoFecha>(); listaRangosFecha.Add(rangoFecha1); Campaña campaña = new Campaña { Codigo = 1, Imagenes = listaImagenes, Nombre = "Prueba", IntervaloTiempo = 80, RangosFecha = listaRangosFecha }; FachadaCRUDCampaña fachada = new FachadaCRUDCampaña(); fachada.Create(campaña); }
private void buttonBuscar_Click(object sender, EventArgs e) { string sCodigoCampaña = textBoxBuscarCampaña.Text; if (sCodigoCampaña == "") { MessageBox.Show("Debe indicar un código de campaña"); return; } else { if (Campaña.Terminada(sCodigoCampaña)) { MessageBox.Show("La campaña ha terminado"); } else { MessageBox.Show("La campaña aún no ha terminado"); } } }