Example usage for org.springframework.beans BeanUtils copyProperties

List of usage examples for org.springframework.beans BeanUtils copyProperties

Introduction

In this page you can find the example usage for org.springframework.beans BeanUtils copyProperties.

Prototype

public static void copyProperties(Object source, Object target) throws BeansException 

Source Link

Document

Copy the property values of the given source bean into the target bean.

Usage

From source file:org.hoteia.qalingo.core.service.impl.WebManagementServiceImpl.java

/**
 * //from   w ww . j ava 2 s.  co m
 */
public void buildAndSaveCustomerForgottenPasswordMail(final RequestData requestData, final Customer customer,
        final CustomerCredential customerCredential, final ForgottenPasswordForm forgottenPasswordForm)
        throws Exception {
    final MarketArea marketArea = requestData.getMarketArea();
    final String contextNameValue = requestData.getContextNameValue();

    final CustomerForgottenPasswordEmailBean customerForgottenPasswordEmailBean = new CustomerForgottenPasswordEmailBean();
    BeanUtils.copyProperties(forgottenPasswordForm, customerForgottenPasswordEmailBean);
    customerForgottenPasswordEmailBean.setFromAddress(
            marketArea.getEmailFromAddress(contextNameValue, Email.EMAIl_TYPE_FORGOTTEN_PASSWORD));
    customerForgottenPasswordEmailBean
            .setFromName(marketArea.getEmailFromName(contextNameValue, Email.EMAIl_TYPE_FORGOTTEN_PASSWORD));
    customerForgottenPasswordEmailBean.setReplyToEmail(
            marketArea.getEmailFromAddress(contextNameValue, Email.EMAIl_TYPE_FORGOTTEN_PASSWORD));
    customerForgottenPasswordEmailBean.setToEmail(customer.getEmail());
    customerForgottenPasswordEmailBean.setToken(customerCredential.getResetToken());

    customerForgottenPasswordEmailBean.setTitle(customer.getTitle());
    customerForgottenPasswordEmailBean.setFirstname(customer.getFirstname());
    customerForgottenPasswordEmailBean.setLastname(customer.getLastname());
    customerForgottenPasswordEmailBean.setEmail(customer.getEmail());

    buildAndSaveCustomerForgottenPasswordMail(requestData, customer, customerCredential,
            customerForgottenPasswordEmailBean);
}

From source file:org.hoteia.qalingo.core.service.impl.WebManagementServiceImpl.java

