Example #1
0
 // agregar una encomienda a un pedido con prioridad por orden de llegada
 // true si se logra agregar (si esta aun abierto el pedido) y false de lo contrario)
 public boolean agregarEnc(int peso, int volumen, String dirDestino, String desc) {
   if (abierto) {
     Empresa.nuevaEncomienda();
     double prioridad = 1 / (Empresa.getNroEncomiendas());
     Encomienda e = new Encomienda(peso, volumen, prioridad, dirDestino, desc);
     encomiendas.add(e);
     this.peso += peso;
     this.volumen += volumen;
     this.costoEnvio += e.getCostoEnvio();
     setPrioridad();
     return true;
   } else {
     return false;
   }
 }
Example #2
0
 /** @param cliente the cliente to set */
 public void setCliente(String nombre) {
   for (Cliente c : Empresa.getClientes()) {
     if (c.getNombre() == nombre) {
       cliente = c;
     }
   }
 }
 @Override
 public int hashCode() {
   int result = 21;
   result = 31 * result + ((cargo == null) ? 0 : cargo.hashCode());
   result = 31 * result + ((dataInicio == null) ? 0 : dataInicio.hashCode());
   result = 31 * result + ((dataSaida == null) ? 0 : dataSaida.hashCode());
   result = 31 * result + ((empresa == null) ? 0 : empresa.hashCode());
   return result;
 }
Example #4
0
 // asignar encomienda con prioridadAgregada indicada por el cliente
 // true si se logra agregar (si esta aun abierto el pedido) y false de lo contrario)
 public boolean agregarEnc(
     int peso, int volumen, int prioridadAgregada, String dirDestino, String desc) {
   if (abierto) {
     double prioridadPorDefecto;
     if (Empresa.getNroEncomiendas() == 0) prioridadPorDefecto = 1;
     else prioridadPorDefecto = 1 / (Empresa.getNroEncomiendas());
     double prioridadAsignada = prioridadPorDefecto + prioridadAgregada;
     Encomienda e = new Encomienda(peso, volumen, prioridadAsignada, dirDestino, desc);
     e.agregarCostoPrioridad(prioridadAgregada);
     encomiendas.add(e);
     this.peso += peso;
     this.volumen += volumen;
     this.costoEnvio += e.getCostoEnvio();
     setPrioridad();
     return true;
   } else {
     return false;
   }
 }
Example #5
0
 // devuelve true si se pudo cerrar el pedido (si estan asignados los datos del cliente y hay al
 // menos una encomienda) y false de lo contrario
 public boolean cerrarPedido() {
   if (getCliente() != null && !encomiendas.isEmpty()) {
     abierto = false;
     tiempoCierre = new Date();
     Empresa.nuevoPedido();
     cliente.agregarPedido(this);
     return true;
   } else {
     return false;
   }
 }
Example #6
0
 public Pedido(Sucursal sucOrigen, Sucursal sucDestino, Cliente cliente, Tipo tipo) {
   super(0, 0, 0.0);
   this.idPedido = Empresa.getNroPedidos();
   this.sucOrigen = sucOrigen;
   this.sucDestino = sucDestino;
   this.costoEnvio = 0;
   this.volumen = 0;
   this.cliente = cliente;
   this.estado = Estado.En_origen;
   abierto = true;
   this.tipo = tipo;
 }
  /** @param args */
  public static void main(String[] args) {
    Secretaria secretaria = new Secretaria(123, 2000, 1850, "Amanda");
    Vendedor vendedor1 = new Vendedor(12341, 2010, 1350, (float) 0.05, "Gustavão"),
        vendedor2 = new Vendedor(12342, 2012, 1150, (float) 0.08, "Adolfo");
    Empresa empresa = new Empresa();
    Financeiro financeiro = Financeiro.getInstancia();
    empresa.contrata(secretaria);
    empresa.contrata(vendedor1);
    empresa.contrata(vendedor2);

    financeiro.registraVenda(new Venda(vendedor1, new Produto(90, (float) 12.5), 12, 2013));
    financeiro.registraVenda(new Venda(vendedor1, new Produto(12, (float) 7.15), 1, 2014));
    financeiro.registraVenda(new Venda(vendedor1, new Produto(102, (float) 70.10), 4, 2014));
    financeiro.registraVenda(new Venda(vendedor2, new Produto(109, (float) 42), 2, 2014));
    financeiro.registraVenda(new Venda(vendedor2, new Produto(109, (float) 42), 8, 2014));

    System.out.println(
        "A folha de pagamento deste mes corresponde a: "
            + empresa.calculaValorDaFolhaDePagamento()
            + " reais.");
  }
