]> git.llucax.com Git - mecon/intranet.git/commitdiff
Agregué una clase Buscador que sirve para hacer todas las búsquedas de bandas
authorMatías Sklar <msklar@mecon.gov.ar>
Fri, 12 Sep 2003 12:57:23 +0000 (12:57 +0000)
committerMatías Sklar <msklar@mecon.gov.ar>
Fri, 12 Sep 2003 12:57:23 +0000 (12:57 +0000)
doc/servicios/bandas/bandas.xmi
sistema/local_lib/Servicios/Bandas/Agente.php
sistema/local_lib/Servicios/Bandas/Buscador.php [new file with mode: 0644]

index 1656fb52e87fb9b1452293a47727f69e0d1b1a93..abb85126306ad195d232b5f55a80b37b89762323 100644 (file)
@@ -10,7 +10,7 @@
   <XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
  </XMI.header>
  <XMI.content>
-  <docsettings viewid="181" documentation="" uniqueid="227" />
+  <docsettings viewid="181" documentation="" uniqueid="234" />
   <umlobjects>
    <UML:Class stereotype="" package="" xmi.id="182" abstract="0" documentation="x2c:extern
 x2c:include:MECON/Agente.php" name="MECON_Agente" static="0" scope="200" >
@@ -36,13 +36,15 @@ En el caso de los contratados devuelve el string &quot;CON &quot; concatenado co
     <UML:Operation stereotype="" package="" xmi.id="205" type="void" abstract="0" documentation="Método que devuelve todos los accesos de una persona en un rango de fechas" name="getAccesos" static="0" scope="200" />
     <UML:Operation stereotype="" package="" xmi.id="207" type="void" abstract="0" documentation="Devuelve la cantidad de días laborales trabajados por el agente en el mes considerado" name="getDiasLaborablesTrabajados" static="0" scope="200" />
     <UML:Operation stereotype="" package="" xmi.id="208" type="void" abstract="0" documentation="Devuelve la cantidad de días trabajados por el agente en el mes considerado" name="getDiasTrabajados" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="212" type="int" abstract="0" documentation="Devuelve la cantidad de ausentes sin aviso del agente en el mes considerado" name="getNASA" static="0" scope="200" />
+    <UML:Operation stereotype="" package="" xmi.id="229" type="array" abstract="0" documentation="Devuelve las fechas dentro del mes pedido en que el agente faltó y no se pasó ninguna novedad que lo justifique" name="getASA" static="0" scope="200" />
+    <UML:Operation stereotype="" package="" xmi.id="230" type="int" abstract="0" documentation="" name="getNASA" static="0" scope="200" />
     <UML:Attribute stereotype="" package="" xmi.id="214" value="null" type="int" abstract="0" documentation="Todos los accesos del agente en el mes pedido" name="accesos" static="0" scope="201" />
     <UML:Attribute stereotype="" package="" xmi.id="221" value="" type="int" abstract="0" documentation="Número de ausentes sin aviso en el mes pedido" name="NASA" static="0" scope="201" />
     <UML:Attribute stereotype="" package="" xmi.id="222" value="" type="int" abstract="0" documentation="Promedio horario del agente en el mes pedido" name="promedio" static="0" scope="201" />
     <UML:Attribute stereotype="" package="" xmi.id="223" value="" type="int" abstract="0" documentation="Array con las horas por día trabajadas por el agente" name="horas" static="0" scope="201" />
     <UML:Attribute stereotype="" package="" xmi.id="226" value="0" type="int" abstract="0" documentation="Cantidad de días trabajados por el agente en el mes pedido" name="diasTrabajados" static="0" scope="201" />
     <UML:Attribute stereotype="" package="" xmi.id="227" value="0" type="int" abstract="0" documentation="Cantidad de días laborables trabajados por el agente en el mes pedido" name="diasLaborablesTrabajados" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="228" value="null" type="array" abstract="0" documentation="" name="ASA" static="0" scope="201" />
    </UML:Class>
    <UML:Class stereotype="" package="" xmi.id="199" abstract="0" documentation="x2c:extern
 x2c:include:MECON/Dependencia.php" name="MECON_Dependencia" static="0" scope="200" >