public OrderCustomer buildAndSaveNewOrder(final RequestData requestData) throws Exception {
    final HttpServletRequest request = requestData.getRequest();
    final Customer customer = requestData.getCustomer();
    final Cart cart = requestData.getCart();

    OrderCustomer orderCustomer = new OrderCustomer();
    // ORDER NUMBER IS CREATE BY DAO

    orderCustomer.setStatus(OrderStatus.ORDER_STATUS_PENDING.getPropertyKey());

    orderCustomer.setCurrency(cart.getCurrency());
    orderCustomer.setMarketAreaId(cart.getMarketAreaId());
    orderCustomer.setRetailerId(cart.getRetailerId());
    orderCustomer.setLocalizationId(cart.getLocalizationId());
    orderCustomer.setCustomerId(customer.getId());

    OrderAddress billingAddress = new OrderAddress();
    BeanUtils.copyProperties(customer.getAddress(cart.getBillingAddressId()), billingAddress);
    orderCustomer.setBillingAddress(billingAddress);

    OrderAddress shippingAddress = new OrderAddress();
    BeanUtils.copyProperties(customer.getAddress(cart.getShippingAddressId()), shippingAddress);
    orderCustomer.setShippingAddress(shippingAddress);

    // SHIPMENT//from   w w w.j  a  v  a2s  .c om
    Set<OrderShipment> orderShipments = new HashSet<OrderShipment>();
    Set<DeliveryMethod> deliveryMethods = cart.getDeliveryMethods();
    if (deliveryMethods != null) {
        for (Iterator<DeliveryMethod> iteratorDeliveryMethod = deliveryMethods
                .iterator(); iteratorDeliveryMethod.hasNext();) {
            DeliveryMethod deliveryMethod = (DeliveryMethod) iteratorDeliveryMethod.next();
            OrderShipment orderShipment = new OrderShipment();
            orderShipment.setName(deliveryMethod.getName());
            orderShipment.setExpectedDeliveryDate(null);
            orderShipment.setDeliveryMethodId(deliveryMethod.getId());
            orderShipment.setPrice(deliveryMethod.getPrice(cart.getMarketAreaId(), cart.getRetailerId()));

            Set<CartItem> cartItems = cart.getCartItems();
            Set<OrderItem> orderItems = new HashSet<OrderItem>();
            for (Iterator<CartItem> iteratorCartItem = cartItems.iterator(); iteratorCartItem.hasNext();) {
                CartItem cartItem = (CartItem) iteratorCartItem.next();
                OrderItem orderItem = new OrderItem();
                orderItem.setCurrency(cart.getCurrency());
                orderItem.setProductSkuCode(cartItem.getProductSkuCode());
                orderItem.setProductSku(cartItem.getProductSku());
                orderItem.setPrice(
                        cartItem.getPrice(cart.getMarketAreaId(), cart.getRetailerId()).getSalePrice());
                orderItem.setQuantity(cartItem.getQuantity());

                // TAXES
                Set<CartItemTax> taxes = cartItem.getTaxes();
                if (taxes != null) {
                    for (Iterator<CartItemTax> iteratorCartItemTax = taxes.iterator(); iteratorCartItemTax
                            .hasNext();) {
                        CartItemTax cartItemTax = (CartItemTax) iteratorCartItemTax.next();
                        OrderTax orderTax = new OrderTax();
                        orderTax.setName(cartItemTax.getTax().getName());
                        orderTax.setPercent(cartItemTax.getTax().getPercent());
                        orderTax.setAmount(cartItemTax.getTaxAmount());
                        orderItem.getOrderTaxes().add(orderTax);
                    }
                }

                orderItems.add(orderItem);
            }
            orderShipment.setOrderItems(orderItems);
            orderShipments.add(orderShipment);
        }
    }
    orderCustomer.setOrderShipments(orderShipments);

    orderCustomer = orderCustomerService.createNewOrder(orderCustomer);

    requestUtil.deleteCurrentCartAndSaveEngineSession(request);

    // RELOAD ORDER FOR THE SESSION
    orderCustomer = orderCustomerService.getOrderByOrderNum(orderCustomer.getOrderNum());
    requestUtil.keepLastOrderInSession(requestData, orderCustomer);

    buildAndSaveNewOrderConfirmationMail(requestData, customer, orderCustomer);

    return orderCustomer;
}

From source file:org.hoteia.qalingo.core.service.WebBackofficeService.java

