/*----------------------------------------------------------------------------
Copyright (c)2000 TogetherSoft Corporation. Patents pending. All rights reserved.
----------------------------------------------------------------------------*/

package MatlResMgmt.POToSupplier;

import java.util.Vector;
import java.util.Date;
import java.math.BigDecimal;

/** 
 * @author TogetherSoft
 * @stereotype moment-interval */
public class POToSupplier {
    public void makePurchaseOrder() {
    }

    public BigDecimal calcTotal() {
        if (total.intValue() == 0) {
            recalcTotal();
        }
        return total;
    }

    public BigDecimal recalcTotal() {
        // calc the total and set total attribute
        return total;
    }

    public BigDecimal calcTotalDiscountAmount() {
        return new BigDecimal(0);
    }

    public void complete() {
    }

    public void cancel() {
    }

    public void send() {
    }

    public boolean mi_isCompleted() {
        return false;
    }

    public int mi_estimatePercentCompleted() {
        return 0;
    }

    public BigDecimal mi_calcTotalInvoiced() {
        return new BigDecimal(0);
    }

    public Vector mi_listStillToBeDelivered() {
        return new Vector();
    }

    public Vector mi_assessDeliveryTimeliness() {
        return new Vector();
    }

    public Vector mi_assessPOToDelivery() {
        return new Vector();
    }

    public Vector mi_assessDeviationFromRFQAnswer() {
        return new Vector();
    }

    public static Vector listPOs() {
        return new Vector();
    }

    public static int calcAvgPO() {
        return 0;
    }

    private String number;
    private Date date;
    private Date dateIssued;
    private Date dateDue;
    private int shippingMethod;
    private int terms;
    private BigDecimal total;
    private int status;

    /**
     * @supplierCardinality 0..*
     * @clientCardinality 1
     */
    private MatlResMgmt.DeliveryFromSupplier.DeliveryFromSupplier lnkUnnamed2;

    /**
     * @shapeType AggregationLink
     * @supplierCardinality 1..*
     * @clientCardinality 1
     */
    private PODetail lnkUnnamed4;

    /** @supplierCardinality 1 */
    private IMakePurchaseOrder lnkUnnamed;

    /**
     * @supplierCardinality 0..*
     * @clientCardinality 1
     */
    private ContractSpecification lnkUnnamed1;
}


