Beispiel #1
0
 public ToolBar(
     string shopID,
     string eqpId,
     string productId,
     string processId,
     string layer,
     string toolID,
     string stepId,
     string lotId,
     DateTime startTime,
     DateTime endTime,
     int qty,
     EqpState state,
     EqpMaster.Eqp info,
     DataRow dispatchingInfo = null,
     bool isGhostBar         = false)
     : base(startTime, endTime, qty, qty, state)
 {
     this.ShopID          = shopID;
     this.EqpId           = eqpId;
     this.ProductId       = productId;
     this.ProcessId       = processId;
     this.Layer           = layer;
     this.ToolID          = toolID;
     this.StepId          = stepId;
     this.LotId           = lotId;
     this.EqpInfo         = info;
     this.DispatchingInfo = dispatchingInfo;
     this.IsGhostBar      = isGhostBar;
 }
Beispiel #2
0
        public object TryGetItem(EqpMaster.Eqp eqpInfo, string shopId, string toolID, string stepID = "-")
        {
            string eqpId = eqpInfo.EqpID;

            string key = string.Empty;

            if (this.IsOnlyToolMode)
            {
                key = CommonHelper.CreateKey(shopId, toolID);
            }
            else
            {
                key = CommonHelper.CreateKey(eqpId, toolID);
            }

            GanttInfo info;

            if (_table.TryGetValue(key, out info) == false)
            {
                info = new GanttInfo(eqpInfo, shopId, toolID, 0);
                _table.Add(key, info);
            }

            return(info);
        }
Beispiel #3
0
 public ToolSchedInfo(
     string shopID,
     string eqpId,
     string productId,
     string processId,
     string layer,
     string toolID,
     string eqpGroup,
     string stepId,
     string lotId,
     DateTime startTime,
     DateTime endTime,
     DateTime tkInTime,
     DateTime tkOutTime,
     int qty,
     EqpState state,
     EqpMaster.Eqp eqpInfo)
 {
     this.ShopID    = shopID;
     this.EqpId     = eqpId;
     this.ProductId = productId;
     this.ProcessId = processId;
     this.Layer     = layer;
     this.ToolId    = toolID;
     this.EqpGroup  = eqpGroup;
     this.StepId    = stepId;
     this.LotId     = lotId;
     this.StartTime = startTime;
     this.EndTime   = endTime;
     this.TkInTime  = tkInTime;
     this.TkOutTime = tkOutTime;
     this.Qty       = qty;
     this.State     = state;
     this.EqpInfo   = eqpInfo;
 }
Beispiel #4
0
 public GanttInfo(EqpMaster.Eqp eqpInfo, string shopID, string toolID, int layerStdStepSeq = int.MaxValue)
     : base()
 {
     this.EqpInfo      = eqpInfo;
     this.ShopID       = shopID;
     this.ToolID       = toolID;
     this.LayerSortSeq = layerStdStepSeq;
 }
Beispiel #5
0
        public bool TryGetValidEqp(string eqpId, out EqpMaster.Eqp eqp)
        {
            if (this.ValidEqps.TryGetValue(eqpId, out eqp))
            {
                return(true);
            }

            return(false);
        }
Beispiel #6
0
        public DispatchingInfoViewPopup(IServiceProvider serviceProvider, IExperimentResultItem result, DataRow dispRow, EqpMaster.Eqp eqpInfo, List <EqpGanttChartData.PresetInfo> presetList)
        {
            InitializeComponent();

            _serviceProvider = serviceProvider;
            _result          = result;

            _row        = dispRow;
            _eqpInfo    = eqpInfo;
            _presetList = presetList;

            SetControl();
            Query();
        }