public OrderPurchase checkoutB2B(final User user, final Cart cart) throws Exception {
    Long marketAreaId = cart.getMarketAreaId();
    Set<DeliveryMethod> deliveryMethods = cart.getDeliveryMethods();
    Set<CartItem> cartItems = cart.getCartItems();

    OrderPurchase orderPurchase = new OrderPurchase();
    // ORDER NUMBER IS CREATE BY DAO

    orderPurchase.setStatus(OrderStatus.ORDER_STATUS_PENDING.getPropertyKey());
    orderPurchase.setType(cart.getType());

    orderPurchase.setCurrency(cart.getCurrency());
    orderPurchase.setMarketAreaId(cart.getMarketAreaId());
    orderPurchase.setRetailerId(cart.getRetailerId());
    orderPurchase.setLocalizationId(cart.getLocalizationId());

    orderPurchase.setUser(user);/*from  www.  j a  va2 s  .c o  m*/

    List<SpecificFetchMode> storeSpecificFetchplans = new ArrayList<SpecificFetchMode>();
    storeSpecificFetchplans.add(new SpecificFetchMode(Store_.attributes.getName()));
    storeSpecificFetchplans.add(new SpecificFetchMode(Store_.companyStoreRels.getName()));
    storeSpecificFetchplans.add(
            new SpecificFetchMode(Store_.companyStoreRels.getName() + "." + CompanyStoreRel_.pk.getName()));
    storeSpecificFetchplans.add(new SpecificFetchMode(Store_.companyStoreRels.getName() + "."
            + CompanyStoreRel_.pk.getName() + "." + CompanyStorePk_.company.getName()));
    FetchPlan storeFetchPlan = new FetchPlan(storeSpecificFetchplans);

    List<Long> storeIds = retailerService.findStoreIdsByUserId(user.getId());
    List<Store> stores = new ArrayList<Store>();
    for (Long storeId : storeIds) {
        stores.add(retailerService.getStoreById(storeId, storeFetchPlan));
    }

    // SANITY CHECK
    if (stores == null || stores.isEmpty()) {
        logger.error("Checkout an order with a user who has no stores! User id: " + user.getId() + ", Cart id: "
                + cart.getId());
    }

    for (Store store : stores) {
        if (store.getId().equals(cart.getBillingAddressId())) {
            OrderAddress billingAddress = new OrderAddress();
            BeanUtils.copyProperties(store, billingAddress);
            billingAddress.setId(null);
            billingAddress.setCompanyName(store.getName());
            orderPurchase.setBillingAddress(billingAddress);
            orderPurchase.setUserStoreId(store.getId());
        }
        if (store.getId().equals(cart.getShippingAddressId())) {
            OrderAddress shippingAddress = new OrderAddress();
            BeanUtils.copyProperties(store, shippingAddress);
            shippingAddress.setId(null);
            shippingAddress.setCompanyName(store.getCompany().getName());
            orderPurchase.setShippingAddress(shippingAddress);
        }
    }

    // SHIPMENT
    Set<OrderShipment> orderShipments = new HashSet<OrderShipment>();

    // SANITY CHECK
    if (deliveryMethods == null || deliveryMethods.isEmpty()) {
        logger.error("Checkout an order with a cart who has no deliveryMethods! User id: " + user.getId()
                + ", Cart id: " + cart.getId());
    }

    if (deliveryMethods != null) {
        for (DeliveryMethod deliveryMethod : deliveryMethods) {
            OrderShipment orderShipment = new OrderShipment();
            orderShipment.setName(deliveryMethod.getName());
            orderShipment.setExpectedDeliveryDate(null);
            orderShipment.setDeliveryMethodId(deliveryMethod.getId());
            orderShipment.setPrice(deliveryMethod.getPrice(cart.getCurrency().getId()));

            Set<OrderItem> orderItems = new HashSet<OrderItem>();
            for (CartItem cartItem : cartItems) {
                OrderItem orderItem = new OrderItem();
                orderItem.setCurrency(cart.getCurrency());
                orderItem.setProductSkuCode(cartItem.getProductSku().getCode());
                orderItem.setProductSku(cartItem.getProductSku());

                Boolean cartItemVATIncluded = cartService.isCartItemVATIncluded(cartItem, marketAreaId);
                orderItem.setVATIncluded(cartItemVATIncluded);
                //                    if(cartItemVATIncluded) {
                //                        orderItem.setPrice(cartService.getCartItemPriceWithTaxes(cartItem, marketAreaId, taxes));
                //                    } else {
                //                        orderItem.setPrice(cartService.getCartItemPrice(cartItem, marketAreaId, taxes));
                //                    }

                orderItem.setPrice(cartService.getCartItemPrice(cartItem, marketAreaId));
                //                    cartItemPojo.setTotalPrice(cartService.getCartItemPriceWithStandardCurrencySign(cartItem, marketAreaId, cart.getTaxes()));

                orderItem.setQuantity(cartItem.getQuantity());
                orderItem.setStoreId(cartItem.getStoreId());

                // TAXES
                List<CartItemTax> cartItemTaxes = cartItem.getTaxes();

                // SANITY CHECK
                if (cartItemTaxes == null || cartItemTaxes.isEmpty()) {
                    logger.error("Checkout an order with an item who has no taxes! Cart id: " + cart.getId()
                            + ", CartItem id: " + cartItem.getId());
                }

                if (cartItemTaxes != null) {
                    for (CartItemTax cartItemTax : cartItemTaxes) {
                        Tax tax = cartItemTax.getTax();
                        OrderTax orderTax = new OrderTax();
                        orderTax.setTaxId(tax.getId());
                        orderTax.setName(tax.getName());
                        orderTax.setPercent(tax.getPercent());
                        orderTax.setAmount(cartService.getCartItemTaxesAmount(cartItem, marketAreaId));
                        orderItem.getTaxes().add(orderTax);
                    }
                }

                orderItem.setShipment(orderShipment);
                orderItems.add(orderItem);
            }
            orderShipment.setOrderItems(orderItems);
            orderShipment.setOrderPurchase(orderPurchase);
            orderShipments.add(orderShipment);
        }
    }
    orderPurchase.setShipments(orderShipments);

    orderPurchase = orderPurchaseService.createNewOrder(orderPurchase);

    return orderPurchase;
}

