Example usage for java.math BigDecimal ONE

List of usage examples for java.math BigDecimal ONE

Introduction

In this page you can find the example usage for java.math BigDecimal ONE.

Prototype

BigDecimal ONE

To view the source code for java.math BigDecimal ONE.

Click Source Link

Document

The value 1, with a scale of 0.

Usage

From source file:org.openvpms.esci.adapter.map.order.OrderMapperImpl.java

/**
 * Returns a <tt>ItemType</tt> for a supplier, order item, and product.
 *
 * @param bean         the order item//w ww  .ja v a2 s  . c  o m
 * @param supplier     the supplier
 * @param product      the product
 * @param packageUnits the package size unit code. May be <tt>null</tt>
 * @return an <tt>ItemType</tt> corresponding to the supplier and product
 */
private ItemType getItem(ActBean bean, Party supplier, Product product, String packageUnits) {
    ItemType result = new ItemType();
    ItemIdentificationType buyersId = getItemIdentification(product.getId());
    String reorderCode = bean.getString("reorderCode");
    String reorderDescription = bean.getString("reorderDescription");
    if (!StringUtils.isEmpty(reorderCode)) {
        ItemIdentificationType sellersId = getItemIdentification(reorderCode);
        result.setSellersItemIdentification(sellersId);
    } else {
        throw new ESCIAdapterException(ESCIAdapterMessages.noSupplierOrderCode(supplier, product));
    }
    if (!StringUtils.isEmpty(reorderDescription)) {
        DescriptionType description = UBLHelper.initText(new DescriptionType(), reorderDescription);
        result.getDescription().add(description);
    }
    NameType name = UBLHelper.initName(new NameType(), product.getName());

    result.setBuyersItemIdentification(buyersId);
    result.setName(name);

    BigDecimal packageSize = bean.getBigDecimal("packageSize");
    if (packageSize != null && packageUnits != null) {
        PackQuantityType quantity = UBLHelper.initQuantity(new PackQuantityType(), BigDecimal.ONE,
                packageUnits);
        PackSizeNumericType size = UBLHelper.createPackSizeNumeric(packageSize);
        result.setPackQuantity(quantity);
        result.setPackSizeNumeric(size);
    }

    return result;
}

From source file:com.mitre.fulfilmentprocess.test.PaymentIntegrationTest.java

protected OrderModel placeTestOrder(final boolean valid) throws InvalidCartException, CalculationException {
    final CartModel cart = cartService.getSessionCart();
    final UserModel user = userService.getCurrentUser();
    cartService.addNewEntry(cart, productService.getProductForCode("testProduct1"), 1, null);
    cartService.addNewEntry(cart, productService.getProductForCode("testProduct2"), 2, null);
    cartService.addNewEntry(cart, productService.getProductForCode("testProduct3"), 3, null);

    final AddressModel deliveryAddress = new AddressModel();
    deliveryAddress.setOwner(user);//from   w w  w. j ava  2s. c o  m
    deliveryAddress.setFirstname("Der");
    deliveryAddress.setLastname("Buck");
    deliveryAddress.setTown("Muenchen");
    deliveryAddress.setCountry(commonI18NService.getCountry("DE"));
    modelService.save(deliveryAddress);

    final DebitPaymentInfoModel paymentInfo = new DebitPaymentInfoModel();
    paymentInfo.setOwner(cart);
    paymentInfo.setBank("MeineBank");
    paymentInfo.setUser(user);
    paymentInfo.setAccountNumber("34434");
    paymentInfo.setBankIDNumber("1111112");
    paymentInfo.setBaOwner("Ich");
    paymentInfo.setCode("testPaymentInfo1");
    modelService.save(paymentInfo);

    cart.setDeliveryMode(deliveryService.getDeliveryModeForCode("free"));
    cart.setDeliveryAddress(deliveryAddress);
    cart.setPaymentInfo(paymentInfo);

    final CardInfo card = new CardInfo();
    card.setCardType(CreditCardType.VISA);
    card.setCardNumber("4111111111111111");
    card.setExpirationMonth(Integer.valueOf(12));
    if (valid) {
        card.setExpirationYear(Integer.valueOf(Calendar.getInstance().get(Calendar.YEAR) + 2));
    } else {
        card.setExpirationYear(Integer.valueOf(Calendar.getInstance().get(Calendar.YEAR) - 2));
    }

    final PaymentTransactionModel paymentTransaction = paymentService.authorize("code4" + codeNo++,
            BigDecimal.ONE, Currency.getInstance("EUR"), deliveryAddress, deliveryAddress, card)
            .getPaymentTransaction();

    cart.setPaymentTransactions(Collections.singletonList(paymentTransaction));
    modelService.save(cart);
    calculationService.calculate(cart);

    final CommerceCheckoutParameter parameter = new CommerceCheckoutParameter();
    parameter.setEnableHooks(true);
    parameter.setCart(cart);
    parameter.setSalesApplication(SalesApplication.WEB);

    return commerceCheckoutService.placeOrder(parameter).getOrder();
}

