174 lines
6.3 KiB
C#
174 lines
6.3 KiB
C#
using AyADAL;
|
|
using AyAEL.SEP;
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace AyABL.SEP
|
|
{
|
|
public class VisitanteProyectoBL : AyABL
|
|
{
|
|
#region Constructores
|
|
|
|
public VisitanteProyectoBL()
|
|
{
|
|
objVisitanteProyectoEL = new VisitanteProyectoEL();
|
|
this.NombreTabla = Modulos.t_sep_.ToString() + Tablas.visitanteproyecto.ToString();
|
|
this.NombreConeccionBD = BASESDEDATOS.FOPI.ToString();
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Atributos
|
|
|
|
public VisitanteProyectoEL objVisitanteProyectoEL { get; set; }
|
|
|
|
#endregion
|
|
|
|
#region Metodos
|
|
|
|
/// <summary>
|
|
/// Inluye los datos del Proyecto
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
|
|
public int insertarVisitanteProyecto()
|
|
{
|
|
int intEjecutado = 0;
|
|
|
|
this.CamposTabla = Constraints.FK.ToString() + Tablas.usuario.ToString().ToUpper() + ", " +
|
|
Constraints.FK.ToString() + Tablas.proyecto.ToString().ToUpper();
|
|
|
|
this.ValoresCampos = new object[]{objVisitanteProyectoEL.Usuario,
|
|
objVisitanteProyectoEL.Proyecto};
|
|
|
|
intEjecutado = baseDAL.Insertar(this.NombreTabla, this.CamposTabla, this.ValoresCampos, this.NombreConeccionBD);
|
|
|
|
return intEjecutado;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Actualiza el dato del Visitante de Proyecto
|
|
/// </summary>
|
|
|
|
public bool actualizarVisitanteProyecto()
|
|
{
|
|
ArrayList arlCondiciones = new ArrayList();
|
|
bool blnEjecutado = false;
|
|
|
|
if (objVisitanteProyectoEL.PK != 0)
|
|
{
|
|
arlCondiciones.Add(this.buscarPorPK(objVisitanteProyectoEL.PK, Tablas.proyecto, operadorLogico.AND));
|
|
}
|
|
|
|
this.CamposTabla = Constraints.FK.ToString() + Tablas.usuario.ToString().ToUpper() + ", " +
|
|
Constraints.FK.ToString() + Tablas.proyecto.ToString().ToUpper();
|
|
|
|
this.ValoresCampos = new object[]{ };
|
|
|
|
baseDAL.Actualizar(this.NombreTabla, this.CamposTabla, this.ValoresCampos, this.NombreConeccionBD, arlCondiciones);
|
|
|
|
blnEjecutado = true;
|
|
|
|
return blnEjecutado;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Actualiza el estado del Visitante a Proyecto
|
|
/// </summary>
|
|
|
|
public bool actualizaEstadoVisitanteProyecto()
|
|
{
|
|
ArrayList arlCondiciones = new ArrayList();
|
|
bool blnEjecutado = false;
|
|
|
|
if (objVisitanteProyectoEL.PK != 0)
|
|
{
|
|
arlCondiciones.Add(this.buscarPorPK(objVisitanteProyectoEL.PK, Tablas.visitanteproyecto, operadorLogico.NONE));
|
|
}
|
|
|
|
this.CamposTabla = Concepto.ASTATE.ToString() + Tablas.visitanteproyecto.ToString();
|
|
|
|
this.ValoresCampos = new object[] { objVisitanteProyectoEL.ASTATE = false };
|
|
|
|
baseDAL.Actualizar(this.NombreTabla, this.CamposTabla, this.ValoresCampos, this.NombreConeccionBD, arlCondiciones);
|
|
|
|
blnEjecutado = true;
|
|
|
|
return blnEjecutado;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Lista todos los Proyectos asignados a un usuario visitante
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
|
|
public DataSet getVisitanteProyectos(int fkUser, int fkRegion)
|
|
{
|
|
DataSet dsVisitante = new DataSet();
|
|
ArrayList arlCondiciones = new ArrayList();
|
|
|
|
if (objVisitanteProyectoEL.Usuario != 0)
|
|
{
|
|
arlCondiciones.Add(buscarPorUsuario(objVisitanteProyectoEL.Usuario, operadorLogico.AND));
|
|
}
|
|
|
|
if (objVisitanteProyectoEL.Region != 0)
|
|
{
|
|
arlCondiciones.Add(buscarPorRegion(objVisitanteProyectoEL.Region, operadorLogico.AND));
|
|
}
|
|
|
|
NombreTabla = Vistas.v_visitanteproyecto.ToString();
|
|
|
|
dsVisitante = baseDAL.EjecutarConsulta(NombreTabla, CamposTabla, NombreConeccionBD, arlCondiciones, null, null);
|
|
|
|
//string query;
|
|
|
|
//if (fkRegion == 0)
|
|
//{
|
|
// query = "SELECT l.PKVISITANTEPROYECTO, p.PKPROYECTO, p.NOMBREPROYECTO, i.ENCARGADOINFORMACIONGENERAL FROM t_agp_proyecto p JOIN t_sep_visitanteproyecto l ON p.PKPROYECTO = l.FKPROYECTO " +
|
|
// "JOIN dbo.t_igp_informaciongeneral i ON i.FKPROYECTO = p.PKPROYECTO WHERE l.FKUSUARIO = " + fkUser + "AND ASTATEVISITANTEPROYECTO = 1";
|
|
//}
|
|
//else
|
|
//{
|
|
// query = "SELECT l.PKVISITANTEPROYECTO, p.PKPROYECTO, p.NOMBREPROYECTO, i.ENCARGADOINFORMACIONGENERAL FROM t_agp_proyecto p " +
|
|
// "JOIN t_sep_visitanteproyecto l ON p.PKPROYECTO = l.FKPROYECTO JOIN dbo.t_igp_informaciongeneral i ON i.FKPROYECTO = p.PKPROYECTO " +
|
|
// "WHERE l.FKUSUARIO = " + fkUser + " AND ASTATEVISITANTEPROYECTO = 1 AND i.FKREGION = " + fkRegion;
|
|
//}
|
|
//DataSet dsProyecto = baseDAL.ejecutarConsulta(query, arlCondiciones, this.NombreConeccionBD);
|
|
|
|
return dsVisitante;
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Condiciones de Busqueda
|
|
|
|
protected CondicionDAL buscarPorUsuario(int p_intUsuario, operadorLogico logOp)
|
|
{
|
|
CondicionDAL cdlCondicion = new CondicionDAL();
|
|
cdlCondicion.valorIzquierdo = Constraints.FK.ToString() + Tablas.usuario.ToString();
|
|
cdlCondicion.operadorGeneral = operadorGeneral.EQUAL;
|
|
cdlCondicion.operadorLogico = logOp;
|
|
cdlCondicion.valorDerecho = p_intUsuario;
|
|
return cdlCondicion;
|
|
}
|
|
|
|
protected CondicionDAL buscarPorRegion(int p_intRegion, operadorLogico logOp)
|
|
{
|
|
CondicionDAL cdlCondicion = new CondicionDAL();
|
|
cdlCondicion.valorIzquierdo = Constraints.FK.ToString() + Tablas.region.ToString();
|
|
cdlCondicion.operadorGeneral = operadorGeneral.EQUAL;
|
|
cdlCondicion.operadorLogico = logOp;
|
|
cdlCondicion.valorDerecho = p_intRegion;
|
|
return cdlCondicion;
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|