| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860 | using Aitex.Core.Util;using Caliburn.Micro.Core;using FurnaceUI.Common;using FurnaceUI.Models;using MECF.Framework.Common.DataCenter;using MECF.Framework.Common.SubstrateTrackings;using MECF.Framework.UI.Client.ClientBase;using System;using System.Collections.Generic;using System.Collections.ObjectModel;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows;using Aitex.Core.RT.Log;using Caliburn.Micro;namespace FurnaceUI.Views.Jobs{    public class CarrierMaterialInformation : PropertyChangedBase    {        private string _no;        public string No        {            get            {                return _no;            }            set            {                _no = value;                NotifyOfPropertyChange("No");            }        }        private string _moduleName;        public string ModuleName        {            get            {                return _moduleName;            }            set            {                _moduleName = value;                NotifyOfPropertyChange("ModuleName");            }        }        private string _waferStauts;        public string WaferStauts        {            get            {                return _waferStauts;            }            set            {                _waferStauts = value;                NotifyOfPropertyChange("WaferStauts");            }        }        private bool _stockerCarrierEnable;        public bool StockerCarrierEnable        {            get            {                return _stockerCarrierEnable;            }            set            {                _stockerCarrierEnable = value;                NotifyOfPropertyChange("StockerCarrierEnable");            }        }        private bool _isSelected;        public bool IsSelected        {            get            {                return _isSelected;            }            set            {                _isSelected = value;                NotifyOfPropertyChange("IsSelected");            }        }        private string _carrierType;        public string CarrierType        {            get            {                return _carrierType;            }            set            {                _carrierType = value;                NotifyOfPropertyChange("CarrierType");            }        }        private string _carrierId;        public string CarrierId        {            get            {                return _carrierId;            }            set            {                _carrierId = value;                NotifyOfPropertyChange("CarrierId");            }        }        private string _waferCount;        public string WaferCount        {            get            {                return _waferCount;            }            set            {                _waferCount = value;                NotifyOfPropertyChange("WaferCount");            }        }        private DateTime _loadTime;        public DateTime LoadTime        {            get            {                return _loadTime;            }            set            {                _loadTime = value;                NotifyOfPropertyChange("LoadTime");            }        }        private string _operatorName;        public string OperatorName        {            get            {                return _operatorName;            }            set            {                _operatorName = value;                NotifyOfPropertyChange("OperatorName");            }        }        private string _slotMap;        public string SlotMap        {            get => _slotMap;            set            {                _slotMap = value;                NotifyOfPropertyChange(nameof(SlotMap));            }        }        public Aitex.Core.Common.WaferInfo[] Wafers { get; set; }        private string _strSlot;        public string StrSlot        {            get => _strSlot;            set            {                _strSlot = value;                NotifyOfPropertyChange(nameof(StrSlot));            }        }        private string _existSlot;        public string ExistSlot        {            get => _existSlot;            set            {                _existSlot = value;                NotifyOfPropertyChange(nameof(ExistSlot));            }        }        private string _loadPortName;        public string LoadPortName        {            get => _loadPortName;            set            {                _loadPortName = value;                if ("LP1" == value)                {                    IsLoadLP1 = true;                    IsLoadLP2 = false;                }                else if ("LP2" == value)                {                    IsLoadLP1 = false;                    IsLoadLP2 = true;                }                else                {                    IsLoadLP1 = true;                    IsLoadLP2 = true;                }                NotifyOfPropertyChange(nameof(LoadPortName));            }        }        private bool _isLoadLP1;        public bool IsLoadLP1        {            get => _isLoadLP1;            set            {                _isLoadLP1 = value;                NotifyOfPropertyChange(nameof(IsLoadLP1));            }        }        private bool _isLoadLP2;        public bool IsLoadLP2        {            get => _isLoadLP2;            set            {                _isLoadLP2 = value;                NotifyOfPropertyChange(nameof(IsLoadLP2));            }        }    }    public class SelectMaterialViewModel : FurnaceModuleUIViewModelBase    {        public string CarrierType { get; set; }        public ObservableCollection<CarrierMaterialInformation> CarrierItemList { get; set; } = new ObservableCollection<CarrierMaterialInformation>();        public ObservableCollection<CarrierMaterialInformation> SelectCarrierItemList { get; set; } = new ObservableCollection<CarrierMaterialInformation>();        [Subscription("Stocker1.LotID")]        public string Stocker1LotID { get; set; }        [Subscription("Stocker2.LotID")]        public string Stocker2LotID { get; set; }        [Subscription("Stocker3.LotID")]        public string Stocker3LotID { get; set; }        [Subscription("Stocker4.LotID")]        public string Stocker4LotID { get; set; }        [Subscription("Stocker5.LotID")]        public string Stocker5LotID { get; set; }        [Subscription("Stocker6.LotID")]        public string Stocker6LotID { get; set; }        [Subscription("Stocker7.LotID")]        public string Stocker7LotID { get; set; }        [Subscription("Stocker8.LotID")]        public string Stocker8LotID { get; set; }        [Subscription("Stocker9.LotID")]        public string Stocker9LotID { get; set; }        [Subscription("Stocker10.LotID")]        public string Stocker10LotID { get; set; }        [Subscription("Stocker11.LotID")]        public string Stocker11LotID { get; set; }        [Subscription("Stocker12.LotID")]        public string Stocker12LotID { get; set; }        [Subscription("Stocker13.LotID")]        public string Stocker13LotID { get; set; }        [Subscription("Stocker14.LotID")]        public string Stocker14LotID { get; set; }        [Subscription("Stocker15.LotID")]        public string Stocker15LotID { get; set; }        [Subscription("Stocker16.LotID")]        public string Stocker16LotID { get; set; }        [Subscription("Stocker17.LotID")]        public string Stocker17LotID { get; set; }        [Subscription("Stocker18.LotID")]        public string Stocker18LotID { get; set; }        public int Stocker1WaferCount { get; set; } = 0;        public int Stocker2WaferCount { get; set; } = 0;        public int Stocker3WaferCount { get; set; } = 0;        public int Stocker4WaferCount { get; set; } = 0;        public int Stocker5WaferCount { get; set; } = 0;        public int Stocker6WaferCount { get; set; } = 0;        public int Stocker7WaferCount { get; set; } = 0;        public int Stocker8WaferCount { get; set; } = 0;        public int Stocker9WaferCount { get; set; } = 0;        public int Stocker10WaferCount { get; set; } = 0;        public int Stocker11WaferCount { get; set; } = 0;        public int Stocker12WaferCount { get; set; } = 0;        public int Stocker14WaferCount { get; set; } = 0;        public int Stocker15WaferCount { get; set; } = 0;        public List<CarrierInfo> carrierlist { get; set; }        public int pointP1Count { get; set; }        public int pointP2Count { get; set; }        public int pointP3Count { get; set; }        public int pointP4Count { get; set; }        public int pointP5Count { get; set; }        public int pointP6Count { get; set; }        public int pointP7Count { get; set; }        public int pointP8Count { get; set; }        public int pointP9Count { get; set; }        public int pointP10Count { get; set; }        public int pointP11Count { get; set; }        public int pointP12Count { get; set; }        public int pointP13Count { get; set; }        public int pointP14Count { get; set; }        public int pointP15Count { get; set; }        public int pointP16Count { get; set; }        public int pointP17Count { get; set; }        public int pointP18Count { get; set; }        public int pointM1Count { get; set; }        public int pointM2Count { get; set; }        public int pointM3Count { get; set; }        public int pointM4Count { get; set; }        public int pointM5Count { get; set; }        public int pointM6Count { get; set; }        public int pointM7Count { get; set; }        public int pointM8Count { get; set; }        public int pointM9Count { get; set; }        public int pointM10Count { get; set; }        public int pointM11Count { get; set; }        public int pointM12Count { get; set; }        public int pointM13Count { get; set; }        public int pointM14Count { get; set; }        public int pointM15Count { get; set; }        public int pointM16Count { get; set; }        public int pointM17Count { get; set; }        public int pointM18Count { get; set; }        public string LoadPJobPara { get; set; }        public SelectMaterialViewModel()        {        }        protected override void OnActivate()        {            base.OnActivate();            CheckChanged(CarrierType);        }        string[] moduleNames = new string[] { "Stocker1", "Stocker2", "Stocker3", "Stocker4", "Stocker5", "Stocker6", "Stocker7", "Stocker8", "Stocker9", "Stocker10", "Stocker11", "Stocker12", "Stocker14", "Stocker15" };        protected override void InvokeAfterUpdateProperty(Dictionary<string, object> data)        {            base.InvokeAfterUpdateProperty(data);            foreach (var item in moduleNames)            {                if (ModuleManager.ModuleInfos.ContainsKey(item))                {                    this.GetType().GetProperty($"{item}WaferCount").SetValue(this, ModuleManager.ModuleInfos[item].WaferManager.Wafers.Where(x => x.WaferStatus != 0).Count());                }            }        }        public void CheckChanged(string type)        {            try            {                CarrierItemList.Clear();                switch (type)                {                    case "P":                        for (int i = 0; i < carrierlist.Count; i++)                        {                            if (!(bool)QueryDataClient.Instance.Service.GetConfig($"System.SetUp.IsStocker{carrierlist[i].StockerIndex}Installed")) continue;                            CarrierMaterialInformation carrierInfo = new CarrierMaterialInformation();                            carrierInfo.No = carrierlist[i].StockerIndex.ToString();                            carrierInfo.ModuleName = $"Stocker{carrierlist[i].StockerIndex}";                            if (carrierlist[i].IsMapped)                            {                                carrierInfo.SlotMap = string.Join("", carrierlist[i].Wafers.Select(x => Convert.ToInt16(x.Status).ToString()).ToArray());                            }                            carrierInfo.Wafers = carrierlist[i].Wafers;                            carrierInfo.CarrierType = carrierlist[i].CarrierType.ToString();                            carrierInfo.CarrierId = carrierlist[i].CarrierId;                            string tempStr = string.Empty;                            var stockerUseSlots = QueryDataClient.Instance.Service.GetData("Scheduler.StockerUseSlots") as Dictionary<string, string>;                            if (stockerUseSlots != null)                            {                                if (stockerUseSlots.TryGetValue(carrierInfo.ModuleName, out string tempValue))                                {                                    tempStr = tempValue;                                }                            }                            if (ModuleManager.ModuleInfos.ContainsKey(carrierlist[i].InternalModuleName.ToString()))                            {                                var tempList = ModuleManager.ModuleInfos[carrierlist[i].InternalModuleName.ToString()].WaferManager.Wafers.Where(x => x.WaferStatus != 0).ToList();                                carrierInfo.WaferCount = tempList.Count().ToString();                                foreach (var item in tempList)                                {                                    var tempWafer = carrierlist[i].Wafers.Where(p => p.WaferID == item.SlotIndex.ToString()).FirstOrDefault();                                    if (tempWafer != null && item.WaferStatus == 1 && !tempStr.Split(',').Contains(item.SlotID.ToString()))                                    {                                        tempWafer.Status = Aitex.Core.Common.WaferStatus.Normal;                                    }                                }                            }                            carrierInfo.LoadTime = carrierlist[i].LoadTime;                            carrierInfo.OperatorName = "admin";                            carrierInfo.Wafers = carrierlist[i].Wafers;                            var carrier = SelectCarrierItemList.Where(x => x.ModuleName == carrierInfo.ModuleName && x.CarrierId == carrierInfo.CarrierId).FirstOrDefault();                            if (carrier != null)                            {                                carrierInfo.StrSlot = carrier.StrSlot;                                carrierInfo.IsSelected = true;                                this.GetType().GetProperty($"pointP{carrierlist[i].StockerIndex.ToString()}Count").SetValue(this, 1);                            }                            else                            {                                carrierInfo.IsSelected = false;                                this.GetType().GetProperty($"pointP{carrierlist[i].StockerIndex.ToString()}Count").SetValue(this, 0);                            }                            CarrierItemList.Add(carrierInfo);                        }                        break;                    case "M":                        for (int i = 0; i < carrierlist.Count; i++)                        {                            if (!(bool)QueryDataClient.Instance.Service.GetConfig($"System.SetUp.IsStocker{carrierlist[i].StockerIndex}Installed")) continue;                            CarrierMaterialInformation carrierInfo = new CarrierMaterialInformation();                            carrierInfo.No = carrierlist[i].StockerIndex.ToString();                            carrierInfo.ModuleName = $"Stocker{carrierlist[i].StockerIndex}";                            carrierInfo.CarrierType = carrierlist[i].CarrierType.ToString();                            carrierInfo.CarrierId = carrierlist[i].CarrierId;                            string tempStr = string.Empty;                            var stockerUseSlots = QueryDataClient.Instance.Service.GetData("Scheduler.StockerUseSlots") as Dictionary<string, string>;                            if (stockerUseSlots != null)                            {                                if (stockerUseSlots.TryGetValue(carrierInfo.ModuleName, out string tempValue))                                {                                    tempStr = tempValue;                                }                            }                            if (ModuleManager.ModuleInfos.ContainsKey(carrierlist[i].InternalModuleName.ToString()))                            {                                var tempList = ModuleManager.ModuleInfos[carrierlist[i].InternalModuleName.ToString()].WaferManager.Wafers.Where(x => x.WaferStatus != 0).ToList();                                carrierInfo.WaferCount = tempList.Count().ToString();                                foreach (var item in tempList)                                {                                    var tempWafer = carrierlist[i].Wafers.Where(p => p.WaferID == item.SlotIndex.ToString()).FirstOrDefault();                                    if (tempWafer != null && item.WaferStatus == 1 && !tempStr.Split(',').Contains(item.SlotID.ToString()))                                    {                                        tempWafer.Status = Aitex.Core.Common.WaferStatus.Normal;                                    }                                }                            }                            carrierInfo.LoadTime = carrierlist[i].LoadTime;                            carrierInfo.OperatorName = "admin";                            carrierInfo.Wafers = carrierlist[i].Wafers;                            var carrier = SelectCarrierItemList.Where(x => x.ModuleName == carrierInfo.ModuleName && x.CarrierId == carrierInfo.CarrierId).FirstOrDefault();                            if (carrier != null)                            {                                carrierInfo.IsSelected = true;                                carrierInfo.StrSlot = carrier.StrSlot;                                this.GetType().GetProperty($"pointM{carrierlist[i].StockerIndex}Count").SetValue(this, 1);                            }                            else                            {                                carrierInfo.IsSelected = false;                                this.GetType().GetProperty($"pointM{carrierlist[i].StockerIndex}Count").SetValue(this, 0);                            }                            CarrierItemList.Add(carrierInfo);                        }                        break;                }            }            catch (Exception e)            {                LOG.Error($"SelectMaterialViewModel e:{e.Message}");                throw;            }        }        public void EditCarrierID(string type, string no)        {            var windowManager = IoC.Get<IWindowManager>();            WaferMapSelectedViewModel waferMapSelectedViewModel = new WaferMapSelectedViewModel();            waferMapSelectedViewModel.WaferType = type;            waferMapSelectedViewModel.WaferNo = no;            CarrierMaterialInformation carr = null;            switch (type)            {                case "P":                    carr = CarrierItemList.FirstOrDefault(x => x.No == no);                    break;                case "SD":                    carr = CarrierItemList.FirstOrDefault(x => x.No == no);                    break;                case "ED":                    carr = CarrierItemList.FirstOrDefault(x => x.No == no);                    break;                case "M1":                    carr = CarrierItemList.FirstOrDefault(x => x.No == no);                    break;                case "M2":                    carr = CarrierItemList.FirstOrDefault(x => x.No == no);                    break;                default:                    break;            }            if (carr == null)                return;            waferMapSelectedViewModel.StrSlots = carr.StrSlot;            waferMapSelectedViewModel.Wafers = carr.Wafers;            waferMapSelectedViewModel.CarrierID = carr.CarrierId;            if ((bool)(windowManager as WindowManager)?.ShowDialogWithTitle(waferMapSelectedViewModel, null, "Wafer Map"))            {                carr.CarrierId = waferMapSelectedViewModel.CarrierID;                carr.WaferCount = waferMapSelectedViewModel.WaferCount;                carr.SlotMap = waferMapSelectedViewModel.SlotMap;                carr.StrSlot = waferMapSelectedViewModel.StrSlots;                carr.ExistSlot = waferMapSelectedViewModel.IsExistChecked ? "Exist" : "None";                int count = 0;                int.TryParse(waferMapSelectedViewModel.WaferCount, out count);                if (count != 0)                {                    carr.IsSelected = true;                }                else                {                    carr.IsSelected = false;                }            }            else            {                carr.IsSelected = false;            }        }        //public void EditCarrierID(string type, string no)        //{        //    if (type == "P" || type == "None")        //    {        //        switch (no)        //        {        //            case "1":        //                pointP1Count++;        //                if (pointP1Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "1").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "1").FirstOrDefault().IsSelected = true;        //                break;        //            case "2":        //                pointP2Count++;        //                if (pointP2Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "2").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "2").FirstOrDefault().IsSelected = true;        //                break;        //            case "3":        //                pointP3Count++;        //                if (pointP3Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "3").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "3").FirstOrDefault().IsSelected = true;        //                break;        //            case "4":        //                pointP4Count++;        //                if (pointP4Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "4").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "4").FirstOrDefault().IsSelected = true;        //                break;        //            case "5":        //                pointP5Count++;        //                if (pointP5Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "5").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "5").FirstOrDefault().IsSelected = true;        //                break;        //            case "6":        //                pointP6Count++;        //                if (pointP6Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "6").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "6").FirstOrDefault().IsSelected = true;        //                break;        //            case "7":        //                pointP7Count++;        //                if (pointP7Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "7").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "7").FirstOrDefault().IsSelected = true;        //                break;        //            case "8":        //                pointP8Count++;        //                if (pointP8Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "8").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "8").FirstOrDefault().IsSelected = true;        //                break;        //            case "9":        //                pointP9Count++;        //                if (pointP9Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "9").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "9").FirstOrDefault().IsSelected = true;        //                break;        //            case "10":        //                pointP10Count++;        //                if (pointP10Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "10").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "10").FirstOrDefault().IsSelected = true;        //                break;        //            case "11":        //                pointP11Count++;        //                if (pointP11Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "11").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "11").FirstOrDefault().IsSelected = true;        //                break;        //            case "12":        //                pointP12Count++;        //                if (pointP12Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "12").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "12").FirstOrDefault().IsSelected = true;        //                break;        //            case "13":        //                pointP13Count++;        //                if (pointP13Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "13").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "13").FirstOrDefault().IsSelected = true;        //                break;        //            case "14":        //                pointP14Count++;        //                if (pointP14Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "14").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "14").FirstOrDefault().IsSelected = true;        //                break;        //            case "15":        //                pointP15Count++;        //                if (pointP15Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "15").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "15").FirstOrDefault().IsSelected = true;        //                break;        //            case "16":        //                pointP16Count++;        //                if (pointP16Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "16").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "16").FirstOrDefault().IsSelected = true;        //                break;        //            case "17":        //                pointP17Count++;        //                if (pointP17Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "17").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "17").FirstOrDefault().IsSelected = true;        //                break;        //            case "18":        //                pointP18Count++;        //                if (pointP18Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "18").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "18").FirstOrDefault().IsSelected = true;        //                break;        //            default:        //                break;        //        }        //    }        //    else if (type.StartsWith(ConstantsCommon.M) || type == "None")        //    {        //        switch (no)        //        {        //            case "1":        //                pointM1Count++;        //                if (pointM1Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "1").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "1").FirstOrDefault().IsSelected = true;        //                break;        //            case "2":        //                pointM2Count++;        //                if (pointM2Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "2").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "2").FirstOrDefault().IsSelected = true;        //                break;        //            case "3":        //                pointM3Count++;        //                if (pointM3Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "3").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "3").FirstOrDefault().IsSelected = true;        //                break;        //            case "4":        //                pointM4Count++;        //                if (pointM4Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "4").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "4").FirstOrDefault().IsSelected = true;        //                break;        //            case "5":        //                pointM5Count++;        //                if (pointM5Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "5").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "5").FirstOrDefault().IsSelected = true;        //                break;        //            case "6":        //                pointM6Count++;        //                if (pointM6Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "6").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "6").FirstOrDefault().IsSelected = true;        //                break;        //            case "7":        //                pointM7Count++;        //                if (pointM7Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "7").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "7").FirstOrDefault().IsSelected = true;        //                break;        //            case "8":        //                pointM8Count++;        //                if (pointM8Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "8").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "8").FirstOrDefault().IsSelected = true;        //                break;        //            case "9":        //                pointM9Count++;        //                if (pointM9Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "9").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "9").FirstOrDefault().IsSelected = true;        //                break;        //            case "10":        //                pointM10Count++;        //                if (pointM10Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "10").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "10").FirstOrDefault().IsSelected = true;        //                break;        //            case "11":        //                pointM11Count++;        //                if (pointM11Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "11").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "11").FirstOrDefault().IsSelected = true;        //                break;        //            case "12":        //                pointM12Count++;        //                if (pointM12Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "12").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "12").FirstOrDefault().IsSelected = true;        //                break;        //            case "13":        //                pointM13Count++;        //                if (pointM13Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "13").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "13").FirstOrDefault().IsSelected = true;        //                break;        //            case "14":        //                pointM14Count++;        //                if (pointM14Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "14").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "14").FirstOrDefault().IsSelected = true;        //                break;        //            case "15":        //                pointM15Count++;        //                if (pointM15Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "15").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "15").FirstOrDefault().IsSelected = true;        //                break;        //            case "16":        //                pointM16Count++;        //                if (pointM16Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "16").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "16").FirstOrDefault().IsSelected = true;        //                break;        //            case "17":        //                pointM17Count++;        //                if (pointM17Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "17").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "17").FirstOrDefault().IsSelected = true;        //                break;        //            case "18":        //                pointM18Count++;        //                if (pointM18Count % 2 == 0)        //                    CarrierItemList.Where(s => s.No == "18").FirstOrDefault().IsSelected = false;        //                else        //                    CarrierItemList.Where(s => s.No == "18").FirstOrDefault().IsSelected = true;        //                break;        //            default:        //                break;        //        }        //    }        //}        public void EXECCmd()        {            SelectCarrierItemList.Clear();            foreach (CarrierMaterialInformation item in CarrierItemList)            {                if (item.IsSelected)                    SelectCarrierItemList.Add(item);            }            ((Window)GetView()).DialogResult = true;        }        public void ClosedCmd()        {            (GetView() as Window).Close();        }    }}
 |