From source file:org.kuali.kfs.module.bc.document.service.impl.SalarySettingRuleHelperServiceImpl.java

/**
 * @see org.kuali.kfs.module.bc.document.service.SalarySettingRuleHelperService#hasValidRequestedFteQuantity(org.kuali.kfs.module.bc.businessobject.PendingBudgetConstructionAppointmentFunding,
 *      org.kuali.core.util.MessageMap)//from   www .j a  v a2s  .co  m
 */
public boolean hasValidRequestedFteQuantity(PendingBudgetConstructionAppointmentFunding appointmentFunding,
        MessageMap errorMap) {
    BigDecimal requestedFteQuantity = appointmentFunding.getAppointmentRequestedFteQuantity();
    if (requestedFteQuantity == null || requestedFteQuantity.compareTo(BigDecimal.ZERO) < 0
            || requestedFteQuantity.compareTo(BigDecimal.ONE) > 0) {
        errorMap.putError(BCPropertyConstants.APPOINTMENT_REQUESTED_FTE_QUANTITY,
                BCKeyConstants.ERROR_FTE_QUANTITY_NOT_IN_RANGE, BigDecimal.ZERO.toPlainString(),
                BigDecimal.ONE.toPlainString());
        return false;
    }

    return true;
}

From source file:com.heliumv.api.inventory.InventoryApi.java

/**
 * Mengen &uuml;berpr&uuml;fen</b>
 * <p>Die Gesamtsumme der identity.amount muss ident mit der angegebenen Menge sein<p>
 * <p>Es d&uuml;rfen nur positive Mengen in den identities vorhanden sein.</p>
 * <p>Seriennummernbehaftete Artikel d&uuml;rfen nur die Menge 1.0 haben</p>
 * @param amount//from  w w  w.  ja v  a2s. c om
 * @param identities
 * @return
 */
private boolean verifyAmounts(ArtikelDto itemDto, BigDecimal amount, List<IdentityAmountEntry> identities) {
    if (!itemDto.istArtikelSnrOderchargentragend())
        return true;
    if (identities == null || identities.size() == 0) {
        respondBadRequestValueMissing("identities");
        return false;
    }

    BigDecimal amountIdentities = BigDecimal.ZERO;
    for (IdentityAmountEntry entry : identities) {
        if (entry.getAmount() == null) {
            respondBadRequestValueMissing("amount");
            appendBadRequestData(entry.getIdentity(), "amount missing");
            return false;
        }

        if (entry.getAmount().signum() != 1) {
            respondBadRequest("amount", "positive");
            appendBadRequestData(entry.getIdentity(), entry.getAmount().toPlainString());
            return false;
        }

        if (itemDto.isSeriennrtragend()) {
            if (BigDecimal.ONE.compareTo(entry.getAmount()) != 0) {
                respondBadRequest("snr-amount", "1 (is: " + entry.getAmount().toPlainString() + ")");
                return false;
            }
        }

        amountIdentities = amountIdentities.add(entry.getAmount());
    }

    if (amountIdentities.compareTo(amount.abs()) != 0) {
        respondBadRequest("totalamount != identityamount", amount.toPlainString());
        appendBadRequestData("identityamount", amountIdentities.toPlainString());
        return false;
    }

    return true;
}

From source file:org.openvpms.archetype.rules.supplier.OrderGeneratorTestCase.java

/**
 * Tests creation of an order based on the amount of stock on hand.
 *//*from   ww w .  ja va  2 s.  com*/