@@ -70,17 +72,25 @@ x2c:include:MECON/Dependencia.php" name="MECON_Dependencia" static="0" scope="20
    </UML:Class>
    <UML:Class stereotype="" package="" xmi.id="206" abstract="0" documentation="x2c:extern
 x2c:include:MECON/NovedadesDia.php" name="MECON_NovedadesDia" static="0" scope="200" />
+   <UML:Class stereotype="class" package="" xmi.id="231" abstract="0" documentation="Clase que se encarga de realizar todas las búsquedas provenientes de formularios" name="Servicios_Bandas_Buscador" static="0" scope="200" >
+    <UML:Operation stereotype="" package="" xmi.id="233" type="array()" abstract="0" documentation="Devuelve todos los meses cargados en la base de datos" name="getMeses" static="1" scope="200" >
+     <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="int" abstract="0" documentation="El handler de conexión a la base de datos" name="db" static="0" scope="201" />
+    </UML:Operation>
+    <UML:Attribute stereotype="" package="" xmi.id="232" value="NULL" type="array" abstract="0" documentation="Los meses que hay cargados en la base de datos" name="meses" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="234" value="" type="int" abstract="0" documentation="" name="db" static="0" scope="201" />
+   </UML:Class>
    <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="500" rolea="200" roleb="199" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
    <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="500" rolea="183" roleb="182" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
   </umlobjects>
   <diagrams>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="551" snapy="10" showatts="1" xmi.id="181" documentation="" type="402" showops="1" showpackage="0" name="class diagram" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="helvetica,-1,12,0,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="469" >
+   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="551" snapy="10" showatts="1" xmi.id="181" documentation="" type="402" showops="1" showpackage="0" name="class diagram" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="helvetica,-1,12,0,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="453" >
     <widgets>
-     <UML:ClassWidget usesdiagramfillcolour="0" width="187" showattsigs="601" usesdiagramusefillcolour="0" x="52" linecolour="#ff0000" y="34" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="126" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="182" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="187" showattsigs="601" usesdiagramusefillcolour="0" x="40" linecolour="#ff0000" y="24" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="126" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="182" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
      <UML:ClassWidget usesdiagramfillcolour="0" width="251" showattsigs="601" usesdiagramusefillcolour="0" x="278" linecolour="#ff0000" y="18" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="70" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="199" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
      <UML:ClassWidget usesdiagramfillcolour="0" width="287" showattsigs="601" usesdiagramusefillcolour="0" x="260" linecolour="#ff0000" y="127" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="77" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="200" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="341" showattsigs="601" usesdiagramusefillcolour="0" x="7" linecolour="#ff0000" y="221" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="196" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="183" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="341" showattsigs="601" usesdiagramusefillcolour="0" x="10" linecolour="#ff0000" y="208" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="224" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="183" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
      <UML:ClassWidget usesdiagramfillcolour="1" width="128" showattsigs="601" usesdiagramusefillcolour="1" x="365" linecolour="none" y="331" showopsigs="601" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="206" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="151" showattsigs="601" usesdiagramusefillcolour="0" x="358" linecolour="#ff0000" y="237" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="56" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="231" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,8,-1,0,50,0,0,0,0,0" />
     </widgets>
     <messages/>
     <associations>
@@ -94,12 +104,12 @@ x2c:include:MECON/NovedadesDia.php" name="MECON_NovedadesDia" static="0" scope="
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="182" roleBdoc="" widgetaid="183" roleAdoc="" documentation="" type="500" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-15" linecolour="none" y="11" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="30" linecolour="none" y="15" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="40" linecolour="none" y="86" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-21" linecolour="none" y="6" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="33" linecolour="none" y="2" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="28" linecolour="none" y="76" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
-       <startpoint startx="177" starty="221" />
-       <endpoint endx="145" endy="160" />
+       <startpoint startx="180" starty="208" />
+       <endpoint endx="133" endy="150" />
       </linepath>
      </UML:AssocWidget>
     </associations>
