lunes, 21 de enero de 2013

Boleta de pago


Se desea elaborar la boleta de pago de los trabajadores de una fábrica.
Para ello se cuenta conlos siguientes datos de entrada:
Apellidos y nombres del trabajador
Sueldo básico
Horas extras trabajadas

Además, se sabe que los trabajadores laboran en dos turnos: diurno y nocturno.

Y que la tarifa por las horas extras diurnas es de 10 soles y por las horas extras nocturnas es de 15 soles.

Los descuentos a aplicar son sobre el sueldo básico y se obtienen de la siguiente manera:
Renta = (SueldoBasico/100)*10
Fonavi = (SueldoBasico/100)*7
AFP = (SueldoBasico/100)*3
Finalmente el sueldo neto del trabajador se calcula mediante las siguientes expresiones:
Ingresos = SueldoBasico + HorasExtras * PagoHoraExtra
Egresos = Renta + Fonavi + AFP
SueldoNeto = Ingresos - Egresos
El diseño de la interfaz deberá ser similar a la figura mostrada

index.jsp

<%@ page language='java' contentType='text/html;charset=iso-8859-1'%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Boleta de Pago</title>
        <style>
            html,body { height:100%; margin:0; padding:0; font-family: sans-serif;}
            .azul{font-family: sans-serif;color:#3B5998;font-size: 12px; }
            .blanco{font-family: sans-serif;color:#FFFFFF;font-size: 12px; }
            .blancog{font-family: sans-serif;color:#FFFFFF;font-size: 20px;font-weight:bold; }
            .texto{font-family: sans-serif;font-size: 12px; border-style:solid; border-width:1px;border-color:#C8C8C8; }
        </style>
    </head>
    <body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr height="60">
        <td bgcolor="#3B5A98">
            <font class="blancog"><b>Sertex System S.A.C.</b></font><br>
            <font class="blanco">Empresa lider del mercado</font>
        </td>
        <td height="*" bgcolor="#3B5A98"> </td>
        <td bgcolor="#3B5A98" align="right">
            <font class="blancog"><b>Boleta de Pago</b></font><br>
            <font class="blanco">Sistema de personal</font>
        </td>
    </tr>
    <tr><td align="center" colspan="3"><br>
       
        <form action="proceso.jsp" method="post">
        <table width="500"  bgcolor="#EAEAEA">
        <tr>
            <td colspan="2"><font class="azul"><b>BOLETA DE PAGO</b></font><hr></td>
        </tr>
        <tr>
            <td align="right"><font class="azul">Nombres del trabajador : </font></td>
            <td><input type="text" name="trabajador" class="texto" style="width:300px;"></td>
        </tr>
        <tr>
            <td align="right"><font class="azul">Sueldo basico S/. : </font></td>
            <td><input type="text" name="sueldo" class="texto" value="800.0" style="width:80px;"></td>
        </tr>
        <tr>
            <td align="right"><font class="azul">Horas extras : </font></td>
            <td><input type="text" name="horas" class="texto" value="12" style="width:80px;"></td>
        </tr>
        <tr>
            <td align="right"><font class="azul">Turno : </font></td>
            <td>
                  <select name="turno" class="texto">
                  <option value="diurno">Diurno
                  <option value="nocturno" selected>Nocturno
                  </select>
            </td>
        </tr>
        <tr>
            <td colspan="2"><font class="azul"><b>Descuentos</b></font><hr></td>
        </tr>
        <tr>
            <td align="right"><font class="azul">Renta : </font></td>
            <td><input type="checkbox" name="renta" value="si"></td>
        </tr>
        <tr>
            <td align="right"><font class="azul">Fonavi : </font></td>
            <td><input type="checkbox" name="fonavi" value="si"></td>
        </tr>
        <tr>
            <td align="right"><font class="azul">AFP : </font></td>
            <td><input type="checkbox" name="afp" value="si"></td>
        </tr>
        <tr>
            <td colspan="2" align="center"><hr><input type="submit" value="Calcular"></td>
        </tr>
    </table>
    </form>
       
    </td></tr>
</table>
</body>
</html>


proceso.jsp
<%@ page language='java' contentType='text/html;charset=iso-8859-1'%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Boleta de Pago</title>
        <style>
            html,body { height:100%; margin:0; padding:0; font-family: sans-serif;}
            .negro{font-family: sans-serif;font-size: 12px; }
            .negrog{font-family: sans-serif;font-size: 20px;font-weight:bold; }
        </style>   
    </head>
    <body>

<%
   String trabajador=(String)request.getParameter("trabajador");
   String ssueldo=(String)request.getParameter("sueldo");
   float  sueldo= Float.parseFloat(ssueldo);
   String shoras=(String)request.getParameter("horas");
   float  horas= Float.parseFloat(shoras);
   String turno=(String)request.getParameter("turno");
   String srenta=(String)request.getParameter("renta");
   String sfonavi=(String)request.getParameter("fonavi");
   String safp=(String)request.getParameter("afp");
  
   float extras = 0;
   if (turno.equals("nocturno")){
       extras=15;
   } else {
       extras=10;
   }
   float renta = 0;
   if(srenta!=null){
   if(srenta.equals("si")){
        renta = (sueldo/100)*10;
    }}
   float fonavi = 0;
   if(sfonavi!=null){
   if(sfonavi.equals("si")){
        fonavi = (sueldo/100)*7;
    }}
   float afp = 0;
   if(safp!=null){
   if(safp.equals("si")){
        afp = (sueldo/100)*3;
    }}
  
   float ingresos = sueldo + horas * extras;
   float egresos = renta + fonavi + afp;
   float neto = ingresos - egresos;
  
 %>

 <table width="700" border="0" cellspacing="0" cellpadding="0">
    <tr><td colspan="4" align="center">
        <font class="negrog">BOLETA DE PAGO - Empleados</font><br>
        <font class="negro"><b>10-05-2012  -  31-05-2012</b></font>
    </td></tr>
    <tr><td colspan="4" bgcolor="#000000" height="2"></td></tr>
    <tr>
        <td width="150"><font class="negro"><b>Empleado :</b></font></td>
        <td width="200"><font class="negro"><%= trabajador.toUpperCase() %></font></td>
        <td width="150"><font class="negro"><b>Sueldo basico S/.</b></font></td>
        <td width="200"><font class="negro"><%= sueldo %></font></td>
    </tr>
    <tr>
        <td width="150"><font class="negro"><b>Horas extras :</b></font></td>
        <td width="200"><font class="negro"><%= horas %></font></td>
        <td width="150"></td>
        <td width="200"></td>
    </tr>
    <tr>
        <td width="150"><font class="negro"><b>pago hora extra S/.</b></font></td>
        <td width="200"><font class="negro"><%= extras %></font></td>
        <td width="150"><font class="negro"><b>Turno :</b></font></td>
        <td width="200"><font class="negro"><%= turno.toUpperCase() %></font></td>
    </tr>
    <tr><td colspan="4" bgcolor="#000000" height="1"></td></tr>
    <tr><td colspan="4"><font class="negro"><b>Descuentos :</b></font></td></tr>
    <tr><td colspan="4" bgcolor="#000000" height="1"></td></tr>
    <tr>
        <td width="150"><font class="negro"><b>Renta :</b></font></td>
        <td width="200"><font class="negro"><%= renta %></font></td>
        <td width="150"><font class="negro"><b>Fonavi :</b></font></td>
        <td width="200"><font class="negro"><%= fonavi %></font></td>
    </tr>
    <tr>
        <td width="150"><font class="negro"><b>AFP :</b></font></td>
        <td width="200"><font class="negro"><%= afp %></font></td>
        <td width="150"></td>
        <td width="200"></td>
    </tr>

    <tr><td colspan="4" bgcolor="#000000" height="1"></td></tr>
    <tr><td colspan="4"><font class="negro"><b>Sueldo neto S/. <%= neto %></b></font></td></tr>
    <tr><td colspan="4" bgcolor="#000000" height="1"></td></tr>
 </table> 


</body>
</html>



2 comentarios:

  1. y si lo quiero imprimir ?? como seria el código a usar .

    ResponderEliminar
  2. y si lo quiero imprimir ?? como seria el código a usar .

    ResponderEliminar