@Test
public void testCreateOrder() {
    OrderGenerator generator = new OrderGenerator(taxRules, getArchetypeService());
    Party stockLocation = SupplierTestHelper.createStockLocation();
    Party supplier = TestHelper.createSupplier();
    Product product1 = TestHelper.createProduct();
    Product product2 = TestHelper.createProduct();

    addRelationships(product1, stockLocation, supplier, true, 1, 10, 5, new BigDecimal("2.0"), 1);
    addRelationships(product2, stockLocation, supplier, true, 1, 10, 5, BigDecimal.ONE, 1);

    List<FinancialAct> order = generator.createOrder(supplier, stockLocation, false);
    assertEquals(3, order.size());
    save(order);
    BigDecimal total = new BigDecimal("29.70");
    BigDecimal tax = new BigDecimal("2.70");
    checkOrder(order.get(0), supplier, stockLocation, total, tax);
    checkOrderItem(order, product1, BigDecimal.valueOf(9), new BigDecimal("19.80"), new BigDecimal("1.80"));
    checkOrderItem(order, product2, BigDecimal.valueOf(9), new BigDecimal("9.90"), new BigDecimal("0.90"));
}

From source file:org.yes.cart.service.domain.impl.PriceServiceImpl.java

/**
 * Get the sku prices filtered by quantity. Example:
 * ProductSKU1 has defined price ties 1 - 100 USD, 2 - 87 USD, 5 - 85 USD
 * ProductSKU2 has defined price ties 1 - 100 USD, 2 - 98 USD, 3 - 90 USD
 * <p/>/*  ww  w . ja v a 2s .c  o m*/
 * For quantity 4 result will hold only two SkuPrice:
 * ProductSKU1 87 USD
 * ProductSKU2 90 USD
 *
 * @param prices   sku prices
 * @param quantity quantity
 * @return list of sku prices filtered by quantity
 */
List<Pair<String, SkuPrice>> getSkuPricesFilteredByQuantity(final List<Pair<String, SkuPrice>> prices,
        final BigDecimal quantity) {
    List<Pair<String, SkuPrice>> result = new ArrayList<Pair<String, SkuPrice>>();
    final Set<String> uniqueSkuCodes = getUniqueSkuCodes(prices);
    for (String selectedSkuCode : uniqueSkuCodes) {
        final List<Pair<String, SkuPrice>> selectedSkuPrices = getSkuPricesFilteredSkuCode(prices,
                selectedSkuCode);
        Collections.sort(selectedSkuPrices, TIER_SORT);
        for (Pair<String, SkuPrice> skuPrice : selectedSkuPrices) {
            if (MoneyUtils.isFirstBiggerThanOrEqualToSecond(quantity, skuPrice.getSecond().getQuantity())) {
                result.add(skuPrice);
                break;
            }
        }

        if (result.isEmpty() && MoneyUtils.isFirstBiggerThanSecond(BigDecimal.ONE, quantity)
                && !MoneyUtils.isFirstEqualToSecond(BigDecimal.ZERO, quantity, Constants.DEFAULT_SCALE)) {
            // float point qty
            return getSkuPricesFilteredByQuantity(prices, BigDecimal.ONE);
        }
    }
    return result;
}

From source file:pe.gob.mef.gescon.hibernate.impl.ContenidoDaoImpl.java