@@ -127,6 +137,7 @@ x2c:include:MECON/NovedadesDia.php" name="MECON_NovedadesDia" static="0" scope="
      </listitem>
      <listitem open="1" type="813" id="206" label="NovedadesDia" />
      <listitem open="1" type="813" id="183" label="Servicios_Bandas_Agente" >
+      <listitem open="0" type="814" id="228" label="ASA" />
       <listitem open="0" type="814" id="221" label="NASA" />
       <listitem open="0" type="814" id="214" label="accesos" />
       <listitem open="0" type="814" id="227" label="diasLaborablesTrabajados" />
@@ -134,13 +145,19 @@ x2c:include:MECON/NovedadesDia.php" name="MECON_NovedadesDia" static="0" scope="
       <listitem open="0" type="814" id="223" label="horas" />
       <listitem open="0" type="814" id="222" label="promedio" />
       <listitem open="0" type="815" id="213" label="Servicios_Bandas_Agente" />
+      <listitem open="0" type="815" id="229" label="getASA" />
       <listitem open="0" type="815" id="205" label="getAccesos" />
       <listitem open="0" type="815" id="207" label="getDiasLaborablesTrabajados" />
       <listitem open="0" type="815" id="208" label="getDiasTrabajados" />
       <listitem open="0" type="815" id="198" label="getHoras" />
-      <listitem open="0" type="815" id="212" label="getNASA" />
+      <listitem open="0" type="815" id="230" label="getNASA" />
       <listitem open="0" type="815" id="197" label="getPromedioMensual" />
      </listitem>
+     <listitem open="1" type="813" id="231" label="Servicios_Bandas_Buscador" >
+      <listitem open="0" type="814" id="234" label="db" />
+      <listitem open="0" type="814" id="232" label="meses" />
+      <listitem open="0" type="815" id="233" label="getMeses" />
+     </listitem>
      <listitem open="1" type="813" id="200" label="Servicios_Bandas_Dependencia" >
       <listitem open="0" type="815" id="220" label="Servicios_Bandas_Dependencia" />
       <listitem open="0" type="815" id="202" label="getAgentes" />
index fae972c01f03aa521106e5391d5e15b5dea73e52..7ba4e13aac5b94c71b492364305593e92550c4ab 100644 (file)
@@ -86,6 +86,12 @@ class Servicios_Bandas_Agente extends MECON_Agente {
      */
     var $_diasLaborablesTrabajados = 0;
 
+    /**
+     * @var    array $ASA
+     * @access private
+     */
+    var $_ASA = null;
+
     // ~X2C
 
 
@@ -154,18 +160,6 @@ class Servicios_Bandas_Agente extends MECON_Agente {
     }
     // -X2C
 
-    // +X2C Operation 212
-    /**
-     * Devuelve la cantidad de ausentes sin aviso del agente en el mes considerado
-     *
-     * @return int
-     * @access public
-     */
-    function getNASA() // ~X2C
-    {
-        return $this->_NASA;
-    }
-    // -X2C
 
     // +X2C Operation 213
     /**
@@ -179,7 +173,7 @@ class Servicios_Bandas_Agente extends MECON_Agente {
      */
     function Servicios_Bandas_Agente($agente = null, $fecha = null) // ~X2C
     {
-        Parent::MECON_Agente($agente);
+               Parent::MECON_Agente($agente);
         $dsn = 'mysql://intranet:intranet@bal747f/bandas';
         $db = DB::connect($dsn);
         if (DB::isError($db)) 
@@ -216,21 +210,48 @@ class Servicios_Bandas_Agente extends MECON_Agente {
             $this->_promedio = $aux['promedio'];
             $this->_NASA = $aux['NASN'];
         }
-        $sql = "SELECT  fecha, tiempo, ASN, inconsistencia
-                FROM    PrecalculoDiario
+        $sql = "SELECT  P.fecha, tiempo, ASN, inconsistencia, tipo
+                FROM    PrecalculoDiario AS P, Dia AS D
                 WHERE   agente = $agente AND
-                        MONTH(fecha) = $mes AND
-                        YEAR(fecha) = $anio
-                ORDER BY fecha";
+                                               P.fecha = D.fecha AND
+                        MONTH(P.fecha) = $mes AND
+                        YEAR(P.fecha) = $anio
+                ORDER BY P.fecha";
         $result = $db->query($sql);
         if (DB::isError($result))
             die ($result->getMessage("Query mal hecho"));
+               $this->_ASA = array();
         for ($fila = 1; $fila < ($result->numRows() + 1); $fila++) {
             $this->_horas[$fila] = $result->fetchRow(DB_FETCHMODE_ASSOC);
+                       ($this->_horas[$fila]['ASN']==1)?array_push($this->_ASA,$this->_horas[$fila]['fecha']):0;
         }
        
     }
     // -X2C
 
+    // +X2C Operation 229
+    /**
+     * Devuelve las fechas dentro del mes pedido en que el agente faltó y no se pasó ninguna novedad que lo justifique
+     *
+     * @return array
+     * @access public
+     */
+    function getASA() // ~X2C
+    {
+               return $this->_ASA;
+    }
+    // -X2C
+
+    // +X2C Operation 230
+    /**
+     * @return int
+     * @access public
+     */
+    function getNASA() // ~X2C
+    {
+        return $this->_NASA;
+    }
+    // -X2C
+
 } // -X2C Class :Servicios_Bandas_Agente
 ?>
