Commit inicial Ventas Productivo
This commit is contained in:
202
GPS/RepParadas.aspx.cs
Normal file
202
GPS/RepParadas.aspx.cs
Normal file
@@ -0,0 +1,202 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using Extensiones;
|
||||
using Microsoft.Reporting.WebForms;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
public partial class GPS_RepParardas : ClsPaginas
|
||||
{
|
||||
#region "P R O P I E D A D E S"
|
||||
private DataTable DtParadas
|
||||
{
|
||||
get
|
||||
{
|
||||
return ((DataTable)(ViewState["DtParadas"]));
|
||||
}
|
||||
set
|
||||
{
|
||||
ViewState["DtParadas"] = value;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
CargaFecha();
|
||||
CargaGrupos();
|
||||
}
|
||||
}
|
||||
private void CargaGrupos()
|
||||
{
|
||||
ClsGPS ObjGPS = new ClsGPS();
|
||||
if (ObjGPS.GruposGet(-1,UsuarioActual.CveCliente))
|
||||
{
|
||||
DdlGrupo.DataSource = ObjGPS.DtResultados;
|
||||
}
|
||||
ObjGPS.Dispose();
|
||||
DdlGrupo.DataBind();
|
||||
UPFiltros.Update();
|
||||
}
|
||||
private void CargaFecha()
|
||||
{
|
||||
txtFechaI.Text = DateTime.Now.ToString("dd/MM/yyyy") + " 00:00";
|
||||
txtFechaF.Text = DateTime.Now.ToString("dd/MM/yyyy") + " 23:59";
|
||||
}
|
||||
|
||||
protected void BtnConsultar_Click(object sender, EventArgs e)
|
||||
{
|
||||
int CveGrupo = DdlGrupo.SelectedValue.ToEntero();
|
||||
if (CveGrupo > -2)
|
||||
{
|
||||
DateTime FechaI = txtFechaI.Text.ToDateTime();
|
||||
DateTime FechaF = txtFechaF.Text.ToDateTime();
|
||||
|
||||
ClsGPS ObjGPS = new ClsGPS();
|
||||
if (ObjGPS.GetRepParadas(CveGrupo, FechaI, FechaF, UsuarioActual.CveCliente))
|
||||
{
|
||||
DtParadas = ObjGPS.DtResultados.Copy();
|
||||
}
|
||||
ObjGPS.Dispose();
|
||||
if (DtParadas != null)
|
||||
{
|
||||
CargaDashboard(DtParadas);
|
||||
CargaGrafica(DtParadas);
|
||||
GvDatos.DataSource = DtParadas;
|
||||
GvDatos.DataBind();
|
||||
}
|
||||
UpDash.Update();
|
||||
UpDatos.Update();
|
||||
UpModalGrafica.Update();
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert("Debe seleccionar un grupo", ModExtensiones.TipoMensaje.MsgAdvertencia);
|
||||
}
|
||||
}
|
||||
private void CargaDashboard(DataTable Dt)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (Dt != null)
|
||||
{
|
||||
DataRow Dr = Dt.FiltroPrimero("TipoColumna=1");
|
||||
if (Dr != null)
|
||||
{
|
||||
var Total = Dr["Importe"].ToString().FormatoNumero();
|
||||
var NumEventos = Dr["TotalEventos"].ToString();
|
||||
var MejorConductor = Dt.FiltroPrimeroValor("Conductor", "CveConductor IS NOT NULL AND TotalEventos IS NOT NULL", "TotalEventos ASC");
|
||||
|
||||
LtlGrupo.Text = DdlGrupo.SelectedItem.Text;
|
||||
LtlTotal.Text = Total;
|
||||
LtlNumEventos.Text = NumEventos;
|
||||
LtlMejorC.Text = MejorConductor;
|
||||
|
||||
DivIndicadores.Visible = true;
|
||||
|
||||
LinkPDF.Visible = true;
|
||||
LnkExportar.Visible = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ModExtensiones.OnError(this, "Ocurrió un error al cargar los indicadores", ex);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
private void CargaGrafica(DataTable Dt)
|
||||
{
|
||||
try
|
||||
{
|
||||
var DtTop = Dt.FiltraParametros("CveConductor IS NOT NULL AND TotalEventos IS NOT NULL", "TotalEventos ASC").AsEnumerable().Take<DataRow>(10);
|
||||
decimal Total = DtTop.Sum(dr => dr["Importe"].ToString().ToDecimal());
|
||||
decimal PorcentajeTotal = 100m;
|
||||
|
||||
var JsonArray = new JArray()
|
||||
{
|
||||
from d in DtTop
|
||||
select new JObject()
|
||||
{
|
||||
new JProperty("name",d["NoEconomico"].ToString()),
|
||||
new JProperty("Importe",d["Importe"].ToString().ToDecimal()),
|
||||
new JProperty("y", (d["Importe"].ToString().ToDecimal()/Total) * PorcentajeTotal)
|
||||
}
|
||||
};
|
||||
|
||||
HpGrafica.Visible = true;
|
||||
HdnJsonChart.Value = JsonArray.ToString();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
protected void GvDatos_RowDataBound(object sender, GridViewRowEventArgs e)
|
||||
{
|
||||
if (e.Row.RowType == DataControlRowType.DataRow)
|
||||
{
|
||||
switch (e.Row.DBCampo("TipoColumna"))
|
||||
{
|
||||
case "1":
|
||||
e.Row.CssClass = "Totales";
|
||||
break;
|
||||
case "2":
|
||||
e.Row.CssClass = "SubTotales";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
private void ImprimirPDFParadas(string TipoDoc = "PDF")
|
||||
{
|
||||
if (DtParadas != null)
|
||||
{
|
||||
byte[] retorno;
|
||||
string RutaReporte = "Empresas/Grales/ReportesProgramados/RPTParadas.rdlc";
|
||||
string NombreReporte = "ReporteRutas";
|
||||
try
|
||||
{
|
||||
var TotalGeneral = LtlTotal.Text;
|
||||
var Grupo = LtlGrupo.Text;
|
||||
var NumEventos = LtlNumEventos.Text;
|
||||
var MejorC = LtlMejorC.Text;
|
||||
List<ReportParameter> RptParametro = new List<ReportParameter>();
|
||||
RptParametro.Add(new ReportParameter("FechaInicio", txtFechaI.Text.ToString()));
|
||||
RptParametro.Add(new ReportParameter("FechaFin", txtFechaF.Text.ToString()));
|
||||
RptParametro.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Usuario));
|
||||
RptParametro.Add(new ReportParameter("FechaImpresion", DateTime.Now.ToShortDateString()));
|
||||
RptParametro.Add(new ReportParameter("Grupo", Grupo));
|
||||
RptParametro.Add(new ReportParameter("TotalGeneral", TotalGeneral));
|
||||
RptParametro.Add(new ReportParameter("NumEventos", NumEventos));
|
||||
RptParametro.Add(new ReportParameter("MejorConductor", MejorC));
|
||||
retorno = StreamPDF(RutaReporte, DtParadas, RptParametro, string.Format("{0}{1}", NombreReporte, DateTime.Now.ToShortDateString()), TipoDoc, "DsOC");
|
||||
ImprimirbytesPDF(retorno, string.Format("{0}{1}", NombreReporte, DateTime.Now.ToShortDateString()));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ModExtensiones.GuardaLog(string.Format("Ocurrio un error al generar el reporte RLDC {0}", ex));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected void LinkPDF_Click(object sender, EventArgs e)
|
||||
{
|
||||
ImprimirPDFParadas();
|
||||
}
|
||||
|
||||
protected void LnkExportar_Click(object sender, EventArgs e)
|
||||
{
|
||||
//var table = new System.Web.UI.HtmlControls.HtmlTable();
|
||||
// table.InnerHtml = DivIndicadores.InnerHtml;
|
||||
GvDatos.ExportToExcelx("ReporteRutas");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user