@Override
public List<HashMap> getConcimientosDisponibles(HashMap filters) {
    String ntipoconocimientoid = ((BigDecimal) filters.get("ntipoconocimientoid")).toString();
    String nconocimientovinc = (String) filters.get("nconocimientovinc");
    final StringBuilder sql = new StringBuilder();
    Object object = null;//from w w w.  j  a v  a  2 s . c om
    try {
        if (StringUtils.isNotBlank(ntipoconocimientoid) && ntipoconocimientoid.equals("1")) {
            sql.append("SELECT ");
            sql.append(
                    "    a.nbaselegalid AS ID, a.vnumero AS NUMERO, a.vnombre AS NOMBRE, a.vsumilla AS SUMILLA, ");
            sql.append(
                    "    a.ncategoriaid AS IDCATEGORIA, b.vnombre AS CATEGORIA, a.dfechapublicacion AS FECHA, ");
            sql.append(
                    "    1 AS IDTIPOCONOCIMIENTO, 'Base Legal' AS TIPOCONOCIMIENTO, a.nestadoid AS IDESTADO, c.vnombre AS ESTADO ");
            sql.append("FROM TBASELEGAL a ");
            sql.append("    INNER JOIN MTCATEGORIA b ON a.ncategoriaid = b.ncategoriaid ");
            sql.append("    INNER JOIN MTESTADO_BASELEGAL c ON a.nestadoid = c.nestadoid ");
            sql.append("WHERE a.nactivo = :ACTIVO ");
            sql.append("AND a.nestadoid IN (3,5,6) "); // Publicada, Concordada y Modificada.
            if (StringUtils.isNotBlank(nconocimientovinc)) {
                sql.append("AND a.nbaselegalid NOT IN (").append(nconocimientovinc).append(") ");
            }
        }
        if (StringUtils.isNotBlank(ntipoconocimientoid) && ntipoconocimientoid.equals("2")) {
            sql.append("SELECT ");
            sql.append("    a.npreguntaid AS ID, '' AS NUMERO, a.vasunto AS NOMBRE, a.vrespuesta AS SUMILLA, ");
            sql.append(
                    "    a.ncategoriaid AS IDCATEGORIA, b.vnombre AS CATEGORIA, a.dfechacreacion AS FECHA, ");
            sql.append("    2 AS IDTIPOCONOCIMIENTO, 'Preguntas y Respuestas' AS TIPOCONOCIMIENTO, ");
            sql.append("    a.nsituacionid AS IDESTADO, c.vnombre AS ESTADO ");
            sql.append("FROM TPREGUNTA a ");
            sql.append("    INNER JOIN MTCATEGORIA b ON a.ncategoriaid = b.ncategoriaid ");
            sql.append("    INNER JOIN MTSITUACION c ON a.nsituacionid = c.nsituacionid ");
            sql.append("WHERE a.nactivo = :ACTIVO ");
            sql.append("AND a.nsituacionid = 6 "); // Publicado
            if (StringUtils.isNotBlank(nconocimientovinc)) {
                sql.append("AND a.npreguntaid NOT IN (").append(nconocimientovinc).append(") ");
            }
        }
        if (StringUtils.isNotBlank(ntipoconocimientoid)
                && (ntipoconocimientoid.equals("3") || ntipoconocimientoid.equals("4")
                        || ntipoconocimientoid.equals("5") || ntipoconocimientoid.equals("6"))) {
            sql.append("SELECT ");
            sql.append(
                    "    a.nconocimientoid AS ID, '' AS NUMERO, a.vtitulo AS NOMBRE, a.vdescripcion AS SUMILLA, ");
            sql.append(
                    "    a.ncategoriaid AS IDCATEGORIA, b.vnombre AS CATEGORIA, a.dfechacreacion AS FECHA, ");
            sql.append("    a.ntpoconocimientoid AS IDTIPOCONOCIMIENTO, d.vnombre AS TIPOCONOCIMIENTO, ");
            sql.append("    a.nsituacionid AS IDESTADO, c.vnombre AS ESTADO ");
            sql.append("FROM TCONOCIMIENTO a ");
            sql.append("    INNER JOIN MTCATEGORIA b ON a.ncategoriaid = b.ncategoriaid ");
            sql.append("    INNER JOIN MTSITUACION c ON a.nsituacionid = c.nsituacionid ");
            sql.append("    INNER JOIN MTTIPO_CONOCIMIENTO d ON a.ntpoconocimientoid = d.ntpoconocimientoid ");
            sql.append("WHERE a.nactivo = :ACTIVO ");
            sql.append("AND a.nsituacionid = 6 AND a.NTPOCONOCIMIENTOID = ").append(ntipoconocimientoid)
                    .append(" "); // Publicado
            if (StringUtils.isNotBlank(nconocimientovinc)) {
                sql.append(" AND a.nconocimientoid NOT IN (").append(nconocimientovinc).append(") ");
            }
        }
        sql.append("ORDER BY 5, 7 DESC ");

        object = getHibernateTemplate().execute(new HibernateCallback() {
            @Override
            public Object doInHibernate(Session session) throws HibernateException {
                Query query = session.createSQLQuery(sql.toString());
                query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                if (StringUtils.isNotBlank(sql.toString())) {
                    query.setParameter("ACTIVO", BigDecimal.ONE);
                }
                return query.list();
            }
        });
    } catch (DataAccessException e) {
        e.getMessage();
        e.printStackTrace();
    }
    return (List<HashMap>) object;
}

From source file:pe.gob.mef.gescon.hibernate.impl.ConocimientoDaoImpl.java