From source file:org.hoteia.qalingo.core.service.WebBackofficeService.java

/**
 * //w  w  w .j ava2 s. c  o  m
 */
public void buildAndSaveUserNewAccountMail(final RequestData requestData, final User user) throws Exception {
    final MarketArea marketArea = requestData.getMarketArea();
    final String contextNameValue = requestData.getContextNameValue();

    final UserNewAccountConfirmationEmailBean userNewAccountConfirmationEmailBean = new UserNewAccountConfirmationEmailBean();
    BeanUtils.copyProperties(user, userNewAccountConfirmationEmailBean);
    userNewAccountConfirmationEmailBean.setFromAddress(getEmailFromAddress(requestData, marketArea,
            contextNameValue, Email.EMAIl_TYPE_NEW_ACCOUNT_CONFIRMATION));
    userNewAccountConfirmationEmailBean.setFromName(
            marketArea.getEmailFromName(contextNameValue, Email.EMAIl_TYPE_NEW_ACCOUNT_CONFIRMATION));
    userNewAccountConfirmationEmailBean.setReplyToEmail(getEmailFromAddress(requestData, marketArea,
            contextNameValue, Email.EMAIl_TYPE_NEW_ACCOUNT_CONFIRMATION));
    userNewAccountConfirmationEmailBean.setToEmail(user.getEmail());

    userNewAccountConfirmationEmailBean.setTitle(user.getTitle());
    userNewAccountConfirmationEmailBean.setFirstname(user.getFirstname());
    userNewAccountConfirmationEmailBean.setLastname(user.getLastname());
    userNewAccountConfirmationEmailBean.setEmail(user.getEmail());

    userNewAccountConfirmationEmailBean.setUserDetailsUrl(backofficeUrlService.buildAbsoluteUrl(requestData,
            backofficeUrlService.generateUrl(BoUrls.PERSONAL_DETAILS, requestData)));

    buildAndSaveUserNewAccountMail(requestData, userNewAccountConfirmationEmailBean);
}

From source file:org.hoteia.qalingo.core.service.WebManagementService.java

public void buildAndSaveContactMail(final RequestData requestData, final ContactForm contactForm)
        throws Exception {
    final MarketArea marketArea = requestData.getMarketArea();
    final String contextNameValue = requestData.getContextNameValue();

    final ContactEmailBean contactEmailBean = new ContactEmailBean();
    BeanUtils.copyProperties(contactForm, contactEmailBean);
    contactEmailBean.setFromAddress(/*w w w  . jav a  2s. c  om*/
            getEmailFromAddress(requestData, marketArea, contextNameValue, Email.EMAIl_TYPE_CONTACT));
    contactEmailBean.setFromName(marketArea.getEmailFromName(contextNameValue, Email.EMAIl_TYPE_CONTACT));
    contactEmailBean.setReplyToEmail(
            getEmailFromAddress(requestData, marketArea, contextNameValue, Email.EMAIl_TYPE_CONTACT));
    contactEmailBean.setToEmail(marketArea.getEmailToContact(contextNameValue));

    buildAndSaveContactMail(requestData, contactEmailBean);
}

