Exemplo n.º 1
0
        public MatrixLoadViewModel()
        {
            Matrix = new Matrixx();

            LoadMatrixCommand  = new ViewModelCommand(LoadMatrix, true);
            EditCommand        = new ViewModelCommand(edit, true);
            ViewAllCommand     = new ViewModelCommand(ViewAll, true);
            SaveContextCommand = new ViewModelCommand(SaveContext, true);
            OpenFromDbCommand  = new ViewModelCommand(OpenFromDb, true);
        }
Exemplo n.º 2
0
        private void OpenFromDb()
        {
            OpenFromDbView openFromDb = new OpenFromDbView();
            Matrixx        copy       = Matrix.Copy();
            bool?          result     = openFromDb.ShowDialog();

            if (result.HasValue && (result == true))
            {
                if ((openFromDb.DataContext as OpenFromDbViewModel)?.SelectMatrixx != null)
                {
                    var qeryF = ((OpenFromDbViewModel)openFromDb.DataContext).SelectMatrixx;
                    Matrix = context.MatrixxDbSet.Find(qeryF.MatrixxId);
                }
                NotifyPropertyChanged("Matrix");
            }
            else
            {
                Matrix = copy;
                NotifyPropertyChanged("Matrix");
            }
        }
Exemplo n.º 3
0
        public void Run()
        {
            bool loop = true;

            while (loop)                                                                                                                                             // Loop indefinitely
            {
                Console.WriteLine(" Please enter your choice! \n 1. Save your name \n 2. Count numbers \n 3. What is my name? \n 4. Exit program \n 5. PLEASE NO!"); // Menu
                string option = Console.ReadLine();                                                                                                                  // Get string from user

                switch (option)                                                                                                                                      // switch statement
                {
                case "1":
                    saveName();
                    break;

                case "2":
                    countNumbers();
                    break;

                case "3":
                    askName(name);
                    break;

                case "4":
                    loop = exit(loop);
                    break;

                case "5":
                    Matrixx matrixx = new Matrixx();
                    matrixx.Main();
                    break;

                default:
                    Console.WriteLine("please select an option");
                    break;
                }
            }
        }
Exemplo n.º 4
0
        private void LoadMatrix(object param)
        {
            string         str    = "txt";
            string         filter = "GCS Skill files (*." + str + ")| *." + str + "| All Files(*.*) | *.* ";
            OpenFileDialog dlg    = new OpenFileDialog();

            dlg.InitialDirectory = @"C:\Users\Derdan\Dropbox\Work\Matrix";
            dlg.Filter           = filter;
            dlg.ShowDialog();
            if (dlg.FileName != "")
            {
                matrixFilePatch = dlg.FileName;
                NotifyPropertyChanged("MatrixFilePatch");

                Encoding enc = Encoding.GetEncoding(1251);

                string[]      stringFromFile = File.ReadAllLines(matrixFilePatch, enc);
                StringBuilder strResult      = new StringBuilder();
                foreach (var itemStringFromFile in stringFromFile)
                {
                    strResult.Append(itemStringFromFile);
                    strResult.Append('\n');
                }
                var date      = Regex.Match(strResult.ToString(), @"(?<=Дата и время взвешивания: )(.*)");
                var dateee    = Convert.ToDateTime(date.ToString());
                var mtrNumVar = Regex.Match(strResult.ToString(), @"(?<=Номер взвешивания:)\W\d*(?=;)").ToString();

                int mtrNum        = Convert.ToInt32(mtrNumVar);
                var matrixContext = context.MatrixxDbSet.FirstOrDefault(p => p.MatrixNum == mtrNum);

                if (matrixContext != null)
                {
                    matrixContext.MatrixDate = dateee;
                    matrixContext.MatrixType = (string)param;
                    var vagonsFromMatrix = Regex.Matches(strResult.ToString(), @":.*:.*:.*:.*:");

                    foreach (var item in vagonsFromMatrix)
                    {
                        var spr    = item.ToString().Split(':');
                        int vgnNum = Convert.ToInt32(spr[1]);

                        int?vagnum = null;

                        if (Regex.IsMatch(spr[3], @"\d{8}"))
                        {
                            vagnum = Convert.ToInt32(spr[3]);
                        }

                        var matrWgn = matrixContext.MatrixWagons.First(p => p.WagonNumberPP == vgnNum);
                        matrWgn.WagonNumberMatrix = vagnum;
                        matrWgn.WagonNumberPP     = Convert.ToInt32(spr[1]);
                        matrWgn.Speed             = spr[2];
                        matrWgn.Weight            = spr[4];
                    }
                    Matrix = matrixContext;
                    NotifyPropertyChanged("Matrix");
                    context.SaveChanges();
                }
                else
                {
                    Matrixx mtr = new Matrixx();
                    mtr.MatrixDate = dateee;
                    mtr.MatrixNum  = mtrNum;
                    mtr.MatrixType = (string)param;

                    var vagons = Regex.Matches(strResult.ToString(), @":.*:.*:.*:.*:");
                    foreach (var item in vagons)
                    {
                        var spr = item.ToString().Split(':');

                        MatrixWagon mtrwgn = new MatrixWagon();
                        mtrwgn.WagonNumberPP = Convert.ToInt32(spr[1]);
                        mtrwgn.Speed         = spr[2].Trim();
                        mtrwgn.Weight        = spr[4].Trim();

                        int vagnum;
                        if (Regex.IsMatch(spr[3], @"\d{8}"))
                        {
                            vagnum = Convert.ToInt32(spr[3]);
                            Wagon insertWag = context.WagonDbSet.FirstOrDefault(p => p.Nwag == vagnum);
                            if (insertWag == null)
                            {
                                Wagon wags = new Wagon
                                {
                                    Nwag   = Convert.ToInt32(vagnum),
                                    Ownerc = string.Empty,
                                    Gp     = string.Empty,
                                    Tara   = string.Empty
                                };
                                context.WagonDbSet.Add(wags);
                            }

                            mtrwgn.WagonNumberMatrix = vagnum;
                        }
                        mtr.MatrixWagons.Add(mtrwgn);
                    }
                    Matrix = mtr;
                    NotifyPropertyChanged("Matrix");
                    context.MatrixxDbSet.Add(mtr);
                    context.SaveChanges();
                }
            }
        }