@Override
public List<HashMap> getConcimientosDisponibles(HashMap filters) {
    String ntipoconocimientoid = ((BigDecimal) filters.get("ntipoconocimientoid")).toString();
    String nconocimientovinc = (String) filters.get("nconocimientovinc");
    final StringBuilder sql = new StringBuilder();
    Object object = null;//  www  . j a  v a  2 s . com
    try {
        if (StringUtils.isNotBlank(ntipoconocimientoid) && ntipoconocimientoid.equals("1")) {
            sql.append("SELECT ");
            sql.append(
                    "    a.nbaselegalid AS ID, a.vnumero AS NUMERO, a.vnombre AS NOMBRE, a.vsumilla AS SUMILLA, ");
            sql.append(
                    "    a.ncategoriaid AS IDCATEGORIA, b.vnombre AS CATEGORIA, a.dfechapublicacion AS FECHA, ");
            sql.append(
                    "    1 AS IDTIPOCONOCIMIENTO, 'Base Legal' AS TIPOCONOCIMIENTO, a.nestadoid AS IDESTADO, c.vnombre AS ESTADO ");
            sql.append("FROM TBASELEGAL a ");
            sql.append("    INNER JOIN MTCATEGORIA b ON a.ncategoriaid = b.ncategoriaid ");
            sql.append("    INNER JOIN MTESTADO_BASELEGAL c ON a.nestadoid = c.nestadoid ");
            sql.append("WHERE a.nactivo = :ACTIVO ");
            sql.append("AND a.nestadoid IN (3,5,6) "); // Publicada, Concordada y Modificada.
            if (StringUtils.isNotBlank(nconocimientovinc)) {
                sql.append("AND a.nbaselegalid NOT IN (").append(nconocimientovinc).append(") ");
            }
        }
        if (StringUtils.isNotBlank(ntipoconocimientoid) && ntipoconocimientoid.equals("2")) {
            sql.append("SELECT ");
            sql.append("    a.npreguntaid AS ID, '' AS NUMERO, a.vasunto AS NOMBRE, a.vdetalle AS SUMILLA, ");
            sql.append(
                    "    a.ncategoriaid AS IDCATEGORIA, b.vnombre AS CATEGORIA, a.dfechapublicacion AS FECHA, ");
            sql.append("    2 AS IDTIPOCONOCIMIENTO, 'Preguntas y Respuestas' AS TIPOCONOCIMIENTO, ");
            sql.append("    a.nsituacionid AS IDESTADO, c.vnombre AS ESTADO ");
            sql.append("FROM TPREGUNTA a ");
            sql.append("    INNER JOIN MTCATEGORIA b ON a.ncategoriaid = b.ncategoriaid ");
            sql.append("    INNER JOIN MTSITUACION c ON a.nsituacionid = c.nsituacionid ");
            sql.append("WHERE a.nactivo = :ACTIVO ");
            sql.append("AND a.nsituacionid = 6 "); // Publicado
            if (StringUtils.isNotBlank(nconocimientovinc)) {
                sql.append("AND a.npreguntaid NOT IN (").append(nconocimientovinc).append(") ");
            }
        }
        if (StringUtils.isNotBlank(ntipoconocimientoid)
                && (ntipoconocimientoid.equals("3") || ntipoconocimientoid.equals("4")
                        || ntipoconocimientoid.equals("5") || ntipoconocimientoid.equals("6"))) {
            sql.append("SELECT ");
            sql.append(
                    "    a.nconocimientoid AS ID, '' AS NUMERO, a.vtitulo AS NOMBRE, a.vdescripcion AS SUMILLA, ");
            sql.append(
                    "    a.ncategoriaid AS IDCATEGORIA, b.vnombre AS CATEGORIA, a.dfechapublicacion AS FECHA, ");
            sql.append("    a.ntpoconocimientoid AS IDTIPOCONOCIMIENTO, d.vnombre AS TIPOCONOCIMIENTO, ");
            sql.append("    a.nsituacionid AS IDESTADO, c.vnombre AS ESTADO ");
            sql.append("FROM TCONOCIMIENTO a ");
            sql.append("    INNER JOIN MTCATEGORIA b ON a.ncategoriaid = b.ncategoriaid ");
            sql.append("    INNER JOIN MTSITUACION c ON a.nsituacionid = c.nsituacionid ");
            sql.append("    INNER JOIN MTTIPO_CONOCIMIENTO d ON a.ntpoconocimientoid = d.ntpoconocimientoid ");
            sql.append("WHERE a.nactivo = :ACTIVO ");
            sql.append("AND a.nsituacionid = 6 "); // Publicado
            sql.append("AND a.ntpoconocimientoid = ").append(ntipoconocimientoid).append(" ");
            if (StringUtils.isNotBlank(nconocimientovinc)) {
                sql.append("AND a.nconocimientoid NOT IN (").append(nconocimientovinc).append(") ");
            }
        }
        sql.append("ORDER BY 5, 7 DESC ");

        object = getHibernateTemplate().execute(new HibernateCallback() {
            @Override
            public Object doInHibernate(Session session) throws HibernateException {
                Query query = session.createSQLQuery(sql.toString());
                query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                if (StringUtils.isNotBlank(sql.toString())) {
                    query.setParameter("ACTIVO", BigDecimal.ONE);
                }
                return query.list();
            }
        });
    } catch (DataAccessException e) {
        e.getMessage();
        e.printStackTrace();
    }
    return (List<HashMap>) object;
}