Beispiel #7
0
        private void DoAddItem(
            GanttInfo info,
            string productId,
            string processId,
            string layer,
            string stepId,
            string lotId,
            DateTime startTime,
            DateTime endTime,
            int qty,
            EqpState state,
            EqpMaster.Eqp eqpInfo,
            DataRow dispatchingInfo)
        {
            string shopID = info.ShopID;
            string eqpId  = info.EqpID;
            string toolID = info.ToolID;

            ToolBar currentBar = new ToolBar(
                shopID,
                eqpId,
                productId,
                processId,
                layer,
                toolID,
                stepId,
                lotId,
                startTime,
                endTime,
                qty,
                state,
                eqpInfo,
                dispatchingInfo,
                false
                );

            var barKey = state != EqpState.DOWN ? currentBar.BarKey : "DOWN";

            if (barKey != string.Empty)
            {
                info.AddItem(barKey, currentBar, this.IsOnlyToolMode);
            }
        }
Beispiel #8
0
 public virtual void AddItem(
     EqpMaster.Eqp eqpInfo,
     string shopID,
     string toolID,
     string productId,
     string processId,
     string layer,
     string stepId,
     string lotId,
     DateTime startTime,
     DateTime endTime,
     DateTime tkInTime,
     DateTime tkOutTime,
     DateTime nextStateStartTime,
     int qty,
     EqpState state,
     DataRow dispatchingInfo = null
     )
 {
 }
        private void gridView1_DoubleClick(object sender, EventArgs e)
        {
            GridView    view = (GridView)sender;
            Point       pt   = view.GridControl.PointToClient(Control.MousePosition);
            GridHitInfo info = view.CalcHitInfo(pt);

            if (info.InRowCell == false)
            {
                return;
            }

            DataRow selectRow = gridView1.GetFocusedDataRow();

            if (selectRow == null)
            {
                return;
            }

            string shopID   = selectRow.GetString(DaData.Schema.SHOP_ID);
            string eqpID    = selectRow.GetString(DaData.Schema.EQP_ID);
            string subEqpID = selectRow.GetString(DaData.Schema.SUB_EQP_ID);

            string dispatchTimeStr = selectRow.GetString(DaData.Schema.DISPATCHING_TIME);

            DateTime dispatchTime = DateHelper.StringToDateTime(dispatchTimeStr);

            DaData.DispatchingInfo resultInfo = _infos.Where(t => t.ShopID == shopID && t.EqpID == eqpID &&
                                                             t.SubEqpID == subEqpID && t.DispatchingTime == dispatchTime).FirstOrDefault();

            if (resultInfo == null)
            {
                return;
            }

            EqpMaster.Eqp eqp = this.EqpMgr.FindEqp(eqpID);

            DispatchingInfoViewPopup dialog = new DispatchingInfoViewPopup(this.ServiceProvider, _result,
                                                                           resultInfo.DispatchInfoRow, eqp, _presetList);

            dialog.Show();
        }
Beispiel #10
0
        public override void  AddItem(
            EqpMaster.Eqp eqpInfo,
            string shopID,
            string toolID,
            string productId,
            string processId,
            string layer,
            string stepId,
            string lotId,
            DateTime startTime,
            DateTime endTime,
            DateTime tkInTime,
            DateTime tkOutTime,
            DateTime nextStateStartTime,
            int qty,
            EqpState state,
            DataRow dispatchingInfo = null)
        {
            GanttInfo info = (GanttInfo)TryGetItem(eqpInfo, shopID, toolID, stepId);

            //BUSY
            DoAddItem(info, productId, processId, layer, stepId, lotId,
                      startTime, endTime, qty, state, eqpInfo, dispatchingInfo);

            //IDLE RUN
            DateTime barStartTime = endTime;
            DateTime barEndTime   = tkOutTime;

            if (barEndTime > nextStateStartTime)
            {
                barEndTime = nextStateStartTime;
            }

            if (barStartTime < barEndTime)
            {
                DoAddItem(info, productId, processId, layer, stepId, lotId,
                          barStartTime, barEndTime, 0, EqpState.IDLERUN, eqpInfo, dispatchingInfo);
            }
        }