Package org.sab.invsys.common.util.mapper.order.purchase

Source Code of org.sab.invsys.common.util.mapper.order.purchase.PurchaseOrderMapper

package org.sab.invsys.common.util.mapper.order.purchase;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

import org.sab.invsys.persistence.model.order.purchase.PurchaseOrder;
import org.sab.invsys.persistence.model.order.purchase.PurchaseOrderCharges;
import org.sab.invsys.persistence.model.order.purchase.PurchaseOrderItems;
import org.sab.invsys.persistence.model.order.purchase.PurchaseOrderTaxes;
import org.sab.invsys.persistence.model.user.User;
import org.sab.invsys.web.model.order.purchase.PurchaseOrderUI;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;

public class PurchaseOrderMapper {
  public PurchaseOrderUI toUIBean(PurchaseOrder data) {
    PurchaseOrderUI ui = new PurchaseOrderUI();

    if (data != null) {
      ui.setComments(data.getComments());
      ui.setCreateadBy(data.getCreateadBy());
      ui.setCreatedDate(data.getCreatedDate());
      ui.setDiscount(data.getDiscount());
      ui.setDueDate(data.getDueDate());
      ui.setId(data.getId());
      ui.setModifiedBy(data.getModifiedBy());
      ui.setModifiedDate(data.getModifiedDate());
      ui.setOrderDate(data.getOrderDate());
      ui.setOrderId(data.getOrderId());
      ui.setOrderType(data.getOrderType());
      ui.setReferenceNumber(data.getReferenceNumber());
      ui.setUserName(data.getUser().getUsername());
      ui.setTotal(data.getTotal());

    }

    return ui;
  }

  public List<PurchaseOrderUI> toUIBean(List<PurchaseOrder> data) {
    List<PurchaseOrderUI> ui = new ArrayList<PurchaseOrderUI>();

    for (PurchaseOrder po : data) {
      ui.add(toUIBean(po));
    }

    return ui;
  }

  public Page<PurchaseOrderUI> toUIBean(Page<PurchaseOrder> data,
      Pageable pageable) {
    return new PageImpl<PurchaseOrderUI>(toUIBean(data.getContent()));
  }

  public PurchaseOrder toPersistenceBean(PurchaseOrderUI ui) {
    PurchaseOrder data = new PurchaseOrder();

    if (ui != null) {
      data.setComments(ui.getComments());
      data.setCreateadBy(ui.getCreateadBy());
      data.setCreatedDate(ui.getCreatedDate());
      data.setDiscount(ui.getDiscount());
      data.setDueDate(ui.getDueDate());
      data.setId(ui.getId());
      data.setModifiedBy(ui.getModifiedBy());
      data.setModifiedDate(ui.getModifiedDate());
      data.setOrderDate(ui.getOrderDate());
      data.setOrderId(ui.getOrderId());
      data.setOrderType(ui.getOrderType());
      data.setReferenceNumber(ui.getReferenceNumber());

      User user = new User();
      user.setUsername(ui.getUserName());
      data.setUser(user);

      if (ui.getCharges() != null && ui.getCharges().size() > 0) {
        PurchaseOrderChargesMapper chargeMapper = new PurchaseOrderChargesMapper();
        Set<PurchaseOrderCharges> charges = new HashSet<PurchaseOrderCharges>(
            chargeMapper.toPersistenceBean(ui.getCharges()));
        data.setCharges(charges);
      }
      if (ui.getItems() != null && ui.getItems().size() > 0) {
        PurchaseOrderItemsMapper itemsMapper = new PurchaseOrderItemsMapper();
        List<PurchaseOrderItems> pItems = itemsMapper
            .toPersistenceBean(ui.getItems());
        Set<PurchaseOrderItems> items = new HashSet<PurchaseOrderItems>();
        if (pItems != null) {
          items.addAll(pItems);
        }
        data.setItems(items);
      }
      if (ui.getTaxes() != null && ui.getTaxes().size() > 0) {
        PurchaseOrderTaxesMapper taxMapper = new PurchaseOrderTaxesMapper();
        Set<PurchaseOrderTaxes> taxes = new HashSet<PurchaseOrderTaxes>(
            taxMapper.toPersistenceBean(ui.getTaxes()));
        data.setTaxes(taxes);
      }
    }

    return data;
  }

  public List<PurchaseOrder> toPersistenceBean(List<PurchaseOrderUI> ui) {
    List<PurchaseOrder> data = new ArrayList<PurchaseOrder>();

    for (PurchaseOrderUI po : ui) {
      data.add(toPersistenceBean(po));
    }

    return data;
  }
}
TOP

Related Classes of org.sab.invsys.common.util.mapper.order.purchase.PurchaseOrderMapper

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.