From source file:pe.gob.mef.gescon.hibernate.impl.PreguntaDaoImpl.java

@Override
public List<HashMap> getConcimientosVinculados(HashMap filters) {
    String npreguntaid = filters.get("npreguntaid").toString();
    String ntipoconocimientoid = filters.get("ntipoconocimientoid").toString();
    Boolean flag = (Boolean) filters.get("flag");
    Object object = null;//from  w ww .j a va2  s  .  co m
    final StringBuilder sql = new StringBuilder();
    if (StringUtils.isNotBlank(ntipoconocimientoid)
            && (ntipoconocimientoid.equals("3") || ntipoconocimientoid.equals("4")
                    || ntipoconocimientoid.equals("5") || ntipoconocimientoid.equals("6"))) {
        sql.append("SELECT ");
        sql.append(
                "    a.nvinculoid as ID, a.nconocimientovinc as IDCONOCIMIENTO, '' AS NUMERO, b.vtitulo AS NOMBRE, b.vdescripcion AS SUMILLA, ");
        sql.append("    b.ncategoriaid AS IDCATEGORIA, c.vnombre AS CATEGORIA, b.dfechacreacion AS FECHA, ");
        sql.append("    b.ntpoconocimientoid AS IDTIPOCONOCIMIENTO, e.vnombre AS TIPOCONOCIMIENTO, ");
        sql.append("    b.nsituacionid AS IDESTADO, d.vnombre AS ESTADO ");
        sql.append("FROM TVINCULO_PREGUNTA a ");
        sql.append("INNER JOIN TCONOCIMIENTO b ");
        sql.append("    INNER JOIN MTCATEGORIA c ON b.ncategoriaid = c.ncategoriaid ");
        sql.append("    INNER JOIN MTSITUACION d ON b.nsituacionid = d.nsituacionid ");
        sql.append("    INNER JOIN MTTIPO_CONOCIMIENTO e ON b.ntpoconocimientoid = e.ntpoconocimientoid ");
        sql.append("ON a.nconocimientovinc = b.nconocimientoid ");
        sql.append("AND a.ntipoconocimientovinc = b.ntpoconocimientoid ");
        sql.append("AND b.nactivo = :ACTIVO ");
        sql.append("WHERE a.npreguntaid = ").append(npreguntaid).append(" ");
        sql.append("AND a.ntipoconocimientovinc = ").append(ntipoconocimientoid).append(" ");
        sql.append("ORDER BY 7 DESC ");
    }
    if (StringUtils.isNotBlank(ntipoconocimientoid) && ntipoconocimientoid.equals("2")) {
        sql.append("SELECT ");
        sql.append(
                "    a.nvinculoid as ID, a.nconocimientovinc as IDCONOCIMIENTO, '' AS NUMERO, b.vasunto AS NOMBRE , b.vdetalle AS SUMILLA, ");
        sql.append("    b.ncategoriaid AS IDCATEGORIA, c.vnombre AS CATEGORIA, b.dfechacreacion AS FECHA, ");
        sql.append("    2 AS IDTIPOCONOCIMIENTO, 'Preguntas y Respuestas' AS TIPOCONOCIMIENTO, ");
        sql.append("    b.nsituacionid AS IDESTADO, d.vnombre AS ESTADO ");
        sql.append("FROM TVINCULO_PREGUNTA a ");
        sql.append("INNER JOIN TPREGUNTA b ");
        sql.append("    INNER JOIN MTCATEGORIA c ON b.ncategoriaid = c.ncategoriaid ");
        sql.append("    INNER JOIN MTSITUACION d ON b.nsituacionid = d.nsituacionid ");
        sql.append("ON a.nconocimientovinc = b.npreguntaid ");
        sql.append("AND a.ntipoconocimientovinc = 2 ");
        sql.append("AND b.nactivo = :ACTIVO ");
        sql.append("WHERE a.npreguntaid = ").append(npreguntaid).append(" ");
        sql.append("ORDER BY 7 DESC ");
    }
    if (StringUtils.isNotBlank(ntipoconocimientoid) && ntipoconocimientoid.equals("1")) {
        sql.append("SELECT ");
        sql.append(
                "    a.nvinculoid as ID, a.nconocimientovinc as IDCONOCIMIENTO, b.vnumero AS NUMERO, b.vnombre AS NOMBRE , b.vsumilla AS SUMILLA, ");
        sql.append("    b.ncategoriaid AS IDCATEGORIA, c.vnombre AS CATEGORIA, b.dfechacreacion AS FECHA, ");
        sql.append("    1 AS IDTIPOCONOCIMIENTO, 'Base Legal' AS TIPOCONOCIMIENTO, ");
        sql.append("    b.nestadoid AS IDESTADO, d.vnombre AS ESTADO ");
        sql.append("FROM TVINCULO_PREGUNTA a ");
        sql.append("INNER JOIN TBASELEGAL b ");
        sql.append("    INNER JOIN MTCATEGORIA c ON b.ncategoriaid = c.ncategoriaid ");
        sql.append("    INNER JOIN MTESTADO_BASELEGAL d ON b.nestadoid = d.nestadoid ");
        sql.append("ON a.nconocimientovinc = b.nbaselegalid ");
        sql.append("AND a.ntipoconocimientovinc = 1 ");
        sql.append("AND b.nactivo = :ACTIVO ");
        sql.append("WHERE a.npreguntaid = ").append(npreguntaid).append(" ");
        sql.append("ORDER BY 7 DESC ");
    }
    try {
        object = getHibernateTemplate().execute(new HibernateCallback() {
            @Override
            public Object doInHibernate(Session session) throws HibernateException {
                Query query = session.createSQLQuery(sql.toString());
                query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                if (StringUtils.isNotBlank(sql.toString())) {
                    query.setParameter("ACTIVO", BigDecimal.ONE);
                }
                return query.list();
            }
        });
    } catch (Exception e) {
        e.getMessage();
        e.printStackTrace();
    }
    return (List<HashMap>) object;
}

