Files
SIG/CRM/CatProbabilidadAcercamiento.aspx.cs
MLopez 021e50c4b7 Limpieza masiva ClsPaginas
-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)
2023-01-31 21:56:32 -07:00

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