Example #1
0
        private void moveDownCmdHandler()
        {
            int?cnt = SelectedWafers?.Count;

            if (cnt == null || cnt <= 0)
            {
                return;
            }

            // Remove from list
            List <Wafer> moveWafers = GetAscendingListOfWafersBySlot(SelectedWafers);

            if (moveWafers.Last().Slot == "1")
            {
                return;
            }

            moveWafers.Reverse();
            moveWafers.ForEach(wafer =>
            {
                WaferList.Remove(wafer);
                WaferList.Insert(MAXROWS - Int32.Parse(wafer.Slot) + 1, wafer);
            });


            RenumberWafersHandler(null);
            Messenger.Default.Send(new SelectedWafersInGridMessage(moveWafers));
        }
Example #2
0
        //private void UpdateWaferStatus(string newStatus)
        //{
        //    string testStatus = newStatus.ToUpper();
        //    ObservableCollection<Wafer> currentWafers = new ObservableCollection<Wafer>(Port1Wafers);
        //    for (int i = 0; i < currentWafers.Count; ++i)
        //    {
        //        if (!string.IsNullOrEmpty(currentWafers[i].WaferNo) && !currentWafers[i].Status.Contains("Completed"))
        //        {
        //            if (testStatus.Contains("ABORT"))
        //                currentWafers[i].Status += "-" + newStatus;
        //            else
        //                currentWafers[i].Status = newStatus;
        //        }
        //    }
        //    Port1Wafers = new ObservableCollection<Wafer>(currentWafers);
        //}

        private void deleteLotMsgHandler(DeleteLotMessage msg)
        {
            if (doPortCheck && msg.PortNo != thisPortNo)
            {
                return;
            }

            var goodLotList = WaferList.Where(w => !string.IsNullOrEmpty(w.ContainerName) && !w.ContainerName.Equals(msg.LotToDelete)).ToList();

            WaferList = new ObservableCollection <Wafer>();
            AddWafersToGridMsgHandler(new AddWafersToGridMessage(msg.PortNo, goodLotList.ToList()));
        }
Example #3
0
        private void MoveWafersHandler(MoveWafersMessage msg)
        {
            bool  movedOne  = false;
            int   idxToMove = MAXROWS - msg.SlotToMove;
            Wafer mtWafer   = new Wafer();
            // Remove top 1 if moving up
            int topIdx = 0;

            do
            {
                if (string.IsNullOrEmpty(WaferList[topIdx].ContainerName))
                {
                    WaferList.RemoveAt(topIdx);
                    movedOne = true;
                }
            } while (!movedOne && ++topIdx < idxToMove);
            if (movedOne)
            {
                WaferList.Insert(idxToMove, mtWafer);
                RenumberWafersHandler(null);
                RaisePropertyChanged("Port1Wafers");
            }
        }