예제 #1
0
파일: MyExpense.cs 프로젝트: fd-sp/Wee1Test
        public void LoadFromFile(string fileName, MyExpense myExpense)
        {
            var manager            = new Manager();
            var operationalManager = new OperationalManager();
            var CEO = new CEO();

            try
            {
                using (StreamReader reader = File.OpenText($"C:\\Users\\WORK\\Desktop\\MyFolder\\{fileName}"))
                {
                    string   myLine = Console.ReadLine();
                    string[] data   = myLine.Split(';');

                    myExpense.Data         = Convert.ToDateTime(data[0]);
                    myExpense.Categoria    = data[1];
                    myExpense.Descrizione  = data[2];
                    myExpense.ImportoSpesa = Convert.ToInt32(data[3]);
                    reader.Close();

                    manager.SetNextInLine(operationalManager).SetNextInLine(CEO);
                    string result = manager.Approve(myExpense.ImportoSpesa);
                    if (result.Equals("RESPINTA;-;-"))
                    {
                        string[] denial = result.Split(';');
                        myExpense.Approvazione    = denial[0];
                        myExpense.LvlApprovazione = denial[1];
                        myExpense.ImportoRimborso = denial[2];
                    }
                    else
                    {
                        string[] approved = result.Split(';');
                        myExpense.Approvazione    = approved[0];
                        myExpense.LvlApprovazione = approved[1];
                        myExpense.ImportoRimborso = Convert.ToString(MyFactory.ExpenseFactory(myExpense.Categoria, myExpense.ImportoSpesa));
                    }
                }
            }
            catch (IOException ex)
            {
                Console.WriteLine(ex.Message);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }