<XMI.header>
<XMI.documentation>
<XMI.exporter>umbrello uml modeller http://uml.sf.net</XMI.exporter>
- <XMI.exporterVersion>1.1</XMI.exporterVersion>
+ <XMI.exporterVersion>1.1.5</XMI.exporterVersion>
+ <XMI.exporterEncoding>UnicodeUTF8</XMI.exporterEncoding>
</XMI.documentation>
- <XMI.model xmi.name="meconlib" href="/home/matias/sistemas/meconlib/tronco/doc/meconlib.xmi" />
+ <XMI.model xmi.name="meconlib" href="/home/martin/public_html/meconlib/doc/meconlib.xmi" />
<XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
</XMI.header>
<XMI.content>
<UML:UseCase stereotype="" package="" xmi.id="4" abstract="0" documentation="" name="Cambiar Credencial" static="0" scope="200" />
<UML:UseCase stereotype="" package="" xmi.id="6" abstract="0" documentation="" name="Procesar Periodo" static="0" scope="200" />
<UML:Class stereotype="" package="" xmi.id="39" abstract="0" documentation="
-" name="Hora" static="0" scope="200" />
+" name="MECON_Tiempo_Hora" static="0" scope="200" />
<UML:Actor stereotype="" package="" xmi.id="74" abstract="0" documentation="Estas son las personas que asignan las targetas." name="Control de Accesos" static="0" scope="200" />
<UML:UseCase stereotype="" package="" xmi.id="75" abstract="0" documentation="" name="Mostrar Banda" static="0" scope="200" />
<UML:Actor stereotype="" package="" xmi.id="76" abstract="0" documentation="Cualquiera logueado en Intranet" name="Agente" static="0" scope="200" />
<UML:Class stereotype="" package="" xmi.id="125" abstract="0" documentation="x2c:extern
" name="DB" static="0" scope="200" />
<UML:Class stereotype="" package="" xmi.id="131" abstract="0" documentation="
-" name="Agente" static="0" scope="200" >
+" name="MECON_Agente" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="133" type="string" abstract="0" documentation="" name="getDependencia" static="0" scope="200" />
<UML:Operation stereotype="" package="" xmi.id="134" type="void" abstract="0" documentation="" name="getTipo" static="0" scope="200" />
<UML:Operation stereotype="" package="" xmi.id="135" type="void" abstract="0" documentation="" name="Agente" static="0" scope="200" >
<UML:Attribute stereotype="" package="" xmi.id="137" value="" type="int" abstract="0" documentation="" name="datos" static="0" scope="200" />
</UML:Class>
<UML:Class stereotype="" package="" xmi.id="145" abstract="0" documentation="
-" name="Dependencia" static="0" scope="202" >
+" name="MECON_Dependencia" static="0" scope="202" >
<UML:Operation stereotype="" package="" xmi.id="147" type="void" abstract="0" documentation="" name="dependencia" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="int" abstract="0" documentation="" name="codep" static="0" scope="200" />
</UML:Operation>
<UML:Attribute stereotype="" package="" xmi.id="163" value="" type="int" abstract="0" documentation="" name="nombre" static="0" scope="200" />
<UML:Attribute stereotype="" package="" xmi.id="164" value="" type="int" abstract="0" documentation="" name="nombre_breve" static="0" scope="200" />
</UML:Class>
+ <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="3" roleb="4" 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="512" rolea="3" roleb="6" 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="512" rolea="74" roleb="4" 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="512" rolea="76" roleb="75" 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="512" rolea="77" roleb="75" 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="512" rolea="3" roleb="77" 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="512" rolea="79" roleb="75" 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="512" rolea="78" roleb="79" 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="512" rolea="4" roleb="6" 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="512" rolea="3" roleb="4" 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="512" rolea="74" roleb="4" 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="512" rolea="3" roleb="6" 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="512" rolea="76" roleb="75" 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" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="1" documentation="" type="402" showops="1" showpackage="0" name="class diagram" localid="30000" showstereotype="0" showscope="1" font="Helvetica,8,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+ <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="1" documentation="" type="402" showops="1" showpackage="0" name="class diagram" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
<widgets>
- <UML:ConceptWidget usesdiagramfillcolour="0" width="188" showattsigs="601" usesdiagramusefillcolour="0" x="279" linecolour="#ff0000" y="137" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="168" usefillcolor="1" showattributes="1" xmi.id="131" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="190" showattsigs="601" usesdiagramusefillcolour="0" x="27" linecolour="#ff0000" y="137" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="126" usefillcolor="1" showattributes="1" xmi.id="145" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="1" width="46" showattsigs="601" usesdiagramusefillcolour="1" x="284" linecolour="none" y="40" showopsigs="601" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" xmi.id="125" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="1" width="46" showattsigs="601" usesdiagramusefillcolour="1" x="149" linecolour="none" y="45" showopsigs="601" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" xmi.id="39" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ClassWidget usesdiagramfillcolour="0" width="171" showattsigs="601" usesdiagramusefillcolour="0" x="279" linecolour="#ff0000" y="137" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="168" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="131" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ClassWidget usesdiagramfillcolour="0" width="172" showattsigs="601" usesdiagramusefillcolour="0" x="27" linecolour="#ff0000" y="137" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="126" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="145" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ClassWidget usesdiagramfillcolour="1" width="35" showattsigs="601" usesdiagramusefillcolour="1" x="284" linecolour="none" y="40" showopsigs="601" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="125" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ClassWidget usesdiagramfillcolour="1" width="122" showattsigs="601" usesdiagramusefillcolour="1" x="149" linecolour="none" y="45" showopsigs="601" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="39" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations/>
</diagram>
- <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="2" documentation="" type="400" showops="1" showpackage="0" name="Bandas2" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+ <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="2" documentation="" type="400" showops="1" showpackage="0" name="Bandas2" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
<widgets>
- <UML:ActorWidget usesdiagramfillcolour="0" width="34" usesdiagramusefillcolour="0" x="74" linecolour="#ff0000" y="184" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:UseCaseWidget usesdiagramfillcolour="0" width="134" usesdiagramusefillcolour="0" x="343" linecolour="#ff0000" y="57" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="441" linecolour="none" y="190" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:ActorWidget usesdiagramfillcolour="1" width="133" usesdiagramusefillcolour="1" x="55" linecolour="none" y="35" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="508" linecolour="none" y="430" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="204" linecolour="none" y="480" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:UseCaseWidget usesdiagramfillcolour="1" width="105" usesdiagramusefillcolour="1" x="426" linecolour="none" y="280" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="77" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:ActorWidget usesdiagramfillcolour="1" width="50" usesdiagramusefillcolour="1" x="79" linecolour="none" y="308" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="78" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:UseCaseWidget usesdiagramfillcolour="0" width="124" usesdiagramusefillcolour="0" x="253" linecolour="#ff0000" y="371" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" xmi.id="79" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="0" width="34" usesdiagramusefillcolour="0" x="74" linecolour="#ff0000" y="184" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" isinstance="0" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:UseCaseWidget usesdiagramfillcolour="0" width="134" usesdiagramusefillcolour="0" x="343" linecolour="#ff0000" y="57" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" isinstance="0" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="441" linecolour="none" y="190" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="1" width="133" usesdiagramusefillcolour="1" x="55" linecolour="none" y="35" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="508" linecolour="none" y="430" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="204" linecolour="none" y="480" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:UseCaseWidget usesdiagramfillcolour="1" width="105" usesdiagramusefillcolour="1" x="426" linecolour="none" y="280" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="77" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="1" width="50" usesdiagramusefillcolour="1" x="79" linecolour="none" y="308" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="78" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:UseCaseWidget usesdiagramfillcolour="0" width="124" usesdiagramusefillcolour="0" x="253" linecolour="#ff0000" y="371" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" isinstance="0" xmi.id="79" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations>
- <UML:AssocWidget totalcounta="4" indexa="1" totalcountb="3" indexb="2" widgetbid="4" widgetaid="3" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="4" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="4" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="108" starty="199" />
<endpoint endx="343" endy="92" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="4" indexa="2" totalcountb="2" indexb="1" widgetbid="6" widgetaid="3" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="4" indexa="2" visibilityB="200" totalcountb="2" indexb="1" widgetbid="6" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="108" starty="215" />
<endpoint endx="441" endy="216" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="4" widgetaid="74" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="4" roleBdoc="" widgetaid="74" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="188" starty="66" />
<endpoint endx="343" endy="74" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="75" widgetaid="76" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="75" roleBdoc="" widgetaid="76" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="259" starty="511" />
<endpoint endx="508" endy="465" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="75" widgetaid="77" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="75" roleBdoc="" widgetaid="77" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="478" starty="333" />
<endpoint endx="560" endy="430" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="4" indexa="3" totalcountb="2" indexb="1" widgetbid="77" widgetaid="3" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="4" indexa="3" visibilityB="200" totalcountb="2" indexb="1" widgetbid="77" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="108" starty="231" />
<endpoint endx="426" endy="306" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="75" widgetaid="79" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="75" roleBdoc="" widgetaid="79" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="377" starty="397" />
<endpoint endx="508" endy="447" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="79" widgetaid="78" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="79" roleBdoc="" widgetaid="78" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="129" starty="339" />
<endpoint endx="253" endy="397" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="6" widgetaid="4" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="6" roleBdoc="" widgetaid="4" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="410" starty="110" />
<endpoint endx="501" endy="190" />
</UML:AssocWidget>
</associations>
</diagram>
- <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="115" documentation="" type="400" showops="1" showpackage="0" name="Cambiar Credencial" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+ <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="115" documentation="" type="400" showops="1" showpackage="0" name="Cambiar Credencial" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
<widgets>
- <UML:UseCaseWidget usesdiagramfillcolour="1" width="134" usesdiagramusefillcolour="1" x="385" linecolour="none" y="71" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="195" linecolour="none" y="32" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:ActorWidget usesdiagramfillcolour="0" width="133" usesdiagramusefillcolour="0" x="29" linecolour="#ff0000" y="92" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:NoteWidget usesdiagramfillcolour="1" width="463" usesdiagramusefillcolour="1" x="49" linecolour="none" y="203" usesdiagramlinecolour="1" fillcolour="none" height="70" usefillcolor="1" xmi.id="116" text="El Operador selecciona un usuario e indica el nuevo numero de credencial y la fecha desde la que la usa.
+ <UML:UseCaseWidget usesdiagramfillcolour="1" width="134" usesdiagramusefillcolour="1" x="385" linecolour="none" y="71" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="195" linecolour="none" y="32" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="0" width="133" usesdiagramusefillcolour="0" x="29" linecolour="#ff0000" y="92" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" isinstance="0" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:NoteWidget usesdiagramfillcolour="1" width="463" usesdiagramusefillcolour="1" x="49" linecolour="none" y="203" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="70" usefillcolor="1" isinstance="0" xmi.id="116" text="El Operador selecciona un usuario e indica el nuevo numero de credencial y la fecha desde la que la usa.
" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="4" widgetaid="3" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="4" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="229" starty="63" />
<endpoint endx="385" endy="88" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="4" widgetaid="74" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="4" roleBdoc="" widgetaid="74" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="162" starty="123" />
<endpoint endx="385" endy="106" />
</UML:AssocWidget>
</associations>
</diagram>
- <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="117" documentation="" type="400" showops="1" showpackage="0" name="Procesar Periodo" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+ <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="117" documentation="" type="400" showops="1" showpackage="0" name="Procesar Periodo" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
<widgets>
- <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="317" linecolour="none" y="117" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="85" linecolour="none" y="109" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:NoteWidget usesdiagramfillcolour="1" width="325" usesdiagramusefillcolour="1" x="109" linecolour="none" y="218" usesdiagramlinecolour="1" fillcolour="none" height="106" usefillcolor="1" xmi.id="118" text="Beti indica el periodo que se debe reprocesar y si es para solo un agente o para todos.
+ <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="317" linecolour="none" y="117" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="85" linecolour="none" y="109" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:NoteWidget usesdiagramfillcolour="1" width="325" usesdiagramusefillcolour="1" x="109" linecolour="none" y="218" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="106" usefillcolor="1" isinstance="0" xmi.id="118" text="Beti indica el periodo que se debe reprocesar y si es para solo un agente o para todos.
El proceso puede ser muy largo." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="6" widgetaid="3" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="6" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="119" starty="140" />
<endpoint endx="317" endy="143" />
</UML:AssocWidget>
</associations>
</diagram>
- <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="119" documentation="" type="400" showops="1" showpackage="0" name="Mostrar Banda" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+ <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="119" documentation="" type="400" showops="1" showpackage="0" name="Mostrar Banda" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
<widgets>
- <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="140" linecolour="none" y="92" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="372" linecolour="none" y="84" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
- <UML:NoteWidget usesdiagramfillcolour="1" width="342" usesdiagramusefillcolour="1" x="135" linecolour="none" y="195" usesdiagramlinecolour="1" fillcolour="none" height="66" usefillcolor="1" xmi.id="120" text="El agente indica el mes que quiere consultar y se le genera un reporte." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="140" linecolour="none" y="92" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="372" linecolour="none" y="84" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+ <UML:NoteWidget usesdiagramfillcolour="1" width="342" usesdiagramusefillcolour="1" x="135" linecolour="none" y="195" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="66" usefillcolor="1" isinstance="0" xmi.id="120" text="El agente indica el mes que quiere consultar y se le genera un reporte." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="75" widgetaid="76" documentation="" type="512" >
+ <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="75" roleBdoc="" widgetaid="76" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+ <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" 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="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" 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="0" linecolour="none" y="0" 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="0" linecolour="none" y="0" 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="195" starty="123" />
<endpoint endx="372" endy="110" />
<listview>
<listitem open="1" type="800" id="-1" label="Views" >
<listitem open="1" type="801" id="-1" label="Logical View" >
- <listitem open="1" type="813" id="131" label="Agente" >
- <listitem open="0" type="815" id="135" label="Agente" />
+ <listitem open="0" type="807" id="1" label="class diagram" />
+ <listitem open="1" type="813" id="125" label="DB" />
+ <listitem open="0" type="813" id="131" label="MECON_Agente" >
<listitem open="0" type="814" id="132" label="agente" />
- <listitem open="0" type="815" id="154" label="buscarAgente" />
<listitem open="0" type="814" id="137" label="datos" />
+ <listitem open="0" type="815" id="135" label="Agente" />
+ <listitem open="0" type="815" id="154" label="buscarAgente" />
<listitem open="0" type="815" id="149" label="getCuil" />
<listitem open="0" type="815" id="133" label="getDependencia" />
<listitem open="0" type="815" id="139" label="getHoraDesde" />
<listitem open="0" type="815" id="151" label="getOtrosDatos" />
<listitem open="0" type="815" id="134" label="getTipo" />
</listitem>
- <listitem open="1" type="813" id="125" label="DB" />
- <listitem open="0" type="813" id="145" label="Dependencia" >
+ <listitem open="0" type="813" id="145" label="MECON_Dependencia" >
<listitem open="0" type="814" id="146" label="codep" />
+ <listitem open="0" type="814" id="163" label="nombre" />
+ <listitem open="0" type="814" id="164" label="nombre_breve" />
<listitem open="0" type="815" id="147" label="dependencia" />
<listitem open="0" type="815" id="148" label="getAgentes" />
<listitem open="0" type="815" id="150" label="getDependencias" />
<listitem open="0" type="815" id="165" label="getNombre" />
<listitem open="0" type="815" id="166" label="getNombreBreve" />
- <listitem open="0" type="814" id="163" label="nombre" />
- <listitem open="0" type="814" id="164" label="nombre_breve" />
</listitem>
- <listitem open="1" type="813" id="39" label="Hora" />
- <listitem open="0" type="807" id="1" label="class diagram" />
+ <listitem open="1" type="813" id="39" label="MECON_Tiempo_Hora" />
</listitem>
- <listitem open="1" type="802" id="-1" label="Use Case View" >
- <listitem open="1" type="811" id="76" label="Agente" />
+ <listitem open="0" type="802" id="-1" label="Use Case View" >
<listitem open="1" type="805" id="2" label="Bandas2" />
- <listitem open="1" type="811" id="3" label="Beti" />
- <listitem open="1" type="812" id="4" label="Cambiar Credencial" />
<listitem open="1" type="805" id="115" label="Cambiar Credencial" />
+ <listitem open="1" type="805" id="119" label="Mostrar Banda" />
+ <listitem open="1" type="805" id="117" label="Procesar Periodo" />
+ <listitem open="1" type="811" id="76" label="Agente" />
+ <listitem open="1" type="811" id="3" label="Beti" />
<listitem open="1" type="811" id="74" label="Control de Accesos" />
+ <listitem open="1" type="811" id="78" label="RRHH" />
+ <listitem open="1" type="812" id="4" label="Cambiar Credencial" />
<listitem open="1" type="812" id="77" label="Imprimir Banda" />
- <listitem open="1" type="805" id="119" label="Mostrar Banda" />
<listitem open="1" type="812" id="75" label="Mostrar Banda" />
<listitem open="1" type="812" id="79" label="Mostrar Semaforo" />
- <listitem open="1" type="805" id="117" label="Procesar Periodo" />
<listitem open="1" type="812" id="6" label="Procesar Periodo" />
- <listitem open="1" type="811" id="78" label="RRHH" />
</listitem>
+ <listitem open="1" type="821" id="-1" label="Component View" />
+ <listitem open="0" type="823" id="-1" label="Diagrams" />
+ <listitem open="1" type="827" id="-1" label="Deployment View" />
</listitem>
</listview>
</XMI.content>
<option key="config-file" value="xmi2code.config"/>
<option key="config-file-set" value="false"/>
<option key="handler" value="umbrello"/>
- <option key="generator-path" value="../lib/MECON"/>
- <option key="use-package-as-dir" value="true"/>
+ <option key="generator-path" value="../lib/"/>
+ <option key="use-package-as-dir" value="false"/>
+ <option key="use-underscores-as-dirs" value="true"/>
<option key="indent" value=" "/>
<option key="files-case" value="preserve"/>
<option key="generator" value="php.pear"/>
meconlib
-------------------------------------------------------------------------------
This file is part of meconlib.
-
+
meconlib 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.
-
+
meconlib 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.
/**
* @access public
*/
-class Agente {
+class MECON_Agente {
/**
* @var int $agente
* @access public
* @access public
*/
function getDependencia() // ~X2C
- {
- return $this->datos['codep'];//TODO esta no es la columna correcta
- }
- // -X2C
+ {
+ return $this->datos['codep'];//TODO esta no es la columna correcta
+ }
+ // -X2C
// +X2C Operation 134
/**
* @access public
*/
function getTipo() // ~X2C
- {
- if(!in_array('tipo_agente',array_keys($this->datos)))
- return 'CON '.$this->datos['marco_legal'];
- else
- return $this->datos['tipo_agente'];
-
- }
- // -X2C
+ {
+ if(!in_array('tipo_agente',array_keys($this->datos)))
+ return 'CON '.$this->datos['marco_legal'];
+ else
+ return $this->datos['tipo_agente'];
+
+ }
+ // -X2C
// +X2C Operation 135
/**
* @return void
* @access public
*/
- function Agente($agente) // ~X2C
- {
- if(! is_null($agente))
- $this->buscarAgente($agente);
- }
- // -X2C
+ function MECON_Agente($agente) // ~X2C
+ {
+ if(! is_null($agente))
+ $this->buscarAgente($agente);
+ }
+ // -X2C
// +X2C Operation 138
/**
* @access public
*/
function getNombre() // ~X2C
- {
- return $this->datos['nombre'];
- }
- // -X2C
+ {
+ return $this->datos['nombre'];
+ }
+ // -X2C
// +X2C Operation 139
/**
* @access public
*/
function getHoraDesde() // ~X2C
- {
- if(is_null($this->datos['hentra']))
- return new Hora($this->datos['hora_desde']);
- else
- return new Hora($this->datos['hentra']);
- }
- // -X2C
+ {
+ if(is_null($this->datos['hentra']))
+ return new MECON_Tiempo_Hora($this->datos['hora_desde']);
+ else
+ return new MECON_Tiempo_Hora($this->datos['hentra']);
+ }
+ // -X2C
// +X2C Operation 140
/**
* @access public
*/
function getHoraHasta() // ~X2C
- {
- if(is_null($this->datos['hsale']))
- return new Hora($this->datos['hora_hasta']);
- else
- return new Hora($this->datos['hsale']);
- }
- // -X2C
+ {
+ if(is_null($this->datos['hsale']))
+ return new MECON_Tiempo_Hora($this->datos['hora_hasta']);
+ else
+ return new MECON_Tiempo_Hora($this->datos['hsale']);
+ }
+ // -X2C
// +X2C Operation 149
/**
function getOtrosDatos() // ~X2C
{
if(!is_null($this->datos['tipo_agente'])) {
- $aux['tipo_doc'] = $this->datos['tipodoc'];
- $aux['fecha_nac'] = $this->datos['fecha_nac'];
- $aux['edad'] = $this->datos['edad'];
- $aux['estado_civil'] = $this->datos['estado_civil'];
- $aux['domicilio'] = $this->datos['domicilio'];
- $aux['puerta'] = $this->datos['num_puerta'];
- $aux['piso'] = $this->datos['piso'];
- $aux['depto'] = $this->datos['depto'];
- $aux['localidad'] = $this->datos['localidad'];
- $aux['provincia'] = $this->datos['provincia'];
- $aux['calle1'] = $this->datos['calle1'];
- $aux['calle2'] = $this->datos['calle2'];
- $aux['cp'] = $this->datos['cp'];
- $aux['telefono'] = $this->datos['telefono'];
- $aux['cargo'] = $this->datos['cargo'];
- $aux['nivel'] = $this->datos['nivel'];
- $aux['grado'] = $this->datos['grado'];
- $aux['func_ejec'] = $this->datos['func_ejec'];
- $aux['obra_social'] = $this->datos['obra_social'];
- $aux['afiliado'] = $this->datos['afiliado'];
- $aux['conyuge'] = $this->datos['conyuge'];
- $aux['fecha_nac_conyuge'] = $this->datos['fecha_nac_cony'];
- $aux['tipo_doc_conyuge'] = $this->datos['tipodoc_cony'];
- $aux['nro_doc_cony'] = $this->datos['nrodoc_cony'];
+ $aux['tipo_doc'] = $this->datos['tipodoc'];
+ $aux['fecha_nac'] = $this->datos['fecha_nac'];
+ $aux['edad'] = $this->datos['edad'];
+ $aux['estado_civil'] = $this->datos['estado_civil'];
+ $aux['domicilio'] = $this->datos['domicilio'];
+ $aux['puerta'] = $this->datos['num_puerta'];
+ $aux['piso'] = $this->datos['piso'];
+ $aux['depto'] = $this->datos['depto'];
+ $aux['localidad'] = $this->datos['localidad'];
+ $aux['provincia'] = $this->datos['provincia'];
+ $aux['calle1'] = $this->datos['calle1'];
+ $aux['calle2'] = $this->datos['calle2'];
+ $aux['cp'] = $this->datos['cp'];
+ $aux['telefono'] = $this->datos['telefono'];
+ $aux['cargo'] = $this->datos['cargo'];
+ $aux['nivel'] = $this->datos['nivel'];
+ $aux['grado'] = $this->datos['grado'];
+ $aux['func_ejec'] = $this->datos['func_ejec'];
+ $aux['obra_social'] = $this->datos['obra_social'];
+ $aux['afiliado'] = $this->datos['afiliado'];
+ $aux['conyuge'] = $this->datos['conyuge'];
+ $aux['fecha_nac_conyuge'] = $this->datos['fecha_nac_cony'];
+ $aux['tipo_doc_conyuge'] = $this->datos['tipodoc_cony'];
+ $aux['nro_doc_cony'] = $this->datos['nrodoc_cony'];
return $aux;
- }else
- {
+ } else {
return false;
}
}
*/
function buscarAgente($agente) // ~X2C
{
- $this->agente = $agente;
- $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT *
- FROM web003
- WHERE nrodoc = $agente";
- $result = $db->query($sql);
- if(DB::isError($result))
- die($result->getMessage("query mal hecho"));
- if($result->numRows() > 0)
- {
- $this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC);
- }
- else
- {
- $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT *
- FROM Contratados
- WHERE nrodoc = $agente";
- $result = $db->query($sql);
- if(DB::isError($result))
+ $this->agente = $agente;
+ $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT *
+ FROM web003
+ WHERE nrodoc = $agente";
+ $result = $db->query($sql);
+ if(DB::isError($result))
die($result->getMessage("query mal hecho"));
- if($result->numRows() > 0)
- {
+ if($result->numRows() > 0) {
$this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC);
- }
- else
- return false;
- }
- return true;
+ } else {
+ $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT *
+ FROM Contratados
+ WHERE nrodoc = $agente";
+ $result = $db->query($sql);
+ if(DB::isError($result))
+ die($result->getMessage("query mal hecho"));
+ if($result->numRows() > 0) {
+ $this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC);
+ } else
+ return false;
+ }
+ return true;
}
// -X2C
} // -X2C Class :Agente
-?>
\ No newline at end of file
+?>
meconlib
-------------------------------------------------------------------------------
This file is part of meconlib.
-
+
meconlib 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.
-
+
meconlib 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.
/**
* @access protected
*/
-class Dependencia {
+class MECON_Dependencia {
/**
* @var int $codep
* @access public
* @return void
* @access public
*/
- function dependencia($codep) // ~X2C
- {
- $this->codep = $codep;
- $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT nombre, nombre_breve
- FROM Dependencias
- WHERE codigo_actual = '$this->codep' AND
- dependencia_esta_activa = 1";
- $result = $db->query($sql);
- if(DB::isError($result))
- die($result->getMessage("query mal hecho"));
- if($result->numRows() > 0)
+ function MECON_Dependencia($codep) // ~X2C
{
- $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
- $this->nombre = $row['nombre'];
- $this->nombre_breve = $row['nombre_breve'];
+ $this->codep = $codep;
+ $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT nombre, nombre_breve
+ FROM Dependencias
+ WHERE codigo_actual = '$this->codep' AND
+ dependencia_esta_activa = 1";
+ $result = $db->query($sql);
+ if(DB::isError($result))
+ die($result->getMessage("query mal hecho"));
+ if($result->numRows() > 0) {
+ $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
+ $this->nombre = $row['nombre'];
+ $this->nombre_breve = $row['nombre_breve'];
+ }
}
- }
- // -X2C
+ // -X2C
// +X2C Operation 148
/**
* @access public
*/
function getAgentes() // ~X2C
- {
-//Planta y becarios
- $agentes = array();
- $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT nrodoc
- FROM web003
- WHERE codep = '$this->codep'";
- $result = $db->query($sql);
- if(DB::isError($result))
- die($result->getMessage("query mal hecho"));
- while($row = $result->fetchRow())
- $agentes[] = new Agente($row[0]);
-//Contratados
- $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT nrodoc
- FROM Contratados
- WHERE codep = '$this->codep'";
- $result = $db->query($sql);
- if(DB::isError($result))
- die($result->getMessage("query mal hecho"));
- while($row = $result->fetchRow())
- $agentes[] = new Agente($row[0]);
- return $agentes;
- }
- // -X2C
+ {
+ //Planta y becarios
+ $agentes = array();
+ $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT nrodoc
+ FROM web003
+ WHERE codep = '$this->codep'";
+ $result = $db->query($sql);
+ if(DB::isError($result))
+ die($result->getMessage("query mal hecho"));
+ while($row = $result->fetchRow())
+ $agentes[] = new MECON_Agente($row[0]);
+ //Contratados
+ $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT nrodoc
+ FROM Contratados
+ WHERE codep = '$this->codep'";
+ $result = $db->query($sql);
+ if(DB::isError($result))
+ die($result->getMessage("query mal hecho"));
+ while($row = $result->fetchRow())
+ $agentes[] = new MECON_Agente($row[0]);
+ return $agentes;
+ }
+ // -X2C
// +X2C Operation 150
/**
*/
function getDependencias() // ~X2C
{
- $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT codigo_actual
- FROM Dependencias
- WHERE dependencia_esta_activa = 1";
- $result = $db->query($sql);
- if(DB::isError($result))
- die($result->getMessage("query mal hecho"));
- $dependencias = array();
- while($row = $result->fetchRow())
- $dependencias[] = $row[0];
- return $dependencias;
+ $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT codigo_actual
+ FROM Dependencias
+ WHERE dependencia_esta_activa = 1";
+ $result = $db->query($sql);
+ if(DB::isError($result))
+ die($result->getMessage("query mal hecho"));
+ $dependencias = array();
+ while($row = $result->fetchRow())
+ $dependencias[] = $row[0];
+ return $dependencias;
}
// -X2C
// -X2C
} // -X2C Class :Dependencia
-?>
\ No newline at end of file
+?>
* @author Bertrand Mansion <bmansion@mamasam.com>
* @access public
*/
-class HTML_QuickForm_caritas extends HTML_QuickForm_element
-{
+class MECON_HTML_QuickForm_caritas extends HTML_QuickForm_element {
// {{{ properties
/**
* @access private
*/
var $radios = array();
-
+
/**
* Default values of the SELECTs
* @var array
* @access private
*/
var $_selected = null;
-
+
var $_cols = 5;
*/
var $_flagFrozen = false;
-// +X2C Operation 533
+ // +X2C Operation 533
/**
* Lista archivos devolviendo un array apropiado para un SELECT.
*
* @access public
* @return void
*/
-
- function HTML_QuickForm_caritas($elementName=null, $elementLabel=null, $options=array(), $attributes=null)
- {
+
+ function MECON_HTML_QuickForm_caritas($elementName=null, $elementLabel=null, $options=array(), $attributes=null) {
HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes);
$this->_persistantFreeze = true;
$this->_type = 'caritas';
* @access private
* @return void
*/
- function _setDefaults($options)
- {
+ function _setDefaults($options) {
if (isset($options['cols'])) {
$this->setCols($options['cols']);
}
- /* if (isset($options['language'])) {
- $this->setLanguage($options['language']);
- }
- if (isset($options['minYear'])) {
- $this->setMinYear($options['minYear']);
- }
- if (isset($options['maxYear'])) {
- $this->setMaxYear($options['maxYear']);
- }
- */
+ /* if (isset($options['language'])) {
+ $this->setLanguage($options['language']);
+ }
+ if (isset($options['minYear'])) {
+ $this->setMinYear($options['minYear']);
+ }
+ if (isset($options['maxYear'])) {
+ $this->setMaxYear($options['maxYear']);
+ }
+ */
} // end func _setDefaults
// }}}
* @access public
* @return void
*/
- function setCols($cols)
- {
+ function setCols($cols) {
$this->_cols = $cols;
} //end func setCols
* @access public
* @return void
*/
- function setName($name)
- {
+ function setName($name) {
$this->name = $name;
} //end func setName
* @access public
* @return string
*/
- function setValue($value)
- {
+ function setValue($value) {
$this->_selected = $value;
} //end func getName
* @access public
* @return string
*/
- function setSelected($value)
- {
+ function setSelected($value) {
$this->_selected = $value;
} //end func getName
* @access public
* @return string
*/
- function getValue()
- {
+ function getValue() {
return $this->_selected;
} //end func getName
* @access public
* @return string
*/
- function getSelected()
- {
+ function getSelected() {
return $this->_selected;
} //end func getName
* @access public
* @return string
*/
- function getName()
- {
+ function getName() {
return $this->name;
} //end func getName
* @access public
* @return void
*/
- function _createRadios()
- {
+ function _createRadios() {
$this->caritas= array();
$elementName = $this->name;
$dir = MECON_DIR_FS_IMG.'/caritas';
$cant=5;
$i=1;
- foreach ($this->listarArchivos($dir,'','.gif') as $nombre)
- {
+ foreach ($this->listarArchivos($dir,'','.gif') as $nombre) {
$this->radios[$nombre] = &new HTML_QuickForm_radio($elementName, '', '', $nombre, $this->getAttributes());
}
} // end func _createSelects
* @access public
* @return string
* @throws
- */
- function toHtml()
- {
+ */
+ function toHtml() {
$this->_createRadios();
$strHtml = '';
$i = 1;
* @return void
* @throws
*/
- function onQuickFormEvent($event, $arg, &$caller)
- {
+ function onQuickFormEvent($event, $arg, &$caller) {
switch ($event) {
- case 'updateValue':
+ case 'updateValue':
// constant values override both default and submitted ones
// default values are overriden by submitted
$value = $this->_findValue($caller->_constantValues);
+ if (null === $value) {
+ $value = $this->_findValue($caller->_submitValues);
if (null === $value) {
- $value = $this->_findValue($caller->_submitValues);
- if (null === $value) {
- $value = $this->_findValue($caller->_defaultValues);
- }
- }
- if (null !== $value) {
- $this->setSelected($value);
+ $value = $this->_findValue($caller->_defaultValues);
}
- break;
- case 'setGroupValue':
- $this->setSelected($arg);
- break;
- default:
- parent::onQuickFormEvent($event, $arg, $caller);
+ }
+ if (null !== $value) {
+ $this->setSelected($value);
+ }
+ break;
+ case 'setGroupValue':
+ $this->setSelected($arg);
+ break;
+ default:
+ parent::onQuickFormEvent($event, $arg, $caller);
}
return true;
} // end func onQuickFormEvent
meconlib
-------------------------------------------------------------------------------
This file is part of meconlib.
-
+
meconlib 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.
-
+
meconlib 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.
* Modificado para que cumpla con los requisitos de mecon
*
*/
-class HTML_QuickForm_mdate extends HTML_QuickForm_date
-{
+class MECON_HTML_QuickForm_mdate extends HTML_QuickForm_date {
// {{{ constructor
/**
* @access public
* @return void
*/
- function HTML_QuickForm_mdate($elementName=null, $elementLabel=null, $options=array(), $attributes=null)
- {
+ function MECON_HTML_QuickForm_mdate($elementName=null, $elementLabel=null, $options=array(), $attributes=null) {
$this->_options = array ('es' => array (
- 'weekdays_short'=> array ('' => '--', 'Dom', 'Lun', 'Mar', 'Mié', 'Jue', 'Vie', 'Sáb'),
- 'weekdays_long' => array ('' => '--', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'),
- 'months_short' => array ('' => '--', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'),
- 'months_long' => array ('' => '--', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septimbre', 'Octubre', 'Noviembre', 'Diciembre')
- )
- );
-
+ 'weekdays_short'=> array ('' => '--', 'Dom', 'Lun', 'Mar', 'Mié', 'Jue', 'Vie', 'Sáb'),
+ 'weekdays_long' => array ('' => '--', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'),
+ 'months_short' => array ('' => '--', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'),
+ 'months_long' => array ('' => '--', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septimbre', 'Octubre', 'Noviembre', 'Diciembre')
+ )
+ );
+
parent::HTML_QuickForm_date($elementName, $elementLabel,
- array_merge(array('language'=>'es','format'=>'d F Y'), $options),
- $attributes);
+ array_merge(array('language'=>'es','format'=>'d F Y'), $options),
+ $attributes);
} //end constructor
// }}}
* @access public
* @return array An array of numeric options.
*/
- function _createNumericOptionList($start, $end)
- {
+ function _createNumericOptionList($start, $end) {
$options = array();
- //TODO
+ //TODO
//Verificar que esto este funcionando bien.
$options[''] = '--';
//Hasta aca
for ($i = $start; $i <= $end; $i++) {
$options[$i] = sprintf('%02d', $i);
}
-
+
return $options;
-
+
} // end func _createNumericOptionList
/**
* @access public
* @return object Date.
*/
- function &getValue()
- {
+ function &getValue() {
if ($this->_selectedDate['Y']) {
return new Date (sprintf("%04d-%02d-%02d 00:00:00",$this->_selectedDate['Y'],$this->_selectedDate['F'],$this->_selectedDate['d']));
- }
- else {
+ } else {
return null;
}
} // end func getValue
* @access public
* @return bool
*/
- function validate($valor, $nombre, $formato = '')
- {
+ function validate($valor, $nombre, $formato = '') {
// Si viene completamente lleno, se valida con el paquete Validate.
if ($valor['Y'] and $valor['d'] and $valor['F']) {
$str = sprintf('%4d-%02d-%02d', $valor['Y'], $valor['F'], $valor['d']);
return Validate::date($str, array('format' => '%Y-%m-%d'));
- // Si viene completamente vacio, es valido.
- } elseif (!$valor['Y'] and !$valor['d'] and !$valor['F']) {
+ // Si viene completamente vacio, es valido.
+ }
+ elseif (!$valor['Y'] and !$valor['d'] and !$valor['F']) {
return true;
- // Si viene a medio completar, es invalido.
- } else {
+ // Si viene a medio completar, es invalido.
+ }
+ else {
return false;
}
} // end func validate
function MECON_HTML_QuickFormSimple($formName='', $method='post', $action='', $target='_self', $attributes=null)
{
parent::HTML_QuickForm($formName, $method, $action, $target, $attributes);
- $this->registerElementType('mdate', 'MECON/HTML/QuickForm/mdate.php', 'HTML_QuickForm_mdate');
- $this->registerRule('fecha', 'function', 'validate', 'HTML_QuickForm_mdate');
+ $this->registerElementType('mdate', 'MECON/HTML/QuickForm/mdate.php', 'MECON_HTML_QuickForm_mdate');
+ $this->registerRule('fecha', 'function', 'validate', 'MECON_HTML_QuickForm_mdate');
+ $this->registerElementType('caritas', 'MECON/HTML/QuickForm/caritas.php', 'MECON_HTML_QuickForm_caritas');
$this->setRequiredNote('<font color="red">*</font> indica un campo obligatorio');
$this->setJsWarnings('Hay errores en el formulario:', 'Por favor corríjalos antes de continuar.');
}
* @version $Rev: 339 $
* @author Gonzalo Merayo <gmeray@mecon.gov.ar>
*/
-class Novedad {
- var $codigo = null;
-
- var $intervalo = null;
-
+class MECON_Novedad {
+ var $codigo = null;
+
+ var $intervalo = null;
+
}
*/
class NovedadesDia {
- var $novedades = array();
-
- var $agente = null;
-
- var $fecha = null;
-
- var $_db = null;
-
-
- function NovedadesDia($agente, $fecha)
- {
- #validar el tipo de $fecha
- $this->agente = $agente;
- $this->fecha = $fecha;
-
- #Ver de donde sacar esto bonito...
- $dsn = "mysql://intranet:intranet@localhost/novedades";
- $this->_db = DB::connect( $dsn , true);
- if(DB::isError($this->_db))
- die($this->_db->getMessage());
- #Carga las novedades del agente/fecha en la lista de novedades
- $this->BuscarLicencia();
- $this->BuscarNovedadesTemporales();
- $this->BuscarNovedadDiaria();
- }
-
- function deLicencia()
- {
- $licencias = array('Adp','Asa','Fal','Fran','FES/REL','Grem','Interrup','Sus','10a', ->'10a/d','10c','10d','10g','10h','10i','10j','10j/c','13Ia','13Ia/s','13Ia/u','13Ib',->'13Ic','13Id','13Id/a','13Id/h','13Ie','13Ig','13IIa','13IIb','13IIc','13IId', ->'13IIe','1363/97-2','14a','14b','14b1','14b2','14c','14d','14f','14g','14h','15a', ->'15b','15c','9');
- $anti_licencias = ('Interr/13a','Interr/9');
- foreach($this->novedades as $nov)
- {
- if(in_array($nov->codigo, $anti_licencias))
+ var $novedades = array();
+
+ var $agente = null;
+
+ var $fecha = null;
+
+ var $_db = null;
+
+
+ function NovedadesDia($agente, $fecha) {
+#validar el tipo de $fecha
+ $this->agente = $agente;
+ $this->fecha = $fecha;
+
+#Ver de donde sacar esto bonito...
+
+ $dsn = "mysql://intranet:intranet@localhost/novedades";
+ $this->_db = DB::connect( $dsn , true);
+ if(DB::isError($this->_db))
+ die($this->_db->getMessage());
+#Carga las novedades del agente/fecha en la lista de novedades
+
+ $this->BuscarLicencia();
+ $this->BuscarNovedadesTemporales();
+ $this->BuscarNovedadDiaria();
+ }
+
+ function deLicencia() {
+ $licencias = array('Adp','Asa','Fal','Fran','FES/REL','Grem','Interrup','Sus','10a', ->'10a/d','10c','10d','10g','10h','10i','10j','10j/c','13Ia','13Ia/s','13Ia/u','13Ib',->'13Ic','13Id','13Id/a','13Id/h','13Ie','13Ig','13IIa','13IIb','13IIc','13IId', ->'13IIe','1363/97-2','14a','14b','14b1','14b2','14c','14d','14f','14g','14h','15a', ->'15b','15c','9');
+ $anti_licencias = ('Interr/13a','Interr/9');
+ foreach($this->novedades as $nov) {
+ if(in_array($nov->codigo, $anti_licencias))
+ return false;
+ if(in_array($nov->codigo, $licencias))
+ return true;
+ }
+ return false;
+ }
+
+ function enComicion() {
+ foreach($this->novedades as $nov)
+ if($nov->codigo == 'com')
+ return true;
return false;
- if(in_array($nov->codigo, $licencias))
- return true;
}
- return false;
- }
-
- function enComicion()
- {
- foreach($this->novedades as $nov)
- if($nov->codigo == 'com')
- return true;
- return false;
- }
-
- function esFranco()
- {
- foreach($this->novedades as $nov)
- if($nov->codigo == 'Fran')
- return true;
- return false;
- }
-
- function debioVenir()
- {
- $ret = true;
- foreach($this->novedades as $novedad)
- {
- if(!($novedad->codigo == 'Adde'
- or $novedad->codigo == 'Aden'
- or $novedad->codigo == 'Ato'
- or $novedad->codigo == 'Atp'))
- $ret = false;
+
+ function esFranco() {
+ foreach($this->novedades as $nov)
+ if($nov->codigo == 'Fran')
+ return true;
+ return false;
}
- return $ret;
- }
-
- function getAtos()
- {
- $atos = array();
- foreach($this->novedades as $nov)
- if($nov->codigo == 'ato')
- array_push($atos, $nov);
- return $atos;
- }
-
- function BuscarLicencia()
- {
- $fecha = $this->fecha->format("%Y%m%d");
- $query = "SELECT codnov
- FROM web018
- WHERE docagente = $this->agente
- AND diadesde <= $fecha
- AND diahasta >= $fecha";
- $result = $this->_db->query($query);
- if(DB::isError($result))
- die($result->getMessage());
- while($r = $result->fetchRow())
- {
- $novedad = new Novedad();
- $novedad->codigo = $r[0];
- array_push($this->novedades, $novedad);
+
+ function debioVenir() {
+ $ret = true;
+ foreach($this->novedades as $novedad) {
+ if(!($novedad->codigo == 'Adde'
+ or $novedad->codigo == 'Aden'
+ or $novedad->codigo == 'Ato'
+ or $novedad->codigo == 'Atp'))
+ $ret = false;
+ }
+ return $ret;
}
- }
-
- function BuscarNovedadesTemporales()
- {
- $fecha = $this->fecha->getYear()."-".
- $this->fecha->getMonth()."-".
- $this->fecha->getDay();
- $query = "SELECT novedad, desde, hasta
- FROM parciales
- WHERE fecha = '$fecha'
- AND nrodoc = $this->agente";
- $result = $this->_db->query($query);
- if(DB::isError($result))
- die($result->getMessage());
- while($r = $result->fetchRow())
- {
- $novedad = new Novedad();
- $novedad->codigo = $r[0];
- $novedad->intervalo = new Intervalo(new Hora($r[1]), new Hora($r[2]));
- array_push($this->novedades, $novedad);
+
+ function getAtos() {
+ $atos = array();
+ foreach($this->novedades as $nov)
+ if($nov->codigo == 'ato')
+ array_push($atos, $nov);
+ return $atos;
+ }
+
+ function BuscarLicencia() {
+ $fecha = $this->fecha->format("%Y%m%d");
+ $query = "SELECT codnov
+ FROM web018
+ WHERE docagente = $this->agente
+ AND diadesde <= $fecha
+ AND diahasta >= $fecha";
+ $result = $this->_db->query($query);
+ if(DB::isError($result))
+ die($result->getMessage());
+ while($r = $result->fetchRow()) {
+ $novedad = new MECON_Novedad();
+ $novedad->codigo = $r[0];
+ array_push($this->novedades, $novedad);
+ }
+ }
+
+ function BuscarNovedadesTemporales() {
+ $fecha = $this->fecha->getYear()."-".
+ $this->fecha->getMonth()."-".
+ $this->fecha->getDay();
+ $query = "SELECT novedad, desde, hasta
+ FROM parciales
+ WHERE fecha = '$fecha'
+ AND nrodoc = $this->agente";
+ $result = $this->_db->query($query);
+ if(DB::isError($result))
+ die($result->getMessage());
+ while($r = $result->fetchRow()) {
+ $novedad = new MECON_Novedad();
+ $novedad->codigo = $r[0];
+ $novedad->intervalo = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora($r[1]), new MECON_Tiempo_Hora($r[2]));
+ array_push($this->novedades, $novedad);
+ }
+
}
- }
-
- function BuscarNovedadDiaria()
- {
- $mes = $this->fecha->getMonth();
- $dia = $this->fecha->getDay() + 0; //el +0 hace que tome al dia como numero
- //y no le agregue un 0 si es < que 10
- $ano = $this->fecha->getYear();
- $query = "SELECT novedad
- FROM web020
- WHERE anio = $ano
- AND mes = $mes
- AND nrodoc = $this->agente
- AND dia$dia = 1";
- $result = $this->_db->query($query);
- if($c = $result->fetchRow())
- {
- $codigo = $c[0];
- $novedad = new Novedad();
- $novedad->codigo = $codigo;
- array_push($this->novedades, $novedad);
+ function BuscarNovedadDiaria() {
+ $mes = $this->fecha->getMonth();
+ $dia = $this->fecha->getDay() + 0; //el +0 hace que tome al dia como numero
+ //y no le agregue un 0 si es < que 10
+ $ano = $this->fecha->getYear();
+ $query = "SELECT novedad
+ FROM web020
+ WHERE anio = $ano
+ AND mes = $mes
+ AND nrodoc = $this->agente
+ AND dia$dia = 1";
+ $result = $this->_db->query($query);
+ if($c = $result->fetchRow()) {
+ $codigo = $c[0];
+ $novedad = new MECON_Novedad();
+ $novedad->codigo = $codigo;
+ array_push($this->novedades, $novedad);
+ }
}
- }
}
meconlib
-------------------------------------------------------------------------------
This file is part of meconlib.
-
+
meconlib 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.
-
+
meconlib 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.
* @version $Rev$
* @author Gonzalo Merayo <gmeray@mecon.gov.ar>
*/
-class Banda {
+class MECON_Tiempo_Banda {
- var $intervalos;
+ var $intervalos;
- function Banda() {
- $this->intervalos = array();
- }
-
- function Cargar($agente, $fecha)
- {
- // FIXME - lo que es base de datos debe VOLAR!!!!!!!
- $dsn = "mysql://intranet:intranet@intranet-db/bandas";
- $db =& DB::connect($dsn , true);
- if(DB::isError($db))
- die($db->getMessage());
+ function MECON_Tiempo_Banda() {
+ $this->intervalos = array();
+ }
- $funcion = $db->getOne(
- "SELECT E.funcion
- FROM novedades.estado as E, novedades.web003 as S
- WHERE
- E.nrodoc = $agente AND
- S.nrodoc = $agente AND
- S.codep = E.dependencia"
- );
+ function Cargar($agente, $fecha) {
+ // FIXME - lo que es base de datos debe VOLAR!!!!!!!
+ $dsn = "mysql://intranet:intranet@intranet-db/bandas";
+ $db =& DB::connect($dsn , true);
+ if(DB::isError($db))
+ die($db->getMessage());
- $fecha = $fecha->format("%Y%m%d");
- $query = "SELECT A.tipo_acceso, A.hora
- FROM agentes G, accesos A
- WHERE G.cred = A.cred
- AND G.docu = $agente
- AND A.fecha = $fecha
- AND A.inconsistencia = 0
- ORDER BY A.hora";
- $result = $db->query($query);
- if(DB::isError($result))
- die($result->getMessage());
+ $funcion = $db->getOne(
+ "SELECT E.funcion
+ FROM novedades.estado as E, novedades.web003 as S
+ WHERE
+ E.nrodoc = $agente AND
+ S.nrodoc = $agente AND
+ S.codep = E.dependencia"
+ );
- if($funcion != 'SE')
- {//Version tough
- $int = null;
- while( $r = $result->fetchRow() )
- {
- if($r[0] == 'E') $int = new Intervalo(new Hora( $r[1] ), new Hora( $r[1] ));
- if($r[0] == 'S' && $int != null)
- {
- $int->setFin( new Hora( $r[1] ) );
- $this->agregarIntervalo( $int );
- $int = null;
- }
- }
- }
- else
- {
- if($result->numRows() > 0)
- {//Version Light o Serenos
- $int = new Intervalo(new Hora('00:00'), new Hora('00:00'));
- while( $r = $result->fetchRow() )
- {
- if($r[0] == 'E') $int = new Intervalo(new Hora( $r[1] ), new Hora( $r[1] ));
- if($r[0] == 'S' && $int != null)
- {
- $int->setFin( new Hora( $r[1] ) );
- $this->agregarIntervalo( $int );
+ $fecha = $fecha->format("%Y%m%d");
+ $query = "SELECT A.tipo_acceso, A.hora
+ FROM agentes G, accesos A
+ WHERE G.cred = A.cred
+ AND G.docu = $agente
+ AND A.fecha = $fecha
+ AND A.inconsistencia = 0
+ ORDER BY A.hora";
+ $result = $db->query($query);
+ if(DB::isError($result))
+ die($result->getMessage());
+
+ if($funcion != 'SE') {//Version tough
$int = null;
- }
- }
- if($int != null)
- {
- $int->setFin( new Hora('24:00') );
- $this->agregarIntervalo( $int );
- $int = null;
+ while( $r = $result->fetchRow() ) {
+ if($r[0] == 'E')
+ $int = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora( $r[1] ), new MECON_Tiempo_Hora( $r[1] ));
+ if($r[0] == 'S' && $int != null) {
+ $int->setFin( new MECON_Tiempo_Hora( $r[1] ) );
+ $this->agregarIntervalo( $int );
+ $int = null;
+ }
+ }
+ } else {
+ if($result->numRows() > 0) {//Version Light o Serenos
+ $int = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora('00:00'), new MECON_Tiempo_Hora('00:00'));
+ while( $r = $result->fetchRow() ) {
+ if($r[0] == 'E')
+ $int = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora( $r[1] ), new MECON_Tiempo_Hora( $r[1] ));
+ if($r[0] == 'S' && $int != null) {
+ $int->setFin( new MECON_Tiempo_Hora( $r[1] ) );
+ $this->agregarIntervalo( $int );
+ $int = null;
+ }
+ }
+ if($int != null) {
+ $int->setFin( new MECON_Tiempo_Hora('24:00') );
+ $this->agregarIntervalo( $int );
+ $int = null;
+ }
+ }
}
- }
}
- }
- /*
- *
- * Completa las salidas del medio del dia.
- *
- */
- function CompletarSalidas()
- {
- if(count($this->intervalos) > 0)
- {
- $p = reset($this->intervalos);
- $u = end($this->intervalos);
- $p->setFin($u->fin);
- $this->intervalos = array($p);
+ /*
+ *
+ * Completa las salidas del medio del dia.
+ *
+ */
+ function CompletarSalidas() {
+ if(count($this->intervalos) > 0) {
+ $p = reset($this->intervalos);
+ $u = end($this->intervalos);
+ $p->setFin($u->fin);
+ $this->intervalos = array($p);
+ }
}
- }
- /**
- * Agrega un intervalo a la banda
- * Chequeando superposiciones y en orden
- *
- * @param Intervalo $intervalo Intervalo a agregar.
- */
- function agregarIntervalo($intervalo)
- {
- if(! is_a($intervalo, "intervalo")) return false;
- if ($intervalo->invertido()) {
- $intervalo->_chequear();
- $this->agregarIntervalo(new Intervalo(new Hora('00:00'), new Hora ('24:00')));
- $this->sacarIntervalo($intervalo);
- return true;
- }
- $n_intervalos = array();
- $insertado = false;
- // recorre el vector de intervalos
- foreach( $this->intervalos as $i )
- {
- // si se superpone con alguno, fusionar con ese
- if($i->seSuperpone($intervalo))
- $intervalo->fusionar($i);
- else{
- if($i->inicio->greater($intervalo->inicio) && ! $insertado)
- {
- array_push($n_intervalos, $intervalo);
- $insertado = true;
+ /**
+ * Agrega un intervalo a la banda
+ * Chequeando superposiciones y en orden
+ *
+ * @param Intervalo $intervalo Intervalo a agregar.
+ */
+ function agregarIntervalo($intervalo) {
+ if(! is_a($intervalo, "mecon_tiempo_intervalo"))
+ return false;
+ if ($intervalo->invertido()) {
+ $intervalo->_chequear();
+ $this->agregarIntervalo(new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora('00:00'), new MECON_Tiempo_Hora ('24:00')));
+ $this->sacarIntervalo($intervalo);
+ return true;
+ }
+ $n_intervalos = array();
+ $insertado = false;
+ // recorre el vector de intervalos
+ foreach( $this->intervalos as $i ) {
+ // si se superpone con alguno, fusionar con ese
+ if($i->seSuperpone($intervalo))
+ $intervalo->fusionar($i);
+ else {
+ if($i->inicio->greater($intervalo->inicio) && ! $insertado) {
+ array_push($n_intervalos, $intervalo);
+ $insertado = true;
+ }
+ array_push($n_intervalos, $i);
+ }
}
- array_push($n_intervalos, $i);
- }
+ if(! $insertado )
+ array_push($n_intervalos,$intervalo);
+ $this->intervalos = $n_intervalos;
+ return true;
}
- if(! $insertado ) array_push($n_intervalos,$intervalo);
- $this->intervalos = $n_intervalos;
- return true;
- }
-
- /**
- * Saca
- *
- *
- */
- function sacarBanda($banda)
- {
- foreach($banda->intervalos as $i)
- $this->sacarIntervalo($i);
- }
- /**
- * Saca un intervalo de una banda horaria.
- *
- */
- function sacarIntervalo($intervalo)
- {
- if(! is_a($intervalo, "intervalo")) return false;
- // Si el intervalo está vacío, no hace nada.
- $dur = $intervalo->getDuracion();
- if ($dur->isEmpty()) {
- return true;
+ /**
+ * Saca
+ *
+ *
+ */
+ function sacarBanda($banda) {
+ foreach($banda->intervalos as $i)
+ $this->sacarIntervalo($i);
}
- $n_intervalos = array();
- // recorre el vector de intervalos
- foreach( $this->intervalos as $i )
- {
- if($i->seSuperpone($intervalo)) {
- $a = $i->cortar($intervalo);
- $d = $a->getDuracion();
- if($d->toSeconds() > 0) {
- $n_intervalos[] = $a;
+
+ /**
+ * Saca un intervalo de una banda horaria.
+ *
+ */
+ function sacarIntervalo($intervalo) {
+ if(! is_a($intervalo, "mecon_tiempo_intervalo"))
+ return false;
+ // Si el intervalo está vacío, no hace nada.
+ $dur = $intervalo->getDuracion();
+ if ($dur->isEmpty()) {
+ return true;
}
- $d = $i->getDuracion();
- if($d->toSeconds() > 0) {
- $n_intervalos[] = $i;
+ $n_intervalos = array();
+ // recorre el vector de intervalos
+ foreach( $this->intervalos as $i ) {
+ if($i->seSuperpone($intervalo)) {
+ $a = $i->cortar($intervalo);
+ $d = $a->getDuracion();
+ if($d->toSeconds() > 0) {
+ $n_intervalos[] = $a;
+ }
+ $d = $i->getDuracion();
+ if($d->toSeconds() > 0) {
+ $n_intervalos[] = $i;
+ }
+ } else {
+ $n_intervalos[] = $i;
+ }
}
- } else {
- $n_intervalos[] = $i;
- }
+ $this->intervalos = $n_intervalos;
+ return true;
+
}
- $this->intervalos = $n_intervalos;
- return true;
-
- }
- function sacarTiempo($t)
- {
- if(! is_a($t, "date_span")) return false;
- $n_int = array();
- while(count($this->intervalos) > 0)
- {
- $int = array_shift($this->intervalos);
- if($t->toSeconds() > 0){
- $d = $int->getDuracion();
- if($d->greater($t))
- {
- #con cortar alcanza
- $ini = new Hora();
- $ini->copy($int->inicio);
- $ini->add($t);
- /*TODO guardar este tiempo como rechazado*/$int->cortar($ini);
- $t->setFromSeconds(0);
- }else{
- #con cortar no alcanza y hay que sacar...
- $t->subtract($int->getDuracion());
- /*TODO guardar int como rechazado*/
+ function sacarTiempo($t) {
+ if(! is_a($t, "date_span"))
+ return false;
+ $n_int = array();
+ while(count($this->intervalos) > 0) {
+ $int = array_shift($this->intervalos);
+ if($t->toSeconds() > 0) {
+ $d = $int->getDuracion();
+ if($d->greater($t)) {
+#con cortar alcanza
+ $ini = new MECON_Tiempo_Hora();
+ $ini->copy($int->inicio);
+ $ini->add
+ ($t);
+ /*TODO guardar este tiempo como rechazado*/
+ $int->cortar($ini);
+ $t->setFromSeconds(0);
+ } else {
+#con cortar no alcanza y hay que sacar...
+ $t->subtract($int->getDuracion());
+ /*TODO guardar int como rechazado*/
+ }
+ }
+ $n_int[] = $int;
}
- }
- $n_int[] = $int;
+ $this->intervalos = $n_int;
}
- $this->intervalos = $n_int;
- }
- /*
- * Chequea si el intervalo pedido esta cubierto por la banda, si faltan
- * horas en la banta se retorna el tiempo que falta
- *
- * @return Date_Span el periodo faltante
- *
- */
- function chequearIntervalo($intervalo)
- {
- if(! is_a($intervalo, "intervalo")) return false;
- $t = new Hora();
- foreach ($this->intervalos as $i)
- $t->add($i->superponer($intervalo));
- $d = $intervalo->getDuracion();
- $d->subtract($t);
- return $d;
- }
+ /*
+ * Chequea si el intervalo pedido esta cubierto por la banda, si faltan
+ * horas en la banta se retorna el tiempo que falta
+ *
+ * @return Date_Span el periodo faltante
+ *
+ */
+ function chequearIntervalo($intervalo) {
+ if(! is_a($intervalo, "mecon_tiempo_intervalo"))
+ return false;
+ $t = new MECON_Tiempo_Hora();
+ foreach ($this->intervalos as $i)
+ $t->add
+ ($i->superponer($intervalo));
+ $d = $intervalo->getDuracion();
+ $d->subtract($t);
+ return $d;
+ }
- /*
- * Chequea si la banda(parametro) esta cubierto por la banda(this),
- * si faltan horas en la banda(this) para llegar a banda(parametro)
- * se retorna el tiempo que falta
- *
- * @return Date_Span el periodo faltante
- *
- */
- function chequearBanda($banda)
- {
- if(! is_a($banda, "banda")) return false;
- $f = new Hora();
- foreach ($banda->intervalos as $i)
- $f->add($this->chequearIntervalo($i));
- return $f;
- }
+ /*
+ * Chequea si la banda(parametro) esta cubierto por la banda(this),
+ * si faltan horas en la banda(this) para llegar a banda(parametro)
+ * se retorna el tiempo que falta
+ *
+ * @return Date_Span el periodo faltante
+ *
+ */
+ function chequearBanda($banda) {
+ if(! is_a($banda, "mecon_tiempo_banda"))
+ return false;
+ $f = new MECON_Tiempo_Hora();
+ foreach ($banda->intervalos as $i)
+ $f->add
+ ($this->chequearIntervalo($i));
+ return $f;
+ }
- /*
- * Devuelve una representacion del objeto como un string.
- *
- * @return string Representacion del objeto.
- *
- */
- function toString()
- {
- $s = '';
- $t = count($this->intervalos);
- for ($n = 0; $n < ($t - 1); $n++) {
- $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . '] | ';
- }
- $n = $t - 1;
- if ($n != -1) {
- $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . ']';
+ /*
+ * Devuelve una representacion del objeto como un string.
+ *
+ * @return string Representacion del objeto.
+ *
+ */
+ function toString() {
+ $s = '';
+ $t = count($this->intervalos);
+ for ($n = 0; $n < ($t - 1); $n++) {
+ $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . '] | ';
+ }
+ $n = $t - 1;
+ if ($n != -1) {
+ $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . ']';
+ }
+ return $s;
}
- return $s;
- }
- function getIntervalos() {
- return $this->intervalos;
- }
+ function getIntervalos() {
+ return $this->intervalos;
+ }
- /**
- * Corta una banda, devolviendo la banda previa al punto de corte.
- *
- * La banda actual queda con los intervalos posteriores al punto de corte
- * y se devuelve la banda con los intervalos anteriores.
- * El punto de corte puede ser tanto una hora como un intervalo.
- *
- * @param mixed $c Donde cortar.
- *
- * @return object Banda Bnada anterior al punto de corte.
- */
- function cortar($c)
- {
- if(!is_a($c, 'hora') and !is_a($c, 'intervalo')) return false;
- $b = $this->__clone();
- $b->intervalos = array();
- $intervalos = array();
- foreach ($this->intervalos as $i) {
- $a = $i->cortar($c);
- $da = $a->getDuracion();
- if (!$da->isEmpty()) {
- $b->agregarIntervalo($a);
- }
- $di = $i->getDuracion();
- if (!$di->isEmpty()) {
- $intervalos[] = $i;
- }
+ /**
+ * Corta una banda, devolviendo la banda previa al punto de corte.
+ *
+ * La banda actual queda con los intervalos posteriores al punto de corte
+ * y se devuelve la banda con los intervalos anteriores.
+ * El punto de corte puede ser tanto una hora como un intervalo.
+ *
+ * @param mixed $c Donde cortar.
+ *
+ * @return object Banda Bnada anterior al punto de corte.
+ */
+ function cortar($c) {
+ if(!is_a($c, 'mecon_tiempo_hora') and !is_a($c, 'mecon_tiempo_intervalo'))
+ return false;
+ $b = $this->__clone();
+ $b->intervalos = array();
+ $intervalos = array();
+ foreach ($this->intervalos as $i) {
+ $a = $i->cortar($c);
+ $da = $a->getDuracion();
+ if (!$da->isEmpty()) {
+ $b->agregarIntervalo($a);
+ }
+ $di = $i->getDuracion();
+ if (!$di->isEmpty()) {
+ $intervalos[] = $i;
+ }
+ }
+ $this->intervalos = $intervalos;
+ return $b;
}
- $this->intervalos = $intervalos;
- return $b;
- }
- /**
- * Devuelve el timpo total que contiene la banda.
- *
- * @return object Date_Span Tiempo total.
- */
- function total() {
- $t = new Date_Span;
- foreach ($this->intervalos as $i) {
- $t->add($i->getDuracion());
+ /**
+ * Devuelve el timpo total que contiene la banda.
+ *
+ * @return object Date_Span Tiempo total.
+ */
+ function total() {
+ $t = new Date_Span;
+ foreach ($this->intervalos as $i) {
+ $t->add
+ ($i->getDuracion());
+ }
+ return $t;
}
- return $t;
- }
- /**
- * Alias de Banda::total() para compatibilidad con Intervalo.
- *
- * @return object Date_Span Tiempo total.
- */
- function getDuracion() {
- return $this->total();
- }
+ /**
+ * Alias de Banda::total() para compatibilidad con Intervalo.
+ *
+ * @return object Date_Span Tiempo total.
+ */
+ function getDuracion() {
+ return $this->total();
+ }
- /**
- * Resetea la banda.
- */
- function flush() {
- $this->intervalos = array();
- }
+ /**
+ * Resetea la banda.
+ */
+ function flush() {
+ $this->intervalos = array();
+ }
- function copy($b) {
- $this->flush();
- foreach ($b->intervalos as $i) {
- $this->intervalos[] = $i->__clone();
+ function copy($b) {
+ $this->flush();
+ foreach ($b->intervalos as $i) {
+ $this->intervalos[] = $i->__clone();
+ }
}
- }
- function __clone() {
- $class = get_class($this);
- $b = new $class;
- $b->copy($this);
- return $b;
- }
+ function __clone() {
+ $class = get_class($this);
+ $b = new $class;
+ $b->copy($this);
+ return $b;
+ }
}
meconlib
-------------------------------------------------------------------------------
This file is part of meconlib.
-
+
meconlib 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.
-
+
meconlib 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.
* @version $Rev$
* @author Gonzalo Merayo <gmeray@mecon.gov.ar>
*/
-class Hora extends Date_Span {
+class MECON_Tiempo_Hora extends Date_Span {
- function set($str)
- {
- $str = strval($str);
- if (preg_match('/^\d+$/', $str)) {
- if ($str < 24) {
- $str = sprintf('0:%02d:00:00', $str );
- } elseif ($str == 24 or $str == 2400) {
- $str = '1:00:00:00';
- } elseif ($str < 2400) {
- switch (strlen($str)) {
+ function set
+ ($str) {
+ $str = strval($str);
+ if (preg_match('/^\d+$/', $str)) {
+ if ($str < 24) {
+ $str = sprintf('0:%02d:00:00', $str );
+ }
+ elseif ($str == 24 or $str == 2400) {
+ $str = '1:00:00:00';
+ }
+ elseif ($str < 2400) {
+ switch (strlen($str)) {
case 2:
- $str = sprintf('0:%02d:%02d:00', $str{0}, $str{1});
+ $str = sprintf('0:%02d:%02d:00', $str{0}, $str{1});
break;
case 3:
$str = sprintf('0:%02d:%02d:00', $str{0}, $str{1} . $str{2});
case 4:
$str = sprintf('0:%02d:%02d:00', $str{0} . $str{1}, $str{2} . $str{3});
break;
+ }
+ }
+ else {
+ return false;
}
- } else {
- return false;
}
- } elseif (preg_match('/^(\d{0,2})\D(\d{1,2})$/', $str, $m)) {
- if ($m[1] < 24 and $m[2] < 60) {
- $str = sprintf('0:%02d:%02d:00', $m[1], $m[2]);
- } elseif ($m[1] == 24 and $m[2] == 0) {
- $str = '1:00:00:00';
- } else {
- return false;
+ elseif (preg_match('/^(\d{0,2})\D(\d{1,2})$/', $str, $m)) {
+ if ($m[1] < 24 and $m[2] < 60) {
+ $str = sprintf('0:%02d:%02d:00', $m[1], $m[2]);
+ }
+ elseif ($m[1] == 24 and $m[2] == 0) {
+ $str = '1:00:00:00';
+ }
+ else {
+ return false;
+ }
+ }
+ elseif (preg_match('/^(\d{0,2})\D(\d{1,2})\D(\d{1,2})$/', $str, $m)) {
+ if ($m[1] < 24 and $m[2] < 60 and $m[3] < 60) {
+ $str = sprintf('0:%02d:%02d:%02d', $m[1], $m[2], $m[3]);
+ }
+ elseif ($m[1] == 24 and $m[2] == 0 and $m[3] == 0) {
+ $str = '1:00:00:00';
+ }
+ else {
+ return false;
+ }
}
- } elseif (preg_match('/^(\d{0,2})\D(\d{1,2})\D(\d{1,2})$/', $str, $m)) {
- if ($m[1] < 24 and $m[2] < 60 and $m[3] < 60) {
- $str = sprintf('0:%02d:%02d:%02d', $m[1], $m[2], $m[3]);
- } elseif ($m[1] == 24 and $m[2] == 0 and $m[3] == 0) {
- $str = '1:00:00:00';
- } else {
+ else {
return false;
}
- } else {
- return false;
+ $this->setFromString($str, "%D:%H:%M:%S");
+ return true;
}
- $this->setFromString($str, "%D:%H:%M:%S");
- return true;
- }
- function get()
- {
- return $this->format("%E:%M");
- }
+ function get
+ () {
+ return $this->format("%E:%M");
+ }
}
-?>
\ No newline at end of file
+?>
meconlib
-------------------------------------------------------------------------------
This file is part of meconlib.
-
+
meconlib 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.
-
+
meconlib 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.
* @version $Rev$
* @author Gonzalo Merayo <gmeray@mecon.gov.ar>
*/
-class Intervalo {
- /**
- *
- * Hora de inicio del intervalo
- *
- * @var object Hora
- */
- var $inicio;
-
- /**
- *
- * Hora de fin del intervalo
- *
- * @var object Hora
- */
- var $fin;
-
- /**
- * Constructor.
- *
- * @param Hora $inicio Hora de inicio (por defecto cero).
- * @param Hora $fin Hora de fin (por defecto cero).
- * @param bool $chequear Invierte el intervalo si la hora de
- * fin es anterior a la de inicio.
- *
- */
- function Intervalo( $inicio = null, $fin = null, $chequear = true ) {
- if (is_null($inicio)) $inicio = new Hora;
- if (is_null($fin)) $fin = new Hora;
- if(!is_a($inicio, 'hora')) return false;
- if(!is_a($fin, 'hora')) return false;
- $this->inicio = $inicio;
- $this->fin = $fin;
- if ($chequear) {
+class MECON_Tiempo_Intervalo {
+ /**
+ *
+ * Hora de inicio del intervalo
+ *
+ * @var object Hora
+ */
+ var $inicio;
+
+ /**
+ *
+ * Hora de fin del intervalo
+ *
+ * @var object Hora
+ */
+ var $fin;
+
+ /**
+ * Constructor.
+ *
+ * @param Hora $inicio Hora de inicio (por defecto cero).
+ * @param Hora $fin Hora de fin (por defecto cero).
+ * @param bool $chequear Invierte el intervalo si la hora de
+ * fin es anterior a la de inicio.
+ *
+ */
+ function MECON_Tiempo_Intervalo( $inicio = null, $fin = null, $chequear = true ) {
+ if (is_null($inicio))
+ $inicio = new MECON_Tiempo_Hora;
+ if (is_null($fin))
+ $fin = new MECON_Tiempo_Hora;
+ if(!is_a($inicio, 'mecon_tiempo_hora'))
+ return false;
+ if(!is_a($fin, 'mecon_tiempo_hora'))
+ return false;
+ $this->inicio = $inicio;
+ $this->fin = $fin;
+ if ($chequear) {
+ $this->_chequear();
+ }
+ }
+
+ function _chequear() {
+ $a = $this->fin;
+ if($a->lower($this->inicio)) {
+ $tmp = $this->fin;
+ $this->fin = $this->inicio;
+ $this->inicio = $tmp;
+ }
+ }
+
+ function invertido() {
+ return $this->fin->lower($this->inicio);
+ }
+
+ function setInicio( $inicio ) {
+ if(! is_a($inicio, 'mecon_tiempo_hora'))
+ return false;
+ $this->inicio = $inicio;
$this->_chequear();
}
- }
-
- function _chequear()
- {
- $a = $this->fin;
- if($a->lower($this->inicio))
- {
- $tmp = $this->fin;
- $this->fin = $this->inicio;
- $this->inicio = $tmp;
+
+ /**
+ *
+ * setFin
+ *
+ * @param var $fin
+ *
+ */
+ function setFin( $fin ) {
+ if(! is_a($fin,'mecon_tiempo_hora'))
+ return false;
+ $this->fin = $fin;
+ $this->_chequear();
}
- }
-
- function invertido()
- {
- return $this->fin->lower($this->inicio);
- }
-
- function setInicio( $inicio ) {
- if(! is_a($inicio, "hora")) return false;
- $this->inicio = $inicio;
- $this->_chequear();
- }
-
- /**
- *
- * setFin
- *
- * @param var $fin
- *
- */
- function setFin( $fin )
- {
- if(! is_a($fin, "hora")) return false;
- $this->fin = $fin;
- $this->_chequear();
- }
-
- function getDuracion()
- {
- $c = new Hora;
- $c->copy($this->fin);
- $c->subtract($this->inicio);
- return $c;
- }
-
- // XXX - Amplié el método para comparar con varios intervalos a la vez,
- // si el argumento no es un array, anda de todas maneras.
- function seSuperpone( $intervalos )
- {
- if (!is_array($intervalos)) $intervalos = array($intervalos);
- foreach ($intervalos as $i) {
- if (is_a($i, "intervalo")) {
- if ($i->fin->greaterEqual($this->inicio) &&
- $this->fin->greaterEqual($i->inicio)) return true;
- if ($this->fin->greaterEqual($i->inicio) &&
- $i->fin->greaterEqual($this->inicio)) return true;
- }
+
+ function getDuracion() {
+ $c = new MECON_Tiempo_Hora;
+ $c->copy($this->fin);
+ $c->subtract($this->inicio);
+ return $c;
}
- return false;
- }
-
- function fusionar( $f )
- {
- if(! is_a($f, "intervalo")) return false;
- if(! $this->seSuperpone( $f )) return false;
- if($f->fin->greater($this->fin))
- $this->fin = $f->fin;
- if($f->inicio->lower($this->inicio))
- $this->inicio = $f->inicio;
- return true;
- }
-
- function superponer( $i )
- {
- if(! is_a($i, "intervalo")) return false;
- $inicio = $this->inicio;
- $fin = $this->fin;
- if($this->inicio->lower($i->inicio)) $inicio = $i->inicio;
- if($this->fin->greater( $i->fin )) $fin = $i->fin;
- $fin->subtract($inicio);
- return $fin;
- }
-
- /**
- * Corta un intervalo, devolviendo el intervalo previo al punto de corte.
- * El intervalo actual queda con el intervalo posterior al punto de corte.
- * El punto de corte puede ser tanto una hora como un intervalo.
- *
- * @param mixed $c Donde cortar.
- *
- * @return object Intervalo Intervalo anterior al punto de corte.
- */
- function cortar($c)
- {
- if(is_a($c, 'hora')) {
- return $this->cortarHora($c);
- } elseif (is_a($c, 'intervalo')) {
- return $this->cortarIntervalo($c);
- } else {
+
+ // XXX - Amplié el método para comparar con varios intervalos a la vez,
+ // si el argumento no es un array, anda de todas maneras.
+ function seSuperpone( $intervalos ) {
+ if (!is_array($intervalos))
+ $intervalos = array($intervalos);
+ foreach ($intervalos as $i) {
+ if (is_a($i, 'mecon_tiempo_intervalo')) {
+ if ($i->fin->greaterEqual($this->inicio) &&
+ $this->fin->greaterEqual($i->inicio))
+ return true;
+ if ($this->fin->greaterEqual($i->inicio) &&
+ $i->fin->greaterEqual($this->inicio))
+ return true;
+ }
+ }
return false;
}
- }
-
- /**
- * Corta un intervalo, devolviendo el intervalo previo a la hora de corte.
- * El intervalo actual queda con el intervalo posterior a la hora de corte.
- *
- * @param mixed $h Donde cortar.
- *
- * @return object Intervalo Intervalo anterior a la hora de corte.
- */
- function cortarHora($h)
- {
- if (!is_a($h, 'hora')) return false;
- $class = get_class($this);
- $r = new $class;
- $r->copy($this);
- if($this->inicio->greater($h)) {
- $r->setFin($r->inicio);
- return $r;
+
+ function fusionar( $f ) {
+ if(! is_a($f, 'mecon_tiempo_intervalo'))
+ return false;
+ if(! $this->seSuperpone( $f ))
+ return false;
+ if($f->fin->greater($this->fin))
+ $this->fin = $f->fin;
+ if($f->inicio->lower($this->inicio))
+ $this->inicio = $f->inicio;
+ return true;
+ }
+
+ function superponer( $i ) {
+ if(! is_a($i, 'mecon_tiempo_intervalo'))
+ return false;
+ $inicio = $this->inicio;
+ $fin = $this->fin;
+ if($this->inicio->lower($i->inicio))
+ $inicio = $i->inicio;
+ if($this->fin->greater( $i->fin ))
+ $fin = $i->fin;
+ $fin->subtract($inicio);
+ return $fin;
+ }
+
+ /**
+ * Corta un intervalo, devolviendo el intervalo previo al punto de corte.
+ * El intervalo actual queda con el intervalo posterior al punto de corte.
+ * El punto de corte puede ser tanto una hora como un intervalo.
+ *
+ * @param mixed $c Donde cortar.
+ *
+ * @return object Intervalo Intervalo anterior al punto de corte.
+ */
+ function cortar($c) {
+ if(is_a($c, 'mecon_tiempo_hora')) {
+ return $this->cortarHora($c);
+ }
+ elseif (is_a($c, 'mecon_tiempo_intervalo')) {
+ return $this->cortarIntervalo($c);
+ }
+ else {
+ return false;
+ }
+ }
+
+ /**
+ * Corta un intervalo, devolviendo el intervalo previo a la hora de corte.
+ * El intervalo actual queda con el intervalo posterior a la hora de corte.
+ *
+ * @param mixed $h Donde cortar.
+ *
+ * @return object Intervalo Intervalo anterior a la hora de corte.
+ */
+ function cortarHora($h) {
+ if (!is_a($h, 'mecon_tiempo_hora'))
+ return false;
+ $class = get_class($this);
+ $r = new $class;
+ $r->copy($this);
+ if($this->inicio->greater($h)) {
+ $r->setFin($r->inicio);
+ return $r;
+ }
+ if($this->fin->lowerEqual($h)) {
+ $this->setInicio($this->fin);
+ } else {
+ $this->setInicio($h);
+ $r->setFin($h);
+ }
+ return $r;
}
- if($this->fin->lowerEqual($h)) {
- $this->setInicio($this->fin);
- }else{
- $this->setInicio($h);
- $r->setFin($h);
+
+ /**
+ * Corta un intervalo, devolviendo el intervalo previo al intervalo de corte.
+ * El intervalo actual queda con el intervalo posterior al intervalo de corte.
+ *
+ * @param mixed $i Donde cortar.
+ *
+ * @return object Intervalo Intervalo anterior al intervalo de corte.
+ */
+ function cortarIntervalo($i) {
+ if (!is_a($i, 'mecon_tiempo_intervalo'))
+ return false;
+ $ant = $this->cortarHora($i->inicio);
+ $this->cortarHora($i->fin);
+ return $ant;
}
- return $r;
- }
-
- /**
- * Corta un intervalo, devolviendo el intervalo previo al intervalo de corte.
- * El intervalo actual queda con el intervalo posterior al intervalo de corte.
- *
- * @param mixed $i Donde cortar.
- *
- * @return object Intervalo Intervalo anterior al intervalo de corte.
- */
- function cortarIntervalo($i)
- {
- if (!is_a($i, 'intervalo')) return false;
- $ant = $this->cortarHora($i->inicio);
- $this->cortarHora($i->fin);
- return $ant;
- }
function toString() {
return 'inicio: ' . $this->inicio->format() . ' | fin: ' . $this->fin->format();
}
function copy($int = null) {
- if (!(is_a($int, 'intervalo'))) return false;
- $this->inicio = new Hora($int->inicio->get());
- $this->fin = new Hora($int->fin->get());
- return true;
+ if (!(is_a($int, 'mecon_tiempo_intervalo')))
+ return false;
+ $this->inicio = new MECON_Tiempo_Hora($int->inicio->get
+ ());
+ $this->fin = new MECON_Tiempo_Hora($int->fin->get
+ ());
+ return true;
}
- function __clone() {
- $class = get_class($this);
- $i = new $class;
- $i->inicio = $this->inicio->__clone();
- $i->fin = $this->fin->__clone();
- return $i;
- }
+ function __clone() {
+ $class = get_class($this);
+ $i = new $class;
+ $i->inicio = $this->inicio->__clone();
+ $i->fin = $this->fin->__clone();
+ return $i;
+ }
}
meconlib
-------------------------------------------------------------------------------
This file is part of meconlib.
-
+
meconlib 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.
-
+
meconlib 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.
*/
var $dni;
- /**
- * @var string $login
- * @access public
- */
+ /**
+ * @var string $login
+ * @access public
+ */
var $login;
- /**
- * @var string $nombre
- * @access public
- */
+ /**
+ * @var string $nombre
+ * @access public
+ */
var $nombre;
- /**
- * @var string $dsn
- * @access public
- */
+ /**
+ * @var string $dsn
+ * @access public
+ */
var $dsn = 'mysql://intranet:intranet@bal747f.mecon.ar/usuario';
// ~X2C
-// +X2C Operation 138
+ // +X2C Operation 138
/**
* @param string $dni
*
* @access public
*/
function ArmarconDNI($dni) // ~X2C
- {
+ {
$db = DB::connect($this->dsn);
- if (DB::isError($db))
- {
+ if (DB::isError($db)) {
die ($db->getMessage("No pudo conectarse a la base"));
- }
- else
- {
+ } else {
$sql = "SELECT login,nombre
- from Usuario
- where dni = $dni";
+ from Usuario
+ where dni = $dni";
$result = $db->query($sql);
- if ($result->NumRows()>0){
+ if ($result->NumRows()>0) {
$row = $result->fetchRow();
$login = $row[0];
$nombre = $row[1];
$this->login=$login;
$this->nombre=$nombre;
$this->dni=$dni;
- }
- else {
+ } else {
die ('El dni '.$dni.' no existe, debe loguearse al
- menos una vez a la intranet.');
+ menos una vez a la intranet.');
}
}
- }
- // -X2C
+ }
+ // -X2C
-// +X2C Operation 136
+ // +X2C Operation 136
/**
* @param string $login
*
* @access public
*/
function ArmarconLOGIN($login) // ~X2C
- {
+ {
$db = DB::connect($this->dsn);
- if (DB::isError($db))
- {
+ if (DB::isError($db)) {
die ($db->getMessage("No pudo conectarse a la base"));
- }
- else
- {
-
+ } else {
+
//$login = ereg_replace ("@", "\\\@", $login);
$sql = "SELECT dni,nombre
- from Usuario
- where login = '$login'";
+ from Usuario
+ where login = '$login'";
$result = $db->query($sql);
-
- if ($result->NumRows()>0){
+
+ if ($result->NumRows()>0) {
$row = $result->fetchRow();
$dni = $row[0];
$nombre = $row[1];
$this->dni=$dni;
$this->nombre=$nombre;
$this->login=$login;
- }
- else {
+ } else {
die ('El usuario '.$login.' no existe, debe loguearse al
- menos una vez a la intranet.');
+ menos una vez a la intranet.');
}
}
- }
- // -X2C
+ }
+ // -X2C
- // +X2C Operation 135
+ // +X2C Operation 135
/**
* @param int $dni
*
* @access public
*/
function MECON_Usuario($dni = NULL, $login = NULL) // ~X2C
- {
- if(! is_null($dni))
- {
+ {
+ if(! is_null($dni)) {
$this->ArmarconDNI($dni);
$this->buscarUsuarioDNI($dni);
- }
- if(! is_null($login))
- {
+ }
+ if(! is_null($login)) {
$this->ArmarconLOGIN($login);
$this->buscarUsuarioDNI($this->getDni());
- }
-
- }
- // -X2C
+ }
+
+ }
+ // -X2C
- // +X2C Operation 136
+ // +X2C Operation 136
/**
* @param int $uario
*
* @access public
*/
function Insertar_Usuario($dni = NULL, $login = NULL, $nombre = NULL) // ~X2C
- {
- if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre)))
- {
- $db = DB::connect($this->dsn);
- if (DB::isError($db))
- {
- die ($db->getMessage("No pudo conectarse a la base"));
- }
- else
- {
- $sql = "REPLACE INTO Usuario (login,dni,nombre)
- values ('$login',$dni,'$nombre')";
- $result = $db->query($sql);
+ {
+ if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre))) {
+ $db = DB::connect($this->dsn);
+ if (DB::isError($db)) {
+ die ($db->getMessage("No pudo conectarse a la base"));
+ } else {
+ $sql = "REPLACE INTO Usuario (login,dni,nombre)
+ values ('$login',$dni,'$nombre')";
+ $result = $db->query($sql);
+ }
}
- }
- }
- // -X2C
+ }
+ // -X2C
-// +X2C Operation 136
+ // +X2C Operation 136
/**
* @return int
* @access public
*/
function getDni() // ~X2C
- {
- return $this->dni;
- }
- // -X2C
+ {
+ return $this->dni;
+ }
+ // -X2C
// +X2C Operation 137
/**
* @access public
*/
function getLogin() // ~X2C
- {
- return $this->login;
- }
- // -X2C
+ {
+ return $this->login;
+ }
+ // -X2C
// +X2C Operation 138
/**
* @access public
*/
function getNombre() // ~X2C
- {
- return $this->nombre;
- }
- // -X2C
+ {
+ return $this->nombre;
+ }
+ // -X2C
+
-
- // +X2C Operation 154
+ // +X2C Operation 154
/**
* @param int $dni
*
*/
function buscarUsuarioDNI($dni) // ~X2C
{
- $this->dni = $dni;
- $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT nombre
- FROM web003
- WHERE nrodoc = $dni";
- $result = $db->query($sql);
- if(DB::isError($result)) {
- die($result->getMessage("query mal hecho"));
- }
- if($result->numRows() > 0)
- {
- $row = $result->fetchRow();
- $nombre = $row[0];
- $this->nombre = $nombre;
- }
- else
- {
- $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
- $db = DB::connect($dsn);
- if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
- $sql = "SELECT nombre
- FROM Contratados
- WHERE nrodoc = $dni";
- $result = $db->query($sql);
- if(DB::isError($result))
+ $this->dni = $dni;
+ $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT nombre
+ FROM web003
+ WHERE nrodoc = $dni";
+ $result = $db->query($sql);
+ if(DB::isError($result)) {
die($result->getMessage("query mal hecho"));
- if($result->numRows() > 0)
- {
- $row = $result->fetchRow();
+ }
+ if($result->numRows() > 0) {
+ $row = $result->fetchRow();
$nombre = $row[0];
- $this->nombre = $nombre;
- }
- else
- return false;
- }
- return true;
+ $this->nombre = $nombre;
+ } else {
+ $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
+ $db = DB::connect($dsn);
+ if (DB::isError($db))
+ die ($db->getMessage("No pudo conectarse a la base"));
+ $sql = "SELECT nombre
+ FROM Contratados
+ WHERE nrodoc = $dni";
+ $result = $db->query($sql);
+ if(DB::isError($result))
+ die($result->getMessage("query mal hecho"));
+ if($result->numRows() > 0) {
+ $row = $result->fetchRow();
+ $nombre = $row[0];
+ $this->nombre = $nombre;
+ } else
+ return false;
+ }
+ return true;
}
// -X2C
function verificarLogin($login = null) {
if ($login) {
$db = DB::connect($this->dsn);
- if (PEAR::isError($db)) {
+ if (PEAR::isError($db)) {
return $db;
}
$sql = "SELECT count(*) as cuenta FROM Usuario WHERE login = '$login'";
$result = $db->query($sql);
- if (PEAR::isError($result)) {
+ if (PEAR::isError($result)) {
return $result;
}
- $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
+ $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
if ($row['cuenta'] != 0) {
return true;
}
}
} // -X2C Class :MECON_Usuario
-?>
\ No newline at end of file
+?>
$tmp = ini_get('include_path');
ini_set('include_path', "/home/mmarrese/public_html/HTML/php:$tmp");
require_once 'Tabla.php';
- $TABLA2 = new Tabla ('width="500" align="right"');
+ $TABLA2 = new MECON_HTML_Tabla ('width="500" align="right"');
$row = array ('R0C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
$TABLA2->addRow($row,'cabecera');
$row = array ('R1C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
print $tohtml."<BR><BR><BR>";
echo 'DEPRECATED <BR>';
- $TABLA = new Tabla ('width="500" align="right"');
+ $TABLA = new MECON_HTML_Tabla ('width="500" align="right"');
$row = array ('R0C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
$TABLA->agregarFilaCabecera($row);
$row = array ('R1C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
print $tohtml."<BR><BR><BR>";
///////////////////////////////////////////////////////////////////////////////////////////
echo 'PRECATED<BR>';
- $TABLA2 = new Tabla ('width="500" align="right"');
+ $TABLA2 = new MECON_HTML_Tabla ('width="500" align="right"');
$row = array ('R0C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
$TABLA2->addRow($row,'cabecera colspan=10');
$row = array ('R1C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
'cache' => 'false',
'simple' => 'true'));
- $abm_form = new Tabla();
+ $abm_form = new MECON_HTML_Tabla();
$row = array ('sarasa','sarasa2');
$abm_form->agregarFilaCabecera($row);