From source file:org.hoteia.qalingo.core.service.WebManagementService.java

public void buildAndSaveRetailerContactMail(final RequestData requestData,
        final CustomerContactForm customerContactForm) throws Exception {
    final MarketArea marketArea = requestData.getMarketArea();
    final String contextNameValue = requestData.getContextNameValue();

    final List<SpecificFetchMode> retailerFetchPlans = new ArrayList<SpecificFetchMode>();
    retailerFetchPlans.add(new SpecificFetchMode(Retailer_.addresses.getName()));
    final Retailer retailerToContact = retailerService.getRetailerByCode(customerContactForm.getObjectCode(),
            new FetchPlan(retailerFetchPlans));

    final RetailerContactEmailBean retailerContactEmailBean = new RetailerContactEmailBean();
    BeanUtils.copyProperties(customerContactForm, retailerContactEmailBean);
    retailerContactEmailBean.setFromAddress(
            getEmailFromAddress(requestData, marketArea, contextNameValue, Email.EMAIl_TYPE_RETAILER_CONTACT));
    retailerContactEmailBean//from w ww.  j  a va2 s . c  om
            .setFromName(marketArea.getEmailFromName(contextNameValue, Email.EMAIl_TYPE_RETAILER_CONTACT));
    retailerContactEmailBean.setReplyToEmail(
            getEmailFromAddress(requestData, marketArea, contextNameValue, Email.EMAIl_TYPE_RETAILER_CONTACT));
    retailerContactEmailBean.setToEmail(retailerToContact.getDefaultAddress().getEmail());

    buildAndSaveRetailerContactMail(requestData, retailerToContact, retailerContactEmailBean);
}

From source file:org.hoteia.qalingo.core.service.WebManagementService.java

public void buildAndSaveStoreContactMail(final RequestData requestData,
        final CustomerContactForm customerContactForm) throws Exception {
    final MarketArea marketArea = requestData.getMarketArea();
    final String contextNameValue = requestData.getContextNameValue();

    final List<SpecificFetchMode> storeFetchPlans = new ArrayList<SpecificFetchMode>();
    final Retailer retailerToContact = retailerService.getRetailerByCode(customerContactForm.getObjectCode(),
            new FetchPlan(storeFetchPlans));

    final RetailerContactEmailBean retailerContactEmailBean = new RetailerContactEmailBean();
    BeanUtils.copyProperties(customerContactForm, retailerContactEmailBean);
    retailerContactEmailBean.setFromAddress(
            getEmailFromAddress(requestData, marketArea, contextNameValue, Email.EMAIl_TYPE_RETAILER_CONTACT));
    retailerContactEmailBean/*from  www.j  av  a 2 s. com*/
            .setFromName(marketArea.getEmailFromName(contextNameValue, Email.EMAIl_TYPE_RETAILER_CONTACT));
    retailerContactEmailBean.setReplyToEmail(
            getEmailFromAddress(requestData, marketArea, contextNameValue, Email.EMAIl_TYPE_RETAILER_CONTACT));
    retailerContactEmailBean.setToEmail(retailerToContact.getDefaultAddress().getEmail());

    buildAndSaveRetailerContactMail(requestData, retailerToContact, retailerContactEmailBean);
}

From source file:org.hoteia.qalingo.core.service.WebManagementService.java