\ No newline at end of file
diff --git a/sistema/local_lib/Servicios/Bandas/Buscador.php b/sistema/local_lib/Servicios/Bandas/Buscador.php
new file mode 100644 (file)
index 0000000..4b125fe
--- /dev/null
@@ -0,0 +1,77 @@
+<?php
+// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
+// +--------------------------------------------------------------------+
+// |                      Ministerio de Economía                        |
+// |                             Intranet                              |
+// +--------------------------------------------------------------------+
+// | This file is part of Intranet.                                    |
+// |                                                                    |
+// | Intranet is free software; you can redistribute it and/or modify  |
+// | it under the terms of the GNU General Public License as published  |
+// | by the Free Software Foundation; either version 2 of the License,  |
+// | or (at your option) any later version.                             |
+// |                                                                    |
+// | Intranet is distributed in the hope that it will be useful, but   |
+// | WITHOUT ANY WARRANTY; without even the implied warranty of         |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU   |
+// | General Public License for more details.                           |
+// |                                                                    |
+// | You should have received a copy of the GNU General Public License  |
+// | along with Hooks; if not, write to the Free Software Foundation,   |
+// | Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA      |
+// +--------------------------------------------------------------------+
+// | Creado: Thu Sep 11 20:06:16 2003                                 
+// | Autor:  Matias Sklar <msklar@mecon.gov.ar>
+// +--------------------------------------------------------------------+
+//
+// $Id$
+//
+
+
+
+
+// +X2C Class 231 :Servicios_Bandas_Buscador
+/**
+ * Clase que se encarga de realizar todas las búsquedas provenientes de formularios
+ *
+ * @access public
+ */
+class Servicios_Bandas_Buscador {
+    /**
+     * Los meses que hay cargados en la base de datos
+     *
+     * @var    array $meses
+     * @access private
+     */
+    var $_meses = NULL;
+
+    /**
+     * @var    int $db
+     * @access private
+     */
+    var $_db;
+
+    // ~X2C
+
+    // +X2C Operation 233
+    /**
+     * Devuelve todos los meses cargados en la base de datos
+     *
+     * @param  int $db El handler de conexión a la base de datos
+     *
+     * @return array()
+     * @access public
+     * @static
+     */
+    function getMeses($db) // ~X2C
+    {
+               $sql = "select distinct mes, anio from PrecalculoMensual order by anio desc, mes desc";
+               $result = $db->getAll($sql);
+               if(DB::isError($result))
+                       die($result->getMessage("query mal hecho"));
+               return $result;
+    }
+    // -X2C
+
+} // -X2C Class :Servicios_Bandas_Buscador
+?>