//MUESTRA REPORTE DIRECTIVO public ReporteDirectivo MostrarReporteDirectivo(Campana Campana) { ReporteDirectivo reporteDirectivo = new ReporteDirectivo(); ReporteENT reporteENTReq = new ReporteENT(); reporteENTReq.ClaveCampana = Campana.Title; ReporteENT reporteENTRes = new ReporteENT(); CampanaNEG campanaNEG = new CampanaNEG(); reporteENTRes = campanaNEG.GenerarReporteDirectivo(reporteENTReq); if (reporteENTRes.Mensaje == "OK") { reporteDirectivo.Mensaje = reporteENTRes.Mensaje; reporteDirectivo.URLReporteDirectivo = reporteENTRes.UrlArchivo; } else { reporteDirectivo.Mensaje = reporteENTRes.Mensaje; } return(reporteDirectivo); }
//SEGUNDO PASO PARA GUARDAR INFORMACION DE CAMPAÑA Y ESCENARIOS public ProductoCampana GuardarProductoCampana(ArchivoProducto ArchivoProducto) { ProductoCampana productoCampana = new ProductoCampana(); List <ProductoLinea> ListProductoLinea = new List <ProductoLinea>(); ProductoLineaENT productoLineaENTReq = new ProductoLineaENT(); productoLineaENTReq.ClaveCampana = ArchivoProducto.ClaveCampana; productoLineaENTReq.UrlArchivo = ArchivoProducto.UrlArchivo; ProductoLineaENT productoLineaENTRes = new ProductoLineaENT(); CampanaNEG campanaNEG = new CampanaNEG(); productoLineaENTRes = campanaNEG.GuardarProductoCampana(productoLineaENTReq); if (productoLineaENTRes.Mensaje == "OK") { productoCampana.ListLineaFamilia = productoLineaENTRes.ListLineaFamilia; productoCampana.ListMensaje = productoLineaENTRes.ListMensaje; productoCampana.ListSKUValidacion = new List <SKUValidacion>(); productoCampana.Mensaje = productoLineaENTRes.Mensaje; } else { productoCampana.ListMensaje = productoLineaENTRes.ListMensaje; productoCampana.ListSKUValidacion = productoLineaENTRes.ListSkuValidacion; productoCampana.Mensaje = productoLineaENTRes.Mensaje; } return(productoCampana); }
//TERCER PASO PARA GUARDAR INFORMACION DE CAMPAÑA public string GuardarCampana(Campana Campana) { string resultado = string.Empty; CampanaENT campanaENTReq = new CampanaENT(); campanaENTReq.Campana = Campana; CampanaENT campanaENTRes = new CampanaENT(); CampanaNEG campanaNEG = new CampanaNEG(); campanaENTRes = campanaNEG.GuardarCampana(campanaENTReq); if (campanaENTRes.Mensaje == "OK") { resultado = campanaENTRes.Mensaje; } else { resultado = campanaENTRes.Mensaje; } return(resultado); }
//SE GUARDA O ACTUALIZA SOLO CRONOGRAMA public string GuardarCronograma(Campana campana) { string resultado = string.Empty; CampanaENT campanaENTReq = new CampanaENT(); campanaENTReq.Campana = campana; CampanaENT campanaENTRes = new CampanaENT(); CampanaNEG campanaNEG = new CampanaNEG(); campanaENTRes = campanaNEG.GuardarCampanaCronograma(campanaENTReq); resultado = campanaENTRes.Mensaje; return(resultado); }
//MUESTRA INFORMACION DE LA CAMPAÑA Y EL CRONOGRAMA public MostrarCronograma MostrarCampanaCronograma(Campana campana) { MostrarCronograma mostrarCronograma = new MostrarCronograma(); CampanaENT campanaENTReq = new CampanaENT(); campanaENTReq.Campana = campana; CampanaENT campanaENTRes = new CampanaENT(); CampanaNEG campanaNEG = new CampanaNEG(); campanaENTRes = campanaNEG.MostrarCampanaCronograma(campanaENTReq); mostrarCronograma = campanaENTRes.MostrarCronograma; return(mostrarCronograma); }
//MUESTRA APROBADOR DEPENDIENTE DE PREDECESOR public FlujoActividadAprobador MostrarAprobadorPredecesor(FlujoActividad flujoActividad) { FlujoActividadAprobador FlujoActividadAprobador = new FlujoActividadAprobador(); CampanaNEG campanaNEG = new CampanaNEG(); FlujoActividadENT flujoActividadENTReq = new FlujoActividadENT(); flujoActividadENTReq.ListFlujoActividad = new List <FlujoActividad>(); flujoActividadENTReq.ListFlujoActividad.Add(flujoActividad); FlujoActividadENT flujoActividadENTRes = new FlujoActividadENT(); flujoActividadENTRes = campanaNEG.MostrarAprobadorPredecesor(flujoActividadENTReq); FlujoActividadAprobador.ListFlujoActividad = flujoActividadENTRes.ListFlujoActividad; FlujoActividadAprobador.Mensaje = flujoActividadENTRes.Mensaje; return(FlujoActividadAprobador); }
//MUESTRA HISTORICO GASTO PLANTA public List <GastoPlantaHistorico> MostrarHistoricoGastoPlanta(GastoPlantaHistorico gastoPlanta) { List <GastoPlantaHistorico> ListGastoPlantaHistorico = new List <GastoPlantaHistorico>(); CampanaNEG campanaNEG = new CampanaNEG(); GastoPlantaENT gastoPlantaENTReq = new GastoPlantaENT(); gastoPlantaENTReq.ListGastoPlantaHistorico = new List <GastoPlantaHistorico>(); gastoPlantaENTReq.ListGastoPlantaHistorico.Add(gastoPlanta); GastoPlantaENT gastoPlantaENTRes = new GastoPlantaENT(); gastoPlantaENTRes = campanaNEG.MostrarGastoPlantaHistorico(gastoPlantaENTReq); if (gastoPlantaENTRes != null && gastoPlantaENTRes.OK == 1) { ListGastoPlantaHistorico = gastoPlantaENTRes.ListGastoPlantaHistorico; } return(ListGastoPlantaHistorico); }
//MUESTRA BITACORA DETALLE CAMPANA public List <Campana> MostrarBitacoraDetalleCampana(Campana campana) { List <Campana> ListCampana = new List <Campana>(); CampanaNEG campanaNEG = new CampanaNEG(); CampanaBitacoraENT campanaENTReq = new CampanaBitacoraENT(); campanaENTReq.ListCampana = new List <Campana>(); campanaENTReq.ListCampana.Add(campana); CampanaBitacoraENT campanaENTRes = new CampanaBitacoraENT(); campanaENTRes = campanaNEG.MostrarCampanaBitacoraDetalle(campanaENTReq); if (campanaENTRes.ListCampana != null) { ListCampana = campanaENTRes.ListCampana; } return(ListCampana); }
//REALIZA CALCULO DE RENTABILIDAD Y GENERA REPORTES public Rentabilidad MostrarRentabilidad(Rentabilidad Rentabilidad) { RentabilidadENT rentabilidadENTReq = new RentabilidadENT(); rentabilidadENTReq.Rentabilidad = Rentabilidad; RentabilidadENT rentabilidadENTRes = new RentabilidadENT(); CampanaNEG campanaNEG = new CampanaNEG(); rentabilidadENTRes = campanaNEG.MostrarRentabilidad(rentabilidadENTReq); if (rentabilidadENTRes.Mensaje == "OK") { Rentabilidad = rentabilidadENTRes.Rentabilidad; Rentabilidad.Mensaje = rentabilidadENTRes.Mensaje; Rentabilidad.UrlReporteCEOPDF = rentabilidadENTRes.UrlReporteCEOPDF; Rentabilidad.UrlReporteCEOExcel = rentabilidadENTRes.UrlReporteCEOExcel; Rentabilidad.UrlReporteMKTPDF = rentabilidadENTRes.UrlReporteMKTPDF; Rentabilidad.UrlReporteMKTExcel = rentabilidadENTRes.UrlReporteMKTExcel; Rentabilidad.UrlReporteSKUPDF = rentabilidadENTRes.UrlReporteSKUPDF; Rentabilidad.UrlReporteSKUExcel = rentabilidadENTRes.UrlReporteSKUExcel; } else { Rentabilidad = new Rentabilidad(); Rentabilidad.Mensaje = rentabilidadENTRes.Mensaje; Rentabilidad.UrlReporteCEOPDF = string.Empty; Rentabilidad.UrlReporteCEOExcel = string.Empty; Rentabilidad.UrlReporteMKTPDF = string.Empty; Rentabilidad.UrlReporteMKTExcel = string.Empty; Rentabilidad.UrlReporteSKUPDF = string.Empty; Rentabilidad.UrlReporteSKUExcel = string.Empty; } return(Rentabilidad); }
//MUESTRA INFORMACION DE CAMPAÑAS AÑO ANTERIOR public List <Campana> MostrarCampanaDetAnioAnterior(Campana Campana) { List <Campana> ListCampana = new List <Campana>(); CampanaNEG campanaNEG = new CampanaNEG(); CampanaBitacoraENT campanaENTReq = new CampanaBitacoraENT(); campanaENTReq.ListCampana = new List <Campana>(); campanaENTReq.ListCampana.Add(Campana); CampanaBitacoraENT campanaENTRes = new CampanaBitacoraENT(); campanaENTRes = campanaNEG.MostrarCampanaDetAnioAnterior(campanaENTReq); if (campanaENTRes.ListCampana != null) { ListCampana = campanaENTRes.ListCampana; } return(ListCampana); }
public JsonResult GetCampanaAlcance() { GraficoMOD GraficoMOD = new GraficoMOD(); List <GraficoBar> ListGraficoBar = new List <GraficoBar>(); List <GraficoPie> ListGraficoPieAlcance = new List <GraficoPie>(); List <GraficoPie> ListGraficoPieEstatus = new List <GraficoPie>(); List <GraficoPie> ListGraficoPieEjecucionTemp = new List <GraficoPie>(); List <GraficoPie> ListGraficoPieEjecucionTotal = new List <GraficoPie>(); List <GraficoPie> ListGraficoPieEjecucion = new List <GraficoPie>(); List <GraficoPie> ListGraficoPieProgresoTemp = new List <GraficoPie>(); List <GraficoPie> ListGraficoPieProgresoTotal = new List <GraficoPie>(); List <GraficoPie> ListGraficoPieProgreso = new List <GraficoPie>(); List <Campana> ListCampanaTemp = new List <Campana>(); //IFormatProvider culture = new CultureInfo("es-MX", true); CampanaNEG CampanaNEG = new CampanaNEG(); CampanaENT CampanaENTReq = new CampanaENT(); Campana Campana = new Campana(); //OBTENER USUARIO Usuario usuario = new Usuario(); CampanaENT CampanaENTRes = new CampanaENT(); //if (Session["ListCampanaCrono"] == null || Session["ListGraficoBar"] == null || // Session["ListCampana"] == null || Session["ListGraficoPieAlcance"] == null || // Session["ListGraficoPieEstatus"] == null || Session["ListGraficoPieEjecucion"] == null || // Session["ListGraficoPieProgreso"] == null) //{ try { usuario = (Usuario)Session["Usuario"]; CampanaENTReq.ListCampana = new List <Campana>(); CampanaENTReq.ListCampana.Add(Campana); //Datos grafico bar CampanaENTRes = new CampanaENT(); CampanaENTRes = CampanaNEG.GetCampanaCronograma(CampanaENTReq); if (CampanaENTRes.OK == 0) { GraficoMOD.ListGraficoBar = new List <GraficoBar>(); GraficoMOD.ListGraficoPieAlcance = new List <GraficoPie>(); GraficoMOD.ListGraficoPieEjecucion = new List <GraficoPie>(); GraficoMOD.ListGraficoPieEstatus = new List <GraficoPie>(); GraficoMOD.ListGraficoPieProgreso = new List <GraficoPie>(); GraficoMOD.ListCampana = new List <Campana>(); GraficoMOD.ListCampanaCrono = new List <Campana>(); GraficoMOD.MenuUsuario = usuario.MenuUsuario; GraficoMOD.MenuCronograma = usuario.MenuCronograma; GraficoMOD.MenuGrafico = usuario.MenuGrafico; GraficoMOD.MenuConfiguracion = usuario.MenuConfiguracion; GraficoMOD.Mensaje = "ERROR: Ocurrio un problema inesperado, no se pudo obtener la informacion de las campañas para construir las graficas, intenta de nuevo o consulta al administrador de sistemas."; GraficoMOD.OK = 0; return(Json(GraficoMOD, JsonRequestBehavior.AllowGet)); } if (CampanaENTRes.ListCampana.Count > 0) { if (usuario.ID_RolCronograma == 1 || usuario.ID_RolCronograma == 2) { ListCampanaTemp = CampanaENTRes.ListCampana; } else if (usuario.ID_RolCronograma == 3) { ListCampanaTemp = CampanaENTRes.ListCampana.Where(n => n.PPGID_Lider == usuario.PPGID).ToList(); } //else if (usuario.ID_RolCronograma == 3) //{ //ListCampanaTemp = CampanaENTRes.ListCampana.Where(n => n.PPGID_Lider == usuario.PPGID).ToList(); //} } GraficoMOD.ListCampanaCrono = ListCampanaTemp; ListGraficoBar = GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 2).AsEnumerable() //Where(n => n.PPGID_Lider == "") .Select(row => new GraficoBar { Titulo = row.Nombre_Camp, PorcUsuario = row.PorcUsuario, PorcSistema = row.PorcSistema, PorcSistemaReal = row.PorcSistemaReal }).ToList(); GraficoMOD.ListGraficoBar = ListGraficoBar; Session["ListGraficoBar"] = GraficoMOD.ListGraficoBar; Session["ListCampanaCrono"] = GraficoMOD.ListCampanaCrono; //Datos grafico pie //CampanaENTRes = CampanaNEG.GetCampana(CampanaENTReq); //GraficoMOD.ListCampana = CampanaENTRes.ListCampana; //Datos por alcance ListGraficoPieAlcance = (from c in GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 2).AsEnumerable() //where c.PPGID_Lider == "" group c by new { c.Alcance } into gcs select new GraficoPie { Titulo = gcs.Key.Alcance, Valor = gcs.Count() }).ToList(); GraficoMOD.ListGraficoPieAlcance = ListGraficoPieAlcance; Session["ListGraficoPieAlcance"] = GraficoMOD.ListGraficoPieAlcance; //Datos por estatus ListGraficoPieEstatus = (from c in GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 2).AsEnumerable() //where c.PPGID_Lider == "" group c by new { c.EstatusCat } into gcs select new GraficoPie { Titulo = gcs.Key.EstatusCat, Valor = gcs.Count() }).ToList(); GraficoMOD.ListGraficoPieEstatus = ListGraficoPieEstatus; Session["ListGraficoPieEstatus"] = GraficoMOD.ListGraficoPieEstatus; //Datos campaña por ejecutar ListGraficoPieEjecucionTemp = GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 1).AsEnumerable() //.Where(n => DateTime.ParseExact(n.Fecha_Inicio, "dd/MM/yyyy", culture) > DateTime.Now) .Select(row => new GraficoPie { Titulo = "Por ejecutar", Valor = 1 }).ToList(); if (ListGraficoPieEjecucionTemp.Count > 0) { ListGraficoPieEjecucionTotal.AddRange(ListGraficoPieEjecucionTemp); } //Datos campaña en ejecucion ListGraficoPieEjecucionTemp = GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 2).AsEnumerable() //.Where(n => DateTime.ParseExact(n.Fecha_Inicio, "dd/MM/yyyy", culture) >= DateTime.Now // && DateTime.ParseExact(n.Fecha_Fin_Real, "dd/MM/yyyy", culture) <= DateTime.Now) .Select(row => new GraficoPie { Titulo = "Ejecutando", Valor = 2 }).ToList(); if (ListGraficoPieEjecucionTemp.Count > 0) { ListGraficoPieEjecucionTotal.AddRange(ListGraficoPieEjecucionTemp); } //Datos campaña finalizada ListGraficoPieEjecucionTemp = GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 3).AsEnumerable() //.Where(n => DateTime.ParseExact(n.Fecha_Fin_Real, "dd/MM/yyyy", culture) > DateTime.Now) .Select(row => new GraficoPie { Titulo = "Finalizada", Valor = 3 }).ToList(); if (ListGraficoPieEjecucionTemp.Count > 0) { ListGraficoPieEjecucionTotal.AddRange(ListGraficoPieEjecucionTemp); } ListGraficoPieEjecucion = (from c in ListGraficoPieEjecucionTotal //where c.PPGID_Lider == "" group c by new { c.Titulo } into gcs select new GraficoPie { Titulo = gcs.Key.Titulo, Valor = gcs.Count() }).ToList(); GraficoMOD.ListGraficoPieEjecucion = ListGraficoPieEjecucion; Session["ListGraficoPieEjecucion"] = GraficoMOD.ListGraficoPieEjecucion; //Datos campaña en progreso ListGraficoPieProgresoTemp = GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 2 && n.PorcUsuario >= n.PorcSistema).AsEnumerable() .Select(row => new GraficoPie { Titulo = "Campaña en tiempo", Valor = 1 }).ToList(); if (ListGraficoPieProgresoTemp.Count > 0) { ListGraficoPieProgresoTotal.AddRange(ListGraficoPieProgresoTemp); } ListGraficoPieProgresoTemp = GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 2 && n.PorcUsuario < n.PorcSistema && Math.Abs(n.PorcSistema - n.PorcUsuario) <= 25).AsEnumerable() .Select(row => new GraficoPie { Titulo = "Campaña desfasada", Valor = 2 }).ToList(); if (ListGraficoPieProgresoTemp.Count > 0) { ListGraficoPieProgresoTotal.AddRange(ListGraficoPieProgresoTemp); } ListGraficoPieProgresoTemp = GraficoMOD.ListCampanaCrono.Where(n => n.ID_Estatus == 2 && n.PorcUsuario < n.PorcSistema && Math.Abs(n.PorcSistema - n.PorcUsuario) > 25).AsEnumerable() .Select(row => new GraficoPie { Titulo = "Campaña situacion critica", Valor = 3 }).ToList(); if (ListGraficoPieProgresoTemp.Count > 0) { ListGraficoPieProgresoTotal.AddRange(ListGraficoPieProgresoTemp); } ListGraficoPieProgreso = (from c in ListGraficoPieProgresoTotal group c by new { c.Titulo } into gcs select new GraficoPie { Titulo = gcs.Key.Titulo, Valor = gcs.Count() }).ToList(); GraficoMOD.ListGraficoPieProgreso = ListGraficoPieProgreso; Session["ListGraficoPieProgreso"] = GraficoMOD.ListGraficoPieProgreso; Session["ListCampana"] = GraficoMOD.ListCampana; GraficoMOD.OK = CampanaENTRes.OK; Session["OK"] = GraficoMOD.OK; GraficoMOD.Mensaje = CampanaENTRes.Mensaje; Session["Mensaje"] = GraficoMOD.Mensaje; //} //else //{ // //Datos campaña // GraficoMOD.ListCampanaCrono = (List<Campana>)Session["ListCampanaCrono"]; // //Datos grafico bar // GraficoMOD.ListGraficoBar = (List<GraficoBar>)Session["ListGraficoBar"]; // //Datos grafico pie alcance // GraficoMOD.ListGraficoPieAlcance = (List<GraficoPie>)Session["ListGraficoPieAlcance"]; // //Datos grafico pie estatus // GraficoMOD.ListGraficoPieEstatus = (List<GraficoPie>)Session["ListGraficoPieEstatus"]; // //Datos grafico pie ejecucion // GraficoMOD.ListGraficoPieEjecucion = (List<GraficoPie>)Session["ListGraficoPieEjecucion"]; // //Datos grafico pie ejecucion // GraficoMOD.ListGraficoPieProgreso = (List<GraficoPie>)Session["ListGraficoPieProgreso"]; // //Datos grafico pie // GraficoMOD.ListCampana = (List<Campana>)Session["ListCampana"]; // GraficoMOD.OK = (int)Session["OK"]; // GraficoMOD.Mensaje = Session["Mensaje"].ToString(); //} } catch (Exception ex) { GraficoMOD.Mensaje = "ERROR: Ocurrio un error inesperado, no se pudo procesar la informacion para mostrar las graficas de las Campañas, intenta de nuevo o consulta al administarador de sistemas."; GraficoMOD.OK = 0; ArchivoLog.EscribirLog(null, "ERROR: Service: GetCampanaAlcance, Source: " + ex.Source + ", Message: " + ex.Message); } GraficoMOD.MenuUsuario = usuario.MenuUsuario; GraficoMOD.MenuCronograma = usuario.MenuCronograma; GraficoMOD.MenuGrafico = usuario.MenuGrafico; GraficoMOD.MenuConfiguracion = usuario.MenuConfiguracion; return(Json(GraficoMOD, JsonRequestBehavior.AllowGet)); }