804 lines
No EOL
30 KiB
C#
804 lines
No EOL
30 KiB
C#
/*===========================================================================================================================
|
||
* Instituto Costarricense de Acueductos y Alcantarillados. - 2015
|
||
* Formularios para Proyectos de Inversión
|
||
* Nombre de la Pantalla: wfrIndicadorProyecto.aspx
|
||
*
|
||
* Explicación de los contenidos del archivo
|
||
*===========================================================================================================================
|
||
* HISTORIAL
|
||
*
|
||
* PERSONA DIA – MES - AÑO DESCRIPCIÓN
|
||
* Pamela Quesada Calderón 03 – 02 - 2017 Se inicia con el diseño de la pagina
|
||
* CGC …………………………………………………………
|
||
* …………………………………………………………
|
||
*===========================================================================================================================
|
||
* Derechos Reservados (C) 2016 AyA.
|
||
* ESTE CÓDIGO ES PROVEÍDO “TAL CUAL ES” SIN GARANTÍA ALGUNA
|
||
* DE NINGÚN TIPO, SEA IMPLICITA O EXPLICITA.
|
||
* NO SE PERMITE SU REPRODUCCIÓN PARCIAL O TOTAL, NI SU COMERCIALIZACIÓN
|
||
*===========================================================================================================================
|
||
*/
|
||
|
||
using AyABL;
|
||
using AyABL.ADM;
|
||
using AyABL.AGP;
|
||
using AyABL.AUT.Autenticacion;
|
||
using AyABL.RCS;
|
||
using AyABL.SEG;
|
||
using AyABL.SEP;
|
||
using AyADAL;
|
||
using System;
|
||
using System.Collections;
|
||
using System.Collections.Generic;
|
||
using System.Data;
|
||
using System.Linq;
|
||
using System.Web;
|
||
using System.Web.UI;
|
||
using System.Web.UI.WebControls;
|
||
|
||
public partial class webforms_SEP_wfrVisitanteProyecto : General
|
||
{
|
||
#region Inicializar Formulario (R0)
|
||
|
||
override protected void OnInit(EventArgs e) //M0
|
||
{
|
||
try
|
||
{
|
||
base.OnInit(e);
|
||
|
||
InicializarFormulario();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R0M0", ex);
|
||
}
|
||
}
|
||
|
||
private void InicializarFormulario() //M1
|
||
{
|
||
try
|
||
{
|
||
Response.Cache.SetCacheability(HttpCacheability.NoCache);
|
||
|
||
construirGridView();
|
||
construirGridProyectosUsuario();
|
||
|
||
Javascript.CheckAllGridViewItems(Page);
|
||
|
||
cuwBusquedaList.Buscar += new _controlesusuario_Estandar_cuwBusquedaList.SearchEvent(Buscar);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R0M1", ex);
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region Variables (R1)
|
||
|
||
GridView grvListaUsuariosTemp, grvProyectosUsuarioTemp;
|
||
|
||
UsuarioBL objUsuarioBL;
|
||
VisitanteProyectoBL objVisitanteProyectoBL;
|
||
ProyectoBL objProyectoBL;
|
||
RegionBL objRegionBL;
|
||
|
||
ArrayList arlCondicionesBuscador = new ArrayList();
|
||
DataSet dsProyectosUsuarios;
|
||
|
||
#endregion
|
||
|
||
#region Eventos Formulario (R2)
|
||
|
||
protected void Page_Load(object sender, EventArgs e) //M0
|
||
{
|
||
try
|
||
{
|
||
if ((!IsPostBack) && (Session.Count > 0))
|
||
{
|
||
llenarGridView(true);
|
||
llenarDdlRegion();
|
||
mostrarFilaTabla(1);
|
||
ComandosxMenu();
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R2M0", ex);
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region Eventos Controles Web (R3)
|
||
|
||
/// <summary>
|
||
/// Metodo que se utiliza para extraer información del registro de la base de datos y ser mostrado en el acordeon de Controles
|
||
/// </summary>
|
||
/// <param name="sender"></param>
|
||
/// <param name="e"></param>
|
||
|
||
protected void grvListaUsuarios_RowCommand(object sender, GridViewCommandEventArgs e) //M0
|
||
{
|
||
try
|
||
{
|
||
if (e.CommandName == "verProyectos")
|
||
{
|
||
int i = Convert.ToInt32(e.CommandArgument);
|
||
GridViewRow selectedRow = grvListaUsuarios.Rows[i];
|
||
int intPkUsuario = Convert.ToInt32(selectedRow.Cells[2].Text);
|
||
pkUser.Value = intPkUsuario.ToString();
|
||
ViewState["PkUsuario"] = intPkUsuario;
|
||
ViewState["MODO"] = "Modifica";
|
||
lblNombreUsuario.Text = selectedRow.Cells[4].Text;
|
||
mostrarFilaTabla(2);
|
||
|
||
llenarGridViewProyectosUsuario(intPkUsuario);
|
||
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M0", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Pagina el listado de usuarios del sistema
|
||
/// </summary>
|
||
/// <param name="sender"></param>
|
||
/// <param name="e"></param>
|
||
|
||
protected void grvListaUsuarios_PageIndexChanging(object sender, GridViewPageEventArgs e) //M1
|
||
{
|
||
try
|
||
{
|
||
grvListaUsuarios.PageIndex = e.NewPageIndex;
|
||
llenarGridView(true);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M1", ex);
|
||
}
|
||
}
|
||
|
||
///<summary>
|
||
///Activar el botón de Refrescar
|
||
///</summary>
|
||
///<param name="sender"></param>
|
||
///<param name="e"></param>
|
||
|
||
protected void btnRefrescar_Click(object sender, System.Web.UI.ImageClickEventArgs e) //M2
|
||
{
|
||
try
|
||
{
|
||
llenarGridView(true);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M2", ex);
|
||
}
|
||
}
|
||
|
||
protected void grvProyectosUsuario_RowCommand(object sender, GridViewCommandEventArgs e) //M3
|
||
{
|
||
try
|
||
{
|
||
if (e.CommandName == "eliminar")
|
||
{
|
||
//Extrae la fila seleccionada del GridView
|
||
int intIndice = Convert.ToInt32(e.CommandArgument);
|
||
GridViewRow selectedRow = grvProyectosUsuario.Rows[intIndice];
|
||
|
||
objVisitanteProyectoBL = new VisitanteProyectoBL();
|
||
objVisitanteProyectoBL.objVisitanteProyectoEL.Usuario = Convert.ToInt32(pkUser.Value);
|
||
objVisitanteProyectoBL.objVisitanteProyectoEL.PK = Convert.ToInt32(selectedRow.Cells[1].Text);
|
||
objVisitanteProyectoBL.objVisitanteProyectoEL.Proyecto = Convert.ToInt32(selectedRow.Cells[2].Text);
|
||
|
||
//Actualiza estado a eliminado en la tabla
|
||
objVisitanteProyectoBL.actualizaEstadoVisitanteProyecto();
|
||
|
||
llenarGridViewProyectosUsuario(Convert.ToInt32(pkUser.Value));
|
||
llenarddlProyectos();
|
||
mostrarFilaTabla(2);
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M3", ex);
|
||
}
|
||
}
|
||
|
||
protected void grvProyectosUsuario_PageIndexChanging(object sender, GridViewPageEventArgs e) //M4
|
||
{
|
||
try
|
||
{
|
||
grvProyectosUsuario.PageIndex = e.NewPageIndex;
|
||
llenarGridViewProyectosUsuario(Convert.ToInt32(pkUser.Value));
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M4", ex);
|
||
}
|
||
}
|
||
|
||
protected void btnRefrescarProyectos_Click(object sender, System.Web.UI.ImageClickEventArgs e) //M5
|
||
{
|
||
try
|
||
{
|
||
llenarGridViewProyectosUsuario(Convert.ToInt32(pkUser.Value));
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M5", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Activa el evento del botón Buscar (binoculares)
|
||
/// </summary>
|
||
/// <param name="sender"></param>
|
||
/// <param name="e"></param>
|
||
protected void btnBuscar_Click(object sender, System.Web.UI.ImageClickEventArgs e) //M6
|
||
{
|
||
try
|
||
{
|
||
llenarGridView(true);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M6", ex);
|
||
}
|
||
}
|
||
|
||
protected void btnNuevo_Click(object sender, EventArgs e) //M7
|
||
{
|
||
try
|
||
{
|
||
llenarddlProyectos();
|
||
mostrarFilaTabla(3);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M7", ex);
|
||
}
|
||
}
|
||
|
||
///<summary>
|
||
///Activa el metodo del boton Anterior, regresa a la primera fila de la tabla
|
||
///</summary>
|
||
///<param name="sender"></param>
|
||
///<param name="e"></param>
|
||
|
||
protected void btnAnterior_Click(object sender, EventArgs e) //M8
|
||
{
|
||
try
|
||
{
|
||
llenarGridView(true);
|
||
divDatosSuperiores.Visible = true;
|
||
divDatosMedios.Visible = false;
|
||
divDatosInferiores.Visible = false;
|
||
btnAnterior.Visible = false;
|
||
btnNuevo.Visible = false;
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M8", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Activa el evento del boton guardar.1
|
||
/// </summary>
|
||
/// <param name="sender"></param>
|
||
/// <param name="e"></param>
|
||
|
||
protected void btnAsignar_Click(object sender, EventArgs e) //M9
|
||
{
|
||
try
|
||
{
|
||
if (ddlProyectos.SelectedIndex > 0)
|
||
{
|
||
if (GuardarDatos())
|
||
{
|
||
llenarGridViewProyectosUsuario(Convert.ToInt32(pkUser.Value));
|
||
llenarddlProyectos();
|
||
mostrarFilaTabla(2);
|
||
MensajeInformativo("El registro fue almacenado exitosamente");
|
||
}
|
||
else
|
||
{
|
||
MensajeError("El registro no fue almacenado, verifique", null);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
MensajeError("Debe seleccionar una opción.", null);
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R3M9", ex);
|
||
}
|
||
}
|
||
|
||
protected void ddlRegion_SelectedIndexChanged(object sender, EventArgs e) //M10
|
||
{
|
||
llenarddlProyectos();
|
||
}
|
||
|
||
protected void ddlRegionGrid_SelectedIndexChanged(object sender, EventArgs e) //M11
|
||
{
|
||
llenarGridViewProyectosUsuario(Convert.ToInt32(pkUser.Value));
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region Metodos Personalizados (R4)
|
||
|
||
/// <summary>
|
||
/// Oculta las filas que lo requieran
|
||
/// </summary>
|
||
/// <param name="p_intFila"></param>
|
||
private void mostrarFilaTabla(int p_intFila) //M0
|
||
{
|
||
try
|
||
{
|
||
switch (p_intFila)
|
||
{
|
||
case 1:
|
||
llenarGridView(true);
|
||
divDatosSuperiores.Visible = true;
|
||
divDatosMedios.Visible = false;
|
||
divDatosInferiores.Visible = false;
|
||
btnNuevo.Visible = false;
|
||
break;
|
||
case 2:
|
||
btnAnterior.Visible = true;
|
||
btnNuevo.Visible = true;
|
||
btnAsignar.Visible = false;
|
||
divDatosSuperiores.Visible = false;
|
||
divDatosMedios.Visible = true;
|
||
divDatosInferiores.Visible = false;
|
||
break;
|
||
case 3:
|
||
btnAnterior.Visible = true;
|
||
btnAsignar.Visible = true;
|
||
divDatosSuperiores.Visible = false;
|
||
divDatosMedios.Visible = true;
|
||
divDatosInferiores.Visible = true;
|
||
break;
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R4M0", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Metodo que se utiliza para contruir el Grid al inicio de la pantalla
|
||
/// </summary>
|
||
private void construirGridView() //M1
|
||
{
|
||
try
|
||
{
|
||
grvListaUsuariosTemp = (GridView)divDatosSuperiores.FindControl("grvListaUsuarios");
|
||
|
||
GridViewBoundField bdfPkUsuario = new GridViewBoundField("PKUSUARIO", "PK", false, false, false);
|
||
GridViewBoundField bdfLoginUsuario = new GridViewBoundField("LOGINUSUARIO", "LOGIN", true, false, true);
|
||
GridViewBoundField bdfNombreCompleto = new GridViewBoundField("NOMBREUSUARIO", "NOMBRE", true, false, true);
|
||
GridViewBoundField bdfCedula = new GridViewBoundField("CEDULAUSUARIO", "CEDULA", true, false, true);
|
||
GridViewBoundField bdfCorreo = new GridViewBoundField("CORREOUSUARIO", "CORREO", true, false, true);
|
||
GridViewBoundField bdfDependencia = new GridViewBoundField("NOMBREDEPENDENCIA", "DEPENDENCIA", true, false, true);
|
||
GridViewBoundField bdfRol = new GridViewBoundField("NOMBREROL", "ROL", true, false, true);
|
||
GridViewBoundField bdfActivoUsuario = new GridViewBoundField("ACTIVOUSUARIO", "ACTIVO", true, "Si", "No", true);
|
||
|
||
grvListaUsuariosTemp.Columns.Add(bdfPkUsuario);
|
||
grvListaUsuariosTemp.Columns.Add(bdfLoginUsuario);
|
||
grvListaUsuariosTemp.Columns.Add(bdfNombreCompleto);
|
||
grvListaUsuariosTemp.Columns.Add(bdfCedula);
|
||
grvListaUsuariosTemp.Columns.Add(bdfCorreo);
|
||
grvListaUsuariosTemp.Columns.Add(bdfDependencia);
|
||
grvListaUsuariosTemp.Columns.Add(bdfRol);
|
||
grvListaUsuariosTemp.Columns.Add(bdfActivoUsuario);
|
||
|
||
grvListaUsuariosTemp.Columns[0].ItemStyle.Width = 25;
|
||
grvListaUsuariosTemp.Columns[1].ItemStyle.Width = 25;
|
||
|
||
cuwBusquedaList.LlenarCHKLBusqueda(grvListaUsuariosTemp);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R4M1", ex);
|
||
}
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// Metodo que se encarga de agregar el filtro de busqueda seleccionado por el usuario
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
private void condicionesBusqueda() //M2
|
||
{
|
||
objUsuarioBL = new UsuarioBL();
|
||
CondicionDAL condicion;
|
||
DateTime dteFechaInicio = new DateTime();
|
||
DateTime dteFechaFin = new DateTime();
|
||
ListItem li = new ListItem();
|
||
string p_parametros;
|
||
p_parametros = this.cuwBusquedaList.getValorBusqueda();
|
||
try
|
||
{
|
||
if (p_parametros != "")
|
||
{
|
||
//aqui se construye el listItem con los datos que vienen del control en formato {valor : texto , valor : texto}
|
||
char[] separadorTuplas = { ',' };
|
||
char[] separadorValores = { ':' };
|
||
string[] arrayTupla = p_parametros.Split(separadorTuplas);
|
||
|
||
for (int i = 0; i <= (arrayTupla.Length - 1); i++)
|
||
{
|
||
if (arrayTupla[i].ToString() != "")
|
||
{
|
||
string[] arrayValores = arrayTupla[i].ToString().Split(separadorValores);
|
||
li = new ListItem(arrayValores[1], arrayValores[0]);
|
||
|
||
if (li.Value.Contains("FECHA") && li.Text != string.Empty)
|
||
{
|
||
|
||
if (li.Value.Contains("INICIO"))
|
||
{
|
||
dteFechaInicio = Convert.ToDateTime(li.Text.ToString());
|
||
}
|
||
if (li.Value.Contains("FIN"))
|
||
{
|
||
dteFechaFin = Convert.ToDateTime(li.Text.ToString());
|
||
|
||
if (dteFechaFin != null || dteFechaInicio != null)
|
||
if (dteFechaInicio < dteFechaFin || dteFechaFin == dteFechaInicio)
|
||
{
|
||
objUsuarioBL = new UsuarioBL();
|
||
arlCondicionesBuscador = objUsuarioBL.buscarPorFechas(Tablas.usuario, dteFechaInicio, dteFechaFin, operadorLogico.AND);
|
||
}
|
||
else
|
||
MensajeInformativo("Verifique que la Fecha de Inicio sea menor que la Fecha Final" + "M2");
|
||
else
|
||
MensajeInformativo("Verifique que los campos de las fechas no estén vacíos" + "M2");
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (li.Value.Contains("booleano") && li.Text != "2")
|
||
{
|
||
condicion = new CondicionDAL();
|
||
char[] separadorColumna = { '|' };
|
||
string[] strColumna = li.Value.Split(separadorColumna);
|
||
condicion.valorIzquierdo = strColumna[1].ToString();
|
||
condicion.operadorGeneral = operadorGeneral.EQUAL;
|
||
condicion.operadorLogico = operadorLogico.AND;
|
||
condicion.valorDerecho = li.Text;
|
||
arlCondicionesBuscador.Add(condicion);
|
||
}
|
||
else
|
||
{
|
||
if (li.Text != string.Empty && !li.Value.Contains("booleano"))
|
||
{
|
||
condicion = new CondicionDAL();
|
||
condicion.valorIzquierdo = li.Value;
|
||
condicion.operadorGeneral = operadorGeneral.LIKEALL;
|
||
condicion.operadorLogico = operadorLogico.AND;
|
||
condicion.valorDerecho = "%" + li.Text + "%";
|
||
arlCondicionesBuscador.Add(condicion);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R4M2", ex);
|
||
}
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// Metodo que se utiliza con el buscador de la parte superior de la pantalla, y hace que se despliegue la información de acuerdo
|
||
/// a lo solicitado
|
||
/// </summary>|
|
||
private void Buscar() //M3
|
||
{
|
||
try
|
||
{
|
||
llenarGridView(true);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R4M3", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Constrye el Grid de los usuarios en el active
|
||
/// </summary>
|
||
private void construirGridProyectosUsuario() //M4
|
||
{
|
||
try
|
||
{
|
||
grvProyectosUsuarioTemp = (GridView)divDatosMedios.FindControl("grvProyectosUsuario");
|
||
|
||
GridViewBoundField bdfPkt = new GridViewBoundField("PKVISITANTEPROYECTO", "PKT", false, false, false);
|
||
GridViewBoundField bdfPk = new GridViewBoundField("PKPROYECTO", "PK", false, false, false);
|
||
GridViewBoundField bdfNombre = new GridViewBoundField("NOMBREPROYECTO", "NOMBRE PROYECTO", false, false, true);
|
||
GridViewBoundField bdfEncargado = new GridViewBoundField("ENCARGADOINFORMACIONGENERAL", "ENCARGADO DEL PROYECTO", false, false, true);
|
||
|
||
grvProyectosUsuarioTemp.Columns.Add(bdfPkt);
|
||
grvProyectosUsuarioTemp.Columns.Add(bdfPk);
|
||
grvProyectosUsuarioTemp.Columns.Add(bdfNombre);
|
||
grvProyectosUsuarioTemp.Columns.Add(bdfEncargado);
|
||
|
||
grvProyectosUsuarioTemp.Columns[0].ItemStyle.Width = 25;
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R4M4", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Metodo que se utiliza para el despliegue de los botones
|
||
/// </summary>
|
||
private void ComandosxMenu() //M5
|
||
{
|
||
try
|
||
{
|
||
DataSet dsComandos = getComandos();
|
||
|
||
if (dsComandos != null)
|
||
{
|
||
foreach (DataRow drTemp in dsComandos.Tables[0].Rows)
|
||
{
|
||
switch (drTemp["NOMBRECOMANDO"].ToString().ToUpper())
|
||
{
|
||
case "NUEVO":
|
||
btnNuevo.Visible = true;
|
||
break;
|
||
|
||
case "MODIFICA":
|
||
//Inicio de variable tipo VIEWSTATE
|
||
ViewState["PUEDEMODIFICAR"] = true;
|
||
btnAsignar.Visible = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R4M5", ex);
|
||
}
|
||
}
|
||
|
||
|
||
#endregion
|
||
|
||
#region Metodos Controles a Datos (R5)
|
||
|
||
/// <summary>
|
||
/// guarda y modifica registros en la tabla.
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
private bool GuardarDatos() //M0
|
||
{
|
||
bool blnEjecutado = false;
|
||
|
||
try
|
||
{
|
||
string strModo = ViewState["MODO"].ToString();
|
||
|
||
objVisitanteProyectoBL = new VisitanteProyectoBL();
|
||
objVisitanteProyectoBL.objVisitanteProyectoEL.Usuario = Convert.ToInt32(pkUser.Value);
|
||
objVisitanteProyectoBL.objVisitanteProyectoEL.Proyecto = Int32.Parse(ddlProyectos.SelectedValue);
|
||
|
||
//if (strModo == "Nuevo")
|
||
//{
|
||
if (objVisitanteProyectoBL.insertarVisitanteProyecto() > 0)
|
||
{
|
||
blnEjecutado = true;
|
||
|
||
GuardarEventoBitacora(
|
||
Session["LOGIN"].ToString(),
|
||
AccionBitacora.INSERT.ToString(),
|
||
MensajesBitacora.IngresarRegistro + ": Se ha ingresado el registro " + pkUser.Value + ", " + ddlProyectos.SelectedValue,
|
||
"wfrVisitanteProyecto.aspx");
|
||
}
|
||
//}
|
||
//else if (strModo == "Modifica" && bool.Parse(ViewState["PUEDEMODIFICAR"].ToString()) == true)
|
||
//{
|
||
// objUsuarioBL.objUsuarioEL.PK = Int32.Parse(ViewState["PkUsuario"].ToString());
|
||
|
||
// if (objUsuarioBL.actualizarUsuario())
|
||
// {
|
||
// blnEjecutado = true;
|
||
|
||
// GuardarEventoBitacora(
|
||
// Session["LOGIN"].ToString(),
|
||
// AccionBitacora.UPDATE.ToString(),
|
||
// MensajesBitacora.ModificarRegistro + ": Se ha modificado el registro " + pkUser.Value + ", " + ddlProyectos.SelectedValue, ,
|
||
// "wfrVisitanteProyecto.aspx");
|
||
// }
|
||
//}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
blnEjecutado = false;
|
||
throw ex;
|
||
}
|
||
return blnEjecutado;
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region Metodos Datos a Controles (R6)
|
||
/// <summary>
|
||
/// Carga el grid principal
|
||
/// </summary>
|
||
/// <param name="p_Llenar"></param>
|
||
private void llenarGridView(bool p_Llenar) //M0
|
||
{
|
||
try
|
||
{
|
||
if (!IsPostBack || p_Llenar)
|
||
{
|
||
condicionesBusqueda();
|
||
|
||
objUsuarioBL = new UsuarioBL();
|
||
objUsuarioBL.objUsuarioEL.PK = 0;
|
||
|
||
DataSet dsUsuarios = objUsuarioBL.getListaUsuarios(arlCondicionesBuscador);//getListaUsuariosRol(arlCondicionesBuscador, 2); //2 indica Lider de Proyecto
|
||
|
||
if (dsUsuarios.Tables.Count != 0)
|
||
{
|
||
for (int i = 0; i < dsUsuarios.Tables[0].Rows.Count; i++)
|
||
{
|
||
if (!dsUsuarios.Tables[0].Rows[i]["NOMBREROL"].ToString().Equals("Visitante de Proyecto") || !bool.Parse(dsUsuarios.Tables[0].Rows[i]["ACTIVOUSUARIO"].ToString()))
|
||
dsUsuarios.Tables[0].Rows[i].Delete();
|
||
}
|
||
}
|
||
|
||
General.detalleGridView(dsUsuarios, grvListaUsuariosTemp, lblTotalDatos);
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R6M0", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Carga el grid de Proyectos del Usuario
|
||
/// </summary>
|
||
/// <param name="p_Llenar"></param>
|
||
private void llenarGridViewProyectosUsuario(int p_User) //M1
|
||
{
|
||
try
|
||
{
|
||
if (!IsPostBack || p_User != 0)
|
||
{
|
||
objVisitanteProyectoBL = new VisitanteProyectoBL();
|
||
objVisitanteProyectoBL.objVisitanteProyectoEL.PK = 0;
|
||
|
||
dsProyectosUsuarios = objVisitanteProyectoBL.getVisitanteProyectos(p_User, Convert.ToInt32(ddlRegionGrid.SelectedValue));
|
||
General.detalleGridView(dsProyectosUsuarios, grvProyectosUsuarioTemp, lblTotalDatosProyectosUsuario);
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R6M1", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Llena el dropdownlist de Roles según la aplicación
|
||
/// </summary>
|
||
private void llenarddlProyectos() //M2
|
||
{
|
||
try
|
||
{
|
||
//Limpia el control
|
||
ddlProyectos.Items.Clear();
|
||
//Instancia el objeto
|
||
objProyectoBL = new ProyectoBL();
|
||
//Carga la información en un dataset
|
||
objProyectoBL.objProyectoEL.PK = 0;
|
||
objProyectoBL.objProyectoEL.ASTATE = true;
|
||
DataSet dsProyectos = objProyectoBL.getProyectosParaAsignar(Convert.ToInt32(ddlRegion.SelectedValue));
|
||
|
||
objVisitanteProyectoBL = new VisitanteProyectoBL();
|
||
objVisitanteProyectoBL.objVisitanteProyectoEL.PK = 0;
|
||
dsProyectosUsuarios = objVisitanteProyectoBL.getVisitanteProyectos(Convert.ToInt32(pkUser.Value), 0);
|
||
|
||
|
||
if (dsProyectosUsuarios.Tables.Count != 0)
|
||
{
|
||
if (dsProyectos.Tables.Count != 0)
|
||
{
|
||
for (int i = 0; i < dsProyectosUsuarios.Tables[0].Rows.Count; i++)
|
||
{
|
||
for (int j = 0; j < dsProyectos.Tables[0].Rows.Count; j++)
|
||
{
|
||
if (dsProyectosUsuarios.Tables[0].Rows[i]["PKPROYECTO"].ToString().Equals(dsProyectos.Tables[0].Rows[j]["PKPROYECTO"].ToString()))
|
||
dsProyectos.Tables[0].Rows[j].Delete();
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
if (dsProyectos.Tables.Count != 0)
|
||
{
|
||
if (dsProyectos.Tables[0].Rows.Count != 0)
|
||
{
|
||
ddlProyectos.DataSource = dsProyectos;
|
||
ddlProyectos.DataTextField = dsProyectos.Tables[0].Columns["NOMBREPROYECTO"].ColumnName;
|
||
ddlProyectos.DataValueField = dsProyectos.Tables[0].Columns["PKPROYECTO"].ColumnName;
|
||
ddlProyectos.DataBind();
|
||
|
||
ddlProyectos.Items.Insert(0, new ListItem("----- Seleccione un Proyecto -----", "-1"));
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R6M2", ex);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Carga el ddl de Regiones
|
||
/// </summary>
|
||
private void llenarDdlRegion() //M3
|
||
{
|
||
try
|
||
{
|
||
//Limpia el control
|
||
ddlRegion.Items.Clear();
|
||
//---------
|
||
ddlRegionGrid.Items.Clear();
|
||
|
||
//Instancia el objeto
|
||
objRegionBL = new RegionBL();
|
||
objRegionBL.objRegionEL.PK = 0;
|
||
objRegionBL.objRegionEL.Padre = 1;
|
||
objRegionBL.objRegionEL.ASTATE = true;
|
||
|
||
DataSet dsRegion = objRegionBL.getRegion();
|
||
|
||
if (dsRegion.Tables[0].Rows.Count != 0)
|
||
{
|
||
ddlRegion.DataSource = dsRegion;
|
||
ddlRegion.DataTextField = dsRegion.Tables[0].Columns["NOMBREREGION"].ColumnName;
|
||
ddlRegion.DataValueField = dsRegion.Tables[0].Columns["PKREGION"].ColumnName;
|
||
ddlRegion.DataBind();
|
||
ddlRegion.Items.Insert(0, new ListItem("Seleccione una Región", "-1"));
|
||
|
||
//--------
|
||
ddlRegionGrid.DataSource = dsRegion;
|
||
ddlRegionGrid.DataTextField = dsRegion.Tables[0].Columns["NOMBREREGION"].ColumnName;
|
||
ddlRegionGrid.DataValueField = dsRegion.Tables[0].Columns["PKREGION"].ColumnName;
|
||
ddlRegionGrid.DataBind();
|
||
ddlRegionGrid.Items.Insert(0, new ListItem("Seleccione una Región", "-1"));
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
MensajeError("Error en R6M3", ex);
|
||
}
|
||
}
|
||
|
||
|
||
#endregion
|
||
} |