public void buildAndSaveCustomerNewAccountMail(final RequestData requestData, final Customer customer)
        throws Exception {
    final MarketArea marketArea = requestData.getMarketArea();
    final String contextNameValue = requestData.getContextNameValue();

    final CustomerNewAccountConfirmationEmailBean customerNewAccountConfirmationEmailBean = new CustomerNewAccountConfirmationEmailBean();
    BeanUtils.copyProperties(customer, customerNewAccountConfirmationEmailBean);
    customerNewAccountConfirmationEmailBean.setFromAddress(getEmailFromAddress(requestData, marketArea,
            contextNameValue, Email.EMAIl_TYPE_NEW_ACCOUNT_CONFIRMATION));
    customerNewAccountConfirmationEmailBean.setFromName(
            marketArea.getEmailFromName(contextNameValue, Email.EMAIl_TYPE_NEW_ACCOUNT_CONFIRMATION));
    customerNewAccountConfirmationEmailBean.setReplyToEmail(getEmailFromAddress(requestData, marketArea,
            contextNameValue, Email.EMAIl_TYPE_NEW_ACCOUNT_CONFIRMATION));
    customerNewAccountConfirmationEmailBean.setToEmail(customer.getEmail());

    customerNewAccountConfirmationEmailBean.setTitle(customer.getTitle());
    customerNewAccountConfirmationEmailBean.setFirstname(customer.getFirstname());
    customerNewAccountConfirmationEmailBean.setLastname(customer.getLastname());
    customerNewAccountConfirmationEmailBean.setEmail(customer.getEmail());

    customerNewAccountConfirmationEmailBean.setCustomerDetailsUrl(urlService.buildAbsoluteUrl(requestData,
            urlService.generateUrl(FoUrls.PERSONAL_DETAILS, requestData)));

    buildAndSaveCustomerNewAccountMail(requestData, customerNewAccountConfirmationEmailBean);
}

From source file:org.hoteia.qalingo.core.web.mvc.factory.BackofficeViewBeanFactory.java

public LocalizationViewBean buildViewBeanLocalizationByMarketArea(final RequestData requestData,
        final Localization localization) throws Exception {
    final Locale locale = localization.getLocale();
    final String localeCodeNavigation = localization.getCode();

    RequestData requestDataChangecontext = new RequestData();
    BeanUtils.copyProperties(requestData, requestDataChangecontext);
    requestDataChangecontext.setMarketAreaLocalization(localization);

    final LocalizationViewBean localizationViewBean = new LocalizationViewBean();

    if (StringUtils.isNotEmpty(localeCodeNavigation) && localeCodeNavigation.length() == 2) {
        localizationViewBean.setName(getReferenceData(ScopeReferenceDataMessage.LANGUAGE,
                localeCodeNavigation.toLowerCase(), locale));
    } else {//from   w  w  w .ja va  2 s  . c om
        localizationViewBean
                .setName(getReferenceData(ScopeReferenceDataMessage.LANGUAGE, localeCodeNavigation, locale));
    }

    localizationViewBean
            .setChangeContextUrl(backofficeUrlService.buildChangeContextUrl(requestDataChangecontext));

    return localizationViewBean;
}

From source file:org.hoteia.qalingo.core.web.mvc.factory.impl.BackofficeViewBeanFactoryImpl.java

/**
 * @throws Exception//from  ww w .j ava  2  s. c o m
 * 
 */
public LocalizationViewBean buildLocalizationViewBeanByMarketArea(final RequestData requestData,
        final Localization localization) throws Exception {
    final Locale locale = localization.getLocale();
    final String localeCodeNavigation = localization.getCode();

    RequestData requestDataChangecontext = new RequestData();
    BeanUtils.copyProperties(requestData, requestDataChangecontext);
    requestDataChangecontext.setMarketAreaLocalization(localization);

    final LocalizationViewBean localizationViewBean = new LocalizationViewBean();

    if (StringUtils.isNotEmpty(localeCodeNavigation) && localeCodeNavigation.length() == 2) {
        localizationViewBean.setName(getReferenceData(ScopeReferenceDataMessage.LANGUAGE,
                localeCodeNavigation.toLowerCase(), locale));
    } else {
        localizationViewBean
                .setName(getReferenceData(ScopeReferenceDataMessage.LANGUAGE, localeCodeNavigation, locale));
    }

    localizationViewBean
            .setChangeContextUrl(backofficeUrlService.buildChangeContextUrl(requestDataChangecontext));

    return localizationViewBean;
}