-RegistraScript se unifica en una sola clase static/shared y se simplica el código -Alert se vuelve estático -Random() no se manda a crear cada vez que se registra un script (esto tenía un costo alto) -Se corrigieron unos errores en los nombres de funciones -Las clases que ya heredan de Clspaginas, se les quita el this a RegistraScript y a Alert puesto que era innecesario (y además al haberlos vuelto métodos estáticos, NO pueden llamarse de un this)
259 lines
8.0 KiB
C#
259 lines
8.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using System.Data;
|
|
using Microsoft.Reporting.WebForms;
|
|
|
|
using Extensiones;
|
|
|
|
public partial class CRM_CatProbabilidadAcercamiento : ClsPaginas
|
|
{
|
|
#region "PROPIEDADES"
|
|
private int EsEditar
|
|
{
|
|
get
|
|
{
|
|
return ViewState["EsEditar"].ToString().ToEntero();
|
|
}
|
|
|
|
set
|
|
{
|
|
ViewState["EsEditar"] = value;
|
|
}
|
|
}
|
|
private DataTable TmpDT
|
|
{
|
|
get
|
|
{
|
|
return (DataTable)ViewState["TmpDT"];
|
|
}
|
|
|
|
set
|
|
{
|
|
ViewState["TmpDT"] = value;
|
|
}
|
|
}
|
|
|
|
private int CveProbabilidadAcercamiento
|
|
{
|
|
get
|
|
{
|
|
return ViewState["CveProbabilidadAcercamiento"].ToString().ToEntero();
|
|
}
|
|
|
|
set
|
|
{
|
|
ViewState["CveProbabilidadAcercamiento"] = value;
|
|
}
|
|
}
|
|
private DataTable DTProcesos
|
|
{
|
|
get
|
|
{
|
|
return (DataTable)ViewState["DTProcesos"];
|
|
}
|
|
|
|
set
|
|
{
|
|
ViewState["DTProcesos"] = value;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
CargarModalDatos();
|
|
CargaDatos();
|
|
}
|
|
}
|
|
|
|
#region "CARGA DATOS"
|
|
protected void CargaDatos()
|
|
{
|
|
ClsCRM ObjCRM = new ClsCRM();
|
|
|
|
if (ObjCRM.GetProbabilidadAcercamiento(UsuarioActual.CveEmpresa, -1))
|
|
{
|
|
TmpDT = ObjCRM.DtResultados;
|
|
GVDatos.DataSource = TmpDT;
|
|
}
|
|
ObjCRM.Dispose();
|
|
GVDatos.DataBind();
|
|
UPDatos.Update();
|
|
}
|
|
|
|
private void CargarModalDatos()
|
|
{
|
|
ClsCRM ObjCRM = new ClsCRM();
|
|
if (ObjCRM.GetTipoProceso(UsuarioActual.CveEmpresa))
|
|
{
|
|
DdlTipoProceso.DataSource = ObjCRM.DtResultados;
|
|
DTProcesos = ObjCRM.DtResultados;
|
|
}
|
|
ObjCRM.Dispose();
|
|
DdlTipoProceso.DataBind();
|
|
DdlTipoProceso.Items.Insert(0, new ListItem("Seleccione", "-1"));
|
|
}
|
|
|
|
protected void limpiarCamposModal()
|
|
{
|
|
if (EsEditar == 1)
|
|
{
|
|
//LtlModalTitulo.Text = "Actualizar Probabilidad de Acercamiento";
|
|
BtnGuardar.Text = "Actualizar";
|
|
DivEstatus.Visible = true;
|
|
}
|
|
else
|
|
{
|
|
//LtlModalTitulo.Text = "Agregar Probabilidad de Acercamiento";
|
|
BtnGuardar.Text = "Guardar";
|
|
DivEstatus.Visible = false;
|
|
}
|
|
DdlTipoProceso.SelectedValue = "-1";
|
|
TxtProbabilidadAcercamiento.Text = "";
|
|
//TxtDescripcion.Text = "";
|
|
ChkEstatus.Checked = true;
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region "ACCIONES"
|
|
protected void LnkAgregar_Click(object sender, EventArgs e)
|
|
{
|
|
EsEditar = 0;
|
|
limpiarCamposModal();
|
|
UPModal.Update();
|
|
|
|
RegistraScript("$('#DivModal').modal();");
|
|
}
|
|
|
|
protected void LnkEditar_Click(object sender, EventArgs e)
|
|
{
|
|
EsEditar = 1;
|
|
limpiarCamposModal();
|
|
|
|
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
|
|
|
|
CveProbabilidadAcercamiento = GvRow.DataKey("CveProbabilidadAcercamiento").ToEntero();
|
|
TxtProbabilidadAcercamiento.Text = GvRow.DataKey("ProbabilidadAcercamiento").ToString();
|
|
//TxtDescripcion.Text = GvRow.DataKey("Descripcion").ToString();
|
|
ChkEstatus.Checked = GvRow.DataKey("CveEstatus").ToString() == "True" ? true : false;
|
|
DdlTipoProceso.SelectedValue = GvRow.DataKey("CveTipoProceso").ToString();
|
|
UPModal.Update();
|
|
|
|
RegistraScript("$('#DivModal').modal();");
|
|
}
|
|
|
|
protected void BtnGuardar_Click(object sender, EventArgs e)
|
|
{
|
|
ClsCRM ObjCRM = new ClsCRM();
|
|
|
|
String ProbabilidadAcercamiento = TxtProbabilidadAcercamiento.Text;
|
|
//String Descripcion = TxtDescripcion.Text;
|
|
Boolean Estatus = ChkEstatus.Checked;
|
|
|
|
int CveUsuarioIng = UsuarioActual.CveUsuario;
|
|
|
|
if (EsEditar == 0)
|
|
{
|
|
if (ObjCRM.AddProbabilidadAcercamiento(ProbabilidadAcercamiento, UsuarioActual.CveEmpresa, CveUsuarioIng,DdlTipoProceso.SelectedValue.ToEntero()))
|
|
{
|
|
Alert("La Probabilidad de Acercamiento fue creada correctamente.", ModExtensiones.TipoMensaje.MsgInformacion);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (ObjCRM.UpdateProbabilidadAcercamiento(ProbabilidadAcercamiento, Estatus, CveProbabilidadAcercamiento,DdlTipoProceso.SelectedValue.ToEntero()))
|
|
{
|
|
Alert("La Probabilidad de Acercamiento fue actualizada correctamente.", ModExtensiones.TipoMensaje.MsgInformacion);
|
|
}
|
|
}
|
|
|
|
ObjCRM.Dispose();
|
|
limpiarCamposModal();
|
|
RegistraScript("$('#DivModal').modal('hide');");
|
|
CargaDatos();
|
|
}
|
|
|
|
protected void GVDatos_RowDeleting(object sender, GridViewDeleteEventArgs e)
|
|
{
|
|
CveProbabilidadAcercamiento = GVDatos.Rows[e.RowIndex].DataKey("CveProbabilidadAcercamiento").ToEntero();
|
|
|
|
ClsCRM ObjCRM = new ClsCRM();
|
|
|
|
if (ObjCRM.RemoveProbabilidadAcercamiento(CveProbabilidadAcercamiento))
|
|
{
|
|
Alert("La Probabilidad de Acercamiento ha sido eliminada.", ModExtensiones.TipoMensaje.MsgInformacion);
|
|
}
|
|
|
|
ObjCRM.Dispose();
|
|
CargaDatos();
|
|
}
|
|
|
|
protected void GVDatos_RowDataBound(object sender, GridViewRowEventArgs e)
|
|
{
|
|
if (e.Row.RowType == DataControlRowType.DataRow)
|
|
{
|
|
if (Convert.ToBoolean(e.Row.DataKey("CveEstatus")))
|
|
{
|
|
e.Row.FCLabel("lblEstatus").CssClass = "label label-sm label-success";
|
|
}
|
|
else
|
|
{
|
|
e.Row.FCLabel("lblEstatus").CssClass = "label label-sm label-danger";
|
|
}
|
|
foreach (DataRow proceso in DTProcesos.Rows)
|
|
{
|
|
int index = DTProcesos.Rows.IndexOf(proceso);
|
|
|
|
if (proceso["CveTipoProceso"].ToEntero() == e.Row.DataKey("CveTipoProceso").ToEntero())
|
|
{
|
|
if ((index % 7) == 0) e.Row.Cells[1].CssClass = "bg-green-haze bg-font-green-haze";
|
|
if ((index % 7) == 1) e.Row.Cells[1].CssClass = "bg-red-pink bg-font-red-pink";
|
|
if ((index % 7) == 2) e.Row.Cells[1].CssClass = "bg-blue bg-font-blue";
|
|
if ((index % 7) == 3) e.Row.Cells[1].CssClass = "bg-purple-soft bg-font-purple-soft";
|
|
if ((index % 7) == 4) e.Row.Cells[1].CssClass = "bg-yellow bg-font-yellow";
|
|
if ((index % 7) == 5) e.Row.Cells[1].CssClass = "bg-yellow-casablanca bg-font-yellow-casablanca";
|
|
if ((index % 7) == 6) e.Row.Cells[1].CssClass = "bg-grey-steel bg-font-grey-steel";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
protected void LnkImprimir_Click(object sender, EventArgs e)
|
|
{
|
|
Imprimir("PDF");
|
|
}
|
|
|
|
protected void LnkImprimirExcel_Click(object sender, EventArgs e)
|
|
{
|
|
Imprimir("EXCEL");
|
|
}
|
|
|
|
private void Imprimir(string formato)
|
|
{
|
|
System.IO.FileInfo Image = new System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png");
|
|
string logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa);
|
|
|
|
List<ReportParameter> param = new List<ReportParameter>();
|
|
|
|
param.Add(new ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa));
|
|
if (Image.Exists)
|
|
{
|
|
param.Add(new ReportParameter("LogoPath", logouri));
|
|
}
|
|
else
|
|
{
|
|
param.Add(new ReportParameter("LogoPath", ""));
|
|
}
|
|
param.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre));
|
|
param.Add(new ReportParameter("FechaImpresion", DateTime.Now.ToString()));
|
|
|
|
ImprimirPDF("Empresas/Grales/Formatos/RepCatProbabilidadAcercamiento.rdlc", TmpDT, param, "Report Cat Probabilidad Acercamiento", formato);
|
|
}
|
|
} |