Example #8
0
 public void agregarDia(
     GregorianCalendar fecha, GregorianCalendar entrada, GregorianCalendar salida)
     throws Exception {
   this.getDias();
   Dia aux = this.buscarDia(fecha.get(Calendar.DAY_OF_MONTH));
   if (aux == null) {
     aux = new Dia(fecha, entrada, salida);
     this.dias.add(aux);
     Empresa.getPersistencia().update(this);
   } else {
     throw new Exception(
         "Ya existe el Día " + fecha.get(Calendar.DAY_OF_MONTH) + " en el mes  " + this.mes);
   }
 }
Example #9
0
  public void atualizarDados(
      JSONArray dados, int qtdDados, ProgressDialog progressDialog, Context context)
      throws JSONException {

    ItinerarioDBHelper itinerarioDBHelper = new ItinerarioDBHelper(context);

    for (int i = 0; i < qtdDados; i++) {

      progressDialog.setProgress(i + 1);

      JSONObject itinerarioObject = dados.getJSONObject(i);
      Itinerario umItinerario = new Itinerario();
      umItinerario.setId(itinerarioObject.getInt("id"));

      Bairro bairroPartida = new Bairro();
      bairroPartida.setId(itinerarioObject.getInt("partida"));
      umItinerario.setPartida(bairroPartida);

      Bairro bairroDestino = new Bairro();
      bairroDestino.setId(itinerarioObject.getInt("destino"));
      umItinerario.setDestino(bairroDestino);

      umItinerario.setValor(itinerarioObject.getDouble("valor"));
      umItinerario.setStatus(itinerarioObject.getInt("status"));

      Empresa empresaItinerario = new Empresa();
      empresaItinerario.setId(itinerarioObject.getInt("empresa"));
      umItinerario.setEmpresa(empresaItinerario);

      umItinerario.setObservacao(itinerarioObject.getString("observacao"));

      itinerarioDBHelper.salvarOuAtualizar(context, umItinerario);
    }

    itinerarioDBHelper.deletarInativos(context);
  }
  public void calculaRateioCustosSetores() {
    Empresa empresa = Util.getEmpresa();
    if (empresa != null && empresa.getSetores() != null && this.getProdutoSetores() != null) {
      for (ProdutoSetor produtoSetor : this.getProdutoSetores()) {
        Setor setor = produtoSetor.getSetor();
        if (setor == null) continue;

        float minutosTrabalhoMensal =
            (setor.getFuncionarios()
                * setor.getHorasSemana() // horas semanais
                * 4 // converte para valor mensal (4 semanas/mês)
                * 60 // converte para minutos
                * setor.getEficienciaProdutiva() // aplica o índice de produtividade/ociosidade
            );

        // Custo médio do salário
        float rateioCustoMinutoSetor =
            (setor.getSalarioMedio() * setor.getFuncionarios() / minutosTrabalhoMensal);
        if (empresa.getCustos() != null) {
          // Faz o rateio dos custos e soma junto
          for (Custo custo : empresa.getCustos()) {
            float valorCusto = custo.getValor();
            if (custo.isMultiplicaFuncionarios()) valorCusto *= setor.getFuncionarios();
            // Calcula o custo/minuto do setor (com ociosidade) (na planilha se chama
            // valor/minuto/homem com ociosidade)
            rateioCustoMinutoSetor += (valorCusto / minutosTrabalhoMensal);
          }
        }
        produtoSetor.setCustoMinuto(rateioCustoMinutoSetor);
      }
    } else {
      this.setProdutoSetores(
          null); // Se não tiver custos gerais nem setores, pode ignorar os setores do produto, pois
      // não sabemos qual é o custo por homem
    }
  }
  /**
   * Called by Struts for the execution of action A_RegistrarEmpresa.
   *
   * @param mapping The ActionMapping used to select this instance.
   * @param form The optional ActionForm bean for this request.
   * @param request The HTTP Request we are processing.
   * @param response The HTTP Response we are processing.
   * @return The Struts name of the following step.
   * @throws java.lang.Exception For untreated exceptions. These exceptios will normally be treated
   *     with the default exception action.
   */
  public ActionForward A_RegistrarEmpresa(
      ActionMapping mapping,
      ActionForm form,
      HttpServletRequest request,
      HttpServletResponse response)
      throws Exception {

    // Salidas
    final String[] SALIDAS = {
      "A_Pre_RegistrarEmpresa",
      "A_Pre_IniciarSesionEmpresa",
      "A_Pre_RegistrarEmpresa",
      "A_Pre_RegistrarEmpresa",
      "A_Pre_RegistrarEmpresa",
    };
    final int SALIDA_0 = 0;
    final int SALIDA_1 = 1;
    final int SALIDA_2 = 2;
    final int SALIDA_3 = 3;
    final int SALIDA_4 = 4;

    int salida = SALIDA_0;
    Session s = HibernateUtil.getCurrentSession();
    Transaction tr = s.beginTransaction();
    try {
      F_RegistrarEmpresa fF_RegistrarEmpresa = (F_RegistrarEmpresa) form;
      /* Aqui empieza mi codigo */
      String login = fF_RegistrarEmpresa.getLogin();
      String nombreEmpresa = fF_RegistrarEmpresa.getNombreEmpresa();
      String rif = fF_RegistrarEmpresa.getRif();
      String password1 = fF_RegistrarEmpresa.getPassword();
      String password2 = fF_RegistrarEmpresa.getConfirmarpassword();
      String telefono = fF_RegistrarEmpresa.getTelefono();
      String direccion = fF_RegistrarEmpresa.getDireccion();
      String ciudad = fF_RegistrarEmpresa.getCiudad();
      String pais = fF_RegistrarEmpresa.getPais();

      /*Evaluamos si el login es valido*/
      Empresa consulta =
          (Empresa)
              s.createQuery("from Empresa where loginempresa = :login")
                  .setString("login", login)
                  .uniqueResult();
      if (consulta == null) {
        /* Evaluamos si el rif es valido */
        consulta =
            (Empresa)
                s.createQuery("from Empresa where rif = :rif").setString("rif", rif).uniqueResult();
        if (consulta == null) {
          /* Confirmando si no existen campos vacios */
          if (nombreEmpresa != ""
              && telefono != ""
              && direccion != ""
              && ciudad != ""
              && pais != "") {
            /* Confirma si las contraseñas son iguales  */
            if (password1.equals(password2)) {
              /* carga los datos en el nuevo objeto empresa */
              Empresa empresa = new Empresa();
              empresa.setLoginempresa(login);
              empresa.setNombreEmpresa(nombreEmpresa);
              empresa.setRif(rif);
              empresa.setPassword(password1);
              empresa.setTelefono(telefono);
              empresa.setDireccion(direccion);
              empresa.setCiudad(ciudad);
              empresa.setPais(pais);
              /* almacenamos la empresa en la base de datos */
              s.save(empresa);
              salida = SALIDA_1;
              fF_RegistrarEmpresa.reset(mapping, request);
            } else {
              salida = SALIDA_2;
            }
          } else {
            salida = SALIDA_3;
          }
        } else {
          salida = SALIDA_4;
        }

      } else {
        salida = SALIDA_0;
      }

      /* Aqui termina mi codigo */
      tr.commit();

    } catch (Exception ex) {
      tr.rollback();
      throw ex;
    } finally {
      try {
        s.close();
      } catch (Exception ex2) {
      }
    }
    if (salida == 0) {
      request.setAttribute("msg", getResources(request).getMessage("A_RegistrarEmpresa.msg0"));
    }
    if (salida == 1) {
      request.setAttribute("msg", getResources(request).getMessage("A_RegistrarEmpresa.msg1"));
    }
    if (salida == 2) {
      request.setAttribute("msg", getResources(request).getMessage("A_RegistrarEmpresa.msg2"));
    }
    if (salida == 3) {
      request.setAttribute("msg", getResources(request).getMessage("A_RegistrarEmpresa.msg3"));
    }
    if (salida == 4) {
      request.setAttribute("msg", getResources(request).getMessage("A_RegistrarEmpresa.msg4"));
    }

    return mapping.findForward(SALIDAS[salida]);
  }
Example #12
0
 public Mes(int mes) {
   this();
   this.mes = mes;
   Empresa.getPersistencia().insert(this);
 }