using System;
using System.Collections.Generic;
using System.Web;
using MySQL;
using System.Data;
using System.Web.Configuration;
using System.Web.UI.WebControls;
namespace Intranet
{
///
/// 1ª página da Intranet
///
public class Home
{
public Home()
{
//
// TODO: Add constructor logic here
//
}
///
/// Mostra todos os eventos dentro das tabelas: Agenda, Férias, Ausências, Requisição de viaturas e Aniversários
///
/// Número do registo inicial
/// Número de registo final
/// DataTable
public static DataTable Actividade(string OffsetIni, string OffsetFim)
{
DataTable dtListagem = new DataTable();
sql sqlInfo = new sql(WebConfigurationManager.ConnectionStrings["Site"].ConnectionString);
sqlInfo.Query = "SELECT 'colaborador' AS tabela, '/Imagens/Icons/Aniversario/16x16.png' AS icon, "
+ " id, "
+ " createuser, createdep, createdata, "
+ " edituser, editdep, editdata, "
+ " activo, "
+ " DATE_FORMAT(data_nascimento, '" + DateTime.Now.Year + ".%m.%d') AS data_ini, "
+ " DATE_FORMAT(data_nascimento, '" + DateTime.Now.Year + ".%m.%d') AS data_fim, "
+ " '00:00' AS hora_ini, "
+ " '00:00' AS hora_fim, "
+ " 'Aniversário' AS actividade, '' AS local, "
+ " id AS colaboradorid, nome AS colaborador, abreviatura AS colaborador_abreviatura, email AS colaborador_email, "
+ " 0 AS departamentoid, '' AS departamento, '' AS departamento_abreviatura, '' AS departamento_email "
+ "FROM sys_colaborador "
+ "WHERE activo=1 "
+ " AND DATE_FORMAT(now(), '%Y.%m.%d')>=DATE_FORMAT(data_nascimento, '" + DateTime.Now.Year + ".%m.%d') "
+ "ORDER BY data_ini DESC, hora_ini DESC "
+ "LIMIT " + OffsetIni + ", " + OffsetFim;
dtListagem = sqlInfo.Read();
sqlInfo.closeConnection();
return dtListagem;
}
///
/// Mostra todos os eventos dentro das tabelas: Agenda, Férias, Ausências, Requisição de viaturas e Aniversários
///
/// Número de eventos a mostrar
/// DataTable
public static DataTable Actividade(int Ano, int Mes)
{
DataTable dtInfo = new DataTable();
sql sqlInfo = new sql(WebConfigurationManager.ConnectionStrings["Site"].ConnectionString);
sqlInfo.Query = "SELECT 'agenda' AS tabela, "
+ " '/Imagens/Icons/Calendario/16x16.png' AS icon, "
+ " '/agenda/' AS menu, "
+ " a.id, "
+ " a.createuser, a.createdep, a.createdata, "
+ " a.edituser, a.editdep, a.editdata, "
+ " a.activo, "
+ " DATE_FORMAT(a.data_ini, '%Y.%m.%d') AS data_ini, "
+ " DATE_FORMAT(a.data_fim, '%Y.%m.%d') AS data_fim, "
+ " DATE_FORMAT(a.data_ini, '%H:%i') AS hora_ini, "
+ " DATE_FORMAT(a.data_fim, '%H:%i') AS hora_fim, "
+ " a.actividade AS actividade, a.local AS local, "
+ " c.id AS colaboradorid, c.nome AS colaborador, c.abreviatura AS colaborador_abreviatura, c.email AS colaborador_email, "
+ " d.id AS departamentoid, d.nome AS departamento, d.abreviatura AS departamento_abreviatura, d.email AS departamento_email "
+ "FROM agenda a, colaborador c, departamento d "
+ "WHERE a.createuser=c.id "
+ " AND a.createdep=d.id "
+ " AND a.activo=1 "
+ " AND (DATE_FORMAT(a.data_ini, '%Y.%m')=DATE_FORMAT('" + Ano + "." + Mes + ".1', '%Y.%m') "
+ " OR "
+ " (DATE_FORMAT(a.data_ini, '%Y.%m')0 "
+ " AND rv.activo=1 "
+ " AND DATE_FORMAT(rv.data_ini, '%Y.%m')=DATE_FORMAT('" + Ano + "." + Mes + ".1', '%Y.%m') "
+ "UNION "
+ "SELECT 'rh_ferias' AS tabela, "
+ " '/Imagens/Icons/Ferias/16x16.png' AS icon, "
+ " '/rh/ferias/' AS menu, "
+ " f.id, "
+ " f.createuser, f.createdep, f.createdata, "
+ " f.edituser, f.editdep, f.editdata, "
+ " f.activo, "
+ " DATE_FORMAT(f.data_ini, '%Y.%m.%d') AS data_ini, "
+ " DATE_FORMAT(f.data_fim, '%Y.%m.%d') AS data_fim, "
+ " DATE_FORMAT(f.data_ini, '%H:%i') AS hora_ini, "
+ " DATE_FORMAT(f.data_fim, '%H:%i') AS hora_fim, "
+ " 'Férias' AS actividade, '' AS local, "
+ " c.id AS colaboradorid, c.nome AS colaborador, c.abreviatura AS colaborador_abreviatura, c.email AS colaborador_email, "
+ " d.id AS departamentoid, d.nome AS departamento, d.abreviatura AS departamento_abreviatura, d.email AS departamento_email "
+ "FROM rh_ferias f, colaborador c, departamento d "
+ "WHERE f.createuser=c.id "
+ " AND f.createdep=d.id "
+ " AND f.activo=1 "
+ " AND f.autorizado=1 "
+ " AND (DATE_FORMAT(f.data_ini, '%Y.%m')=DATE_FORMAT('" + Ano + "." + Mes + ".1', '%Y.%m') "
+ " OR "
+ " (DATE_FORMAT(f.data_ini, '%Y.%m')
/// Aniversários hoje
///
/// DataTable
public static DataTable Hoje()
{
DataTable dtListagem = new DataTable();
sql sqlInfo = new sql(WebConfigurationManager.ConnectionStrings["Site"].ConnectionString);
sqlInfo.Query = "SELECT id, nome, email, "
+ " DATE_FORMAT(data_nascimento, '" + DateTime.Now.Year + ".%m.%d') AS data "
+ "FROM sys_colaborador "
+ "WHERE DATE_FORMAT(data_nascimento, '%d.%m')<>'00.00' "
+ " AND DATE_FORMAT(data_nascimento, '%m.%d')=DATE_FORMAT(now(), '%m.%d') "
+ " AND activo=1 "
+ "ORDER BY DATE_FORMAT(data_nascimento, '%m.%d')";
dtListagem = sqlInfo.Read();
sqlInfo.closeConnection();
return dtListagem;
}
///
/// Aniversários a decorrer no próximo mês
///
/// DataTable
public static DataTable ProximoMes()
{
DataTable dtListagem = new DataTable();
sql sqlInfo = new sql(WebConfigurationManager.ConnectionStrings["Site"].ConnectionString);
sqlInfo.Query = "SELECT id, nome, email, "
+ " DATE_FORMAT(data_nascimento, '" + DateTime.Now.Year + ".%m.%d') AS data "
+ "FROM sys_colaborador "
+ "WHERE DATE_FORMAT(data_nascimento, '%m.%d')<>'00.00' "
+ " AND DATE_FORMAT(data_nascimento, '" + DateTime.Now.Year + ".%m.%d')>DATE_FORMAT(now(), '" + DateTime.Now.Year + ".%m.%d') "
+ " AND DATE_FORMAT(data_nascimento, '" + DateTime.Now.Year + ".%m.%d')