⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 route.java

📁 排产系统
💻 JAVA
字号:
package com.power.pipeengine.Entity;

import java.util.*;
import com.power.pipeengine.InputData.*;

public class Route extends com.power.pipeengine.Entity.Entity
{
    private int _routeID;
	private String _productID = null;
	private int _facilityID;
	private int _srcingFacilityID;
	private int _destFacilityID;
	private int _effectiveBucket;
	private double _cycleTime = 0;
	private double _yield = 0;
	private double _costPerStart = 0.0;
        private double _numOfOperators = 1;
        private Route next; //route that follows this
        private Vector prev = new Vector(); //route(s) that are before this

	public Route( int rID,
				  String prod,
				  int fID,
				  int sfID,
				  int dfID,
				  int eb,
				  double ct,
				  double yld,
				  double cps ) {
		_routeID = rID;
		_productID = prod;
		_facilityID = fID;
		_srcingFacilityID = sfID;
		_destFacilityID = dfID;
		_effectiveBucket = eb;
		_cycleTime = ct;
		_yield = yld;
		_costPerStart = cps;
	}

    public void setNumOfOperators( double dbl ) {
        _numOfOperators = dbl;
    }

    public void setNextRoute( Route rte ) {
        next = rte;
    }

    public Route getNextRoute() {
        return next;
    }

    public void addPrevRoute( Route rte ) {
        prev.add( rte );
    }

    public Vector getPrevRoutes() {
        return prev;
    }

    public boolean isAPrevRoute( int rteID ) {
      if( null == prev || prev.size() == 0 ) {
        return false;
      }

      for( int i=0; i<prev.size(); i++ ) {
        Route r = (Route) prev.elementAt( i );
        if( r.getRouteID() == rteID ) {
          return true;
        } else {
          return r.isAPrevRoute( rteID );
        }
      }

      return false;
    }

    public double getNumOfOperators() {
        return _numOfOperators;
    }

	public int getRouteID() {
		return _routeID;
	}

	public int getFacilityID() {
		return _facilityID;
	}

	public Facility getFacility() {
		Facilities facilities = DataModel.getInstance().getFacilities();
		return facilities.getFacility( _facilityID );
	}

	public int getSrcingFacilityID() {
		return _srcingFacilityID;
	}

	public Facility getSrcingFacility() {
		Facilities facilities = DataModel.getInstance().getFacilities();
		return facilities.getFacility( _srcingFacilityID );
	}

	public int getDestFacilityID() {
		return _destFacilityID;
	}

	public int getEffectiveBucket() {
		return _effectiveBucket;
	}

	public double getCycleTime() {
		return _cycleTime;
	}

	public double getYield() {
		return _yield;
	}

	public double getCostPerStart() {
		return _costPerStart;
	}

	public String getProductID() {
		return _productID;
	}

	public Product getProduct() {
		Products products = DataModel.getInstance().getProducts();
		return products.getProduct( _facilityID, _productID );
	}


	public int getLastStartBucketHavingOuts() {
		PIPECalendar cal = DataModel.getInstance().getCalendar();
		Vector buckets = DataModel.getInstance().getCalendar().getBuckets();
		int numBuckets = DataModel.getInstance().getCalendar().getTotalNumOfBuckets();

		double remCycleTime = _cycleTime - getFacility().getNumWorkingDaysForBucket( numBuckets )/2;
		if( remCycleTime < 0 ) return numBuckets;

		int i=numBuckets-1;

		for( ; i>0; i-- ) {
			Bucket b = (Bucket) buckets.elementAt( i-1 );
			remCycleTime -= getFacility().getNumWorkingDaysForBucket( i-1 );
			if( remCycleTime < 0 ) break;
		}

		return i;
	}

	public void print() {
		System.out.println( _routeID + "," +
							_productID + "," +
							_facilityID + "," +
							_srcingFacilityID + "," +
							_destFacilityID + "," +
							_effectiveBucket + "," +
							_cycleTime + "," +
							_yield + "," +
							_costPerStart + "," +
							getVariableCode() );
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -