Package no.ugland.utransprod.gui.handlers

Source Code of no.ugland.utransprod.gui.handlers.SplitOrderViewHandler

package no.ugland.utransprod.gui.handlers;

import java.util.ArrayList;
import java.util.List;

import javax.swing.JButton;
import javax.swing.JTable;

import no.ugland.utransprod.gui.Closeable;
import no.ugland.utransprod.gui.IconEnum;
import no.ugland.utransprod.gui.WindowInterface;
import no.ugland.utransprod.gui.buttons.CancelButton;
import no.ugland.utransprod.gui.model.Transportable;
import no.ugland.utransprod.gui.model.TransportableTreeTableModel;
import no.ugland.utransprod.model.Order;
import no.ugland.utransprod.model.PostShipment;
import no.ugland.utransprod.service.OrderManager;
import no.ugland.utransprod.service.PostShipmentManager;
import no.ugland.utransprod.service.enums.LazyLoadOrderEnum;
import no.ugland.utransprod.service.enums.LazyLoadPostShipmentEnum;
import no.ugland.utransprod.util.ModelUtil;

import org.jdesktop.swingx.JXTreeTable;

public class SplitOrderViewHandler implements Closeable{
    private Transportable transportable;
    private boolean canceled=false;
    private TransportableTreeTableModel transportableTreeTableModel;
   

    public SplitOrderViewHandler(Transportable aTransportable) {
        transportable = aTransportable;
        lazyLoadTransportable(transportable);
    }

    public JXTreeTable getTreeTableTransportable() {
        transportableTreeTableModel=new TransportableTreeTableModel(transportable);
        JXTreeTable treeTable = new JXTreeTable(transportableTreeTableModel);
        treeTable.setName("TreeTableTransportable");
        treeTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        treeTable.getColumnExt(0).setPreferredWidth(200);
        treeTable.getColumnExt(1).setPreferredWidth(50);
        return treeTable;
    }
    public JButton getButtonOk(WindowInterface window){
        JButton button = new CancelButton(window,this,false,"Ok",IconEnum.ICON_OK,null,true);
        button.setName("ButtonOk");
        return button;
    }
    public JButton getButtonCancel(WindowInterface window){
        JButton button = new CancelButton(window,this,true);
        button.setName("ButtonCancel");
        return button;
    }

    private void lazyLoadTransportable(Transportable transportable) {
        if (transportable != null) {
            if (transportable instanceof Order) {
                OrderManager orderManager = (OrderManager) ModelUtil
                        .getBean("orderManager");
                orderManager
                        .lazyLoadOrder(
                                (Order) transportable,
                                new LazyLoadOrderEnum[] {LazyLoadOrderEnum.ORDER_LINES,LazyLoadOrderEnum.COLLIES});
            } else {
                PostShipmentManager postShipmentManager = (PostShipmentManager) ModelUtil
                        .getBean("postShipmentManager");
                postShipmentManager
                        .lazyLoad(
                                (PostShipment) transportable,
                                new LazyLoadPostShipmentEnum[] {LazyLoadPostShipmentEnum.ORDER_LINES,LazyLoadPostShipmentEnum.COLLIES});
            }
        }
    }
   
    public boolean canClose(String actionString, WindowInterface window) {
        if(!actionString.equalsIgnoreCase("Ok")){
            canceled=true;
        }
        return true;
    }
   
    public List<Object> getSplitted(){
        return new ArrayList<Object>(transportableTreeTableModel.getSplitFromOrder());
    }
   
    public boolean isCanceled(){
        return canceled;
    }
}
TOP

Related Classes of no.ugland.utransprod.gui.handlers.SplitOrderViewHandler

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.