From source file:com.qcadoo.mes.operationTimeCalculations.OrderRealizationTimeServiceImpl.java

@Override
public int evaluateSingleOperationTimeIncludedNextOperationAfterProducedQuantity(Entity operationComponent,
        final boolean includeTpz, final boolean includeAdditionalTime,
        final Map<Long, BigDecimal> operationRuns, final Entity productionLine, final boolean maxForWorkstation,
        final OperationProductComponentWithQuantityContainer productComponentQuantities) {
    operationComponent = operationComponent.getDataDefinition().get(operationComponent.getId());
    BigDecimal cycles = BigDecimal.ONE;
    BigDecimal nextOperationAfterProducedQuantity = BigDecimalUtils
            .convertNullToZero(operationComponent.getDecimalField("nextOperationAfterProducedQuantity"));
    BigDecimal productComponentQuantity = productComponentQuantities.get(getOutputProduct(operationComponent));
    Entity technologyOperationComponent = getTechnologyOperationComponent(operationComponent);

    if (nextOperationAfterProducedQuantity.compareTo(productComponentQuantity) != 1) {
        cycles = getQuantityCyclesNeededToProducedNextOperationAfterProducedQuantity(
                technologyOperationComponent, nextOperationAfterProducedQuantity);
    } else {/*w  w  w .  ja  v  a  2  s  . c  o m*/
        cycles = operationRuns.get(technologyOperationComponent.getId());
    }
    return evaluateOperationDurationOutOfCycles(cycles, operationComponent, productionLine, maxForWorkstation,
            includeTpz, includeAdditionalTime);
}