Example #1
0
        public async Task <IActionResult> SynchronizeEmployees()
        {
            try
            {
                EmployeeParser parser    = new EmployeeParser(_webHost);
                var            employees = parser.GetEmployees();
                foreach (var emp in employees)
                {
                    var employeeToUpdate = await universityData.Employees.FirstOrDefaultAsync(o => o.FullName.Equals(emp.FullName));

                    if (employeeToUpdate == null)
                    {
                        await universityData.Employees.AddAsync(emp);
                    }
                    else
                    {
                        employeeToUpdate.Departments = emp.Departments;
                        employeeToUpdate.Positions   = emp.Positions;
                        employeeToUpdate.Subjects    = emp.Subjects;
                        await universityData.Medias.RemoveRange(employeeToUpdate.Photos);

                        employeeToUpdate.Photos = emp.Photos;


                        await universityData.Employees.Update(employeeToUpdate);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Content(ex.Message + '\n' + ex.StackTrace));
            }
            universityData.SaveAsync();
            return(RedirectToAction("Index"));
        }
Example #2
0
        public void Parse_WhenPassedDismissDate_EmployeeCorrectDismissDate()
        {
            string[] employeeRowWithDismissDate = { "1", "Some Full Name", "01.05.2016", "22.05.2019", "1,4", "30000" };

            employee = EmployeeParser.Parse(employeeRowWithDismissDate);

            employee.DismissDate.Should().Be(new DateTime(2019, 05, 22));
        }
Example #3
0
        private void LoadData(string filename)
        {
            textBox1.Text = filename;

            DataTable dt = null;

            try
            {
                dt = CsvParser.GetDataTableFromCsv(filename, cbDateFormat.SelectedValue.ToString());
            }
            catch (FormatException e)
            {
                Debug.WriteLine(e);
                MessageBox.Show("Error occurred while parsing data from CSV file!" + e.Message);
                return;
            }
            catch (Exception e)
            {
                Debug.WriteLine(e);
                MessageBox.Show("Error occurred while parsing data from CSV file!");
                return;
            }
            List <Employee> allEmployees = EmployeeParser.GetEmployeesFromDatatable(dt);

            dgvAllEmployees.DataSource = allEmployees;

            var workByPairs = FindWorkTogether(allEmployees);

            var longestWorkByPairs = workByPairs.GroupBy(gr => new { gr.ID1, gr.ID2 }).Select(
                g => new
            {
                ID1        = g.Key.ID1,
                ID2        = g.Key.ID2,
                Days       = g.Sum(s => s.Days), //sum per project for pair of employees
                ProjectIDs = string.Join(",", g.Select(s => s.ProjectID))
            }).OrderByDescending(o => o.Days).ToList();

            dgvLongestWork.DataSource = longestWorkByPairs;

            UpdateDateCellsFormat();
        }
Example #4
0
        public void MaxSalaryTest()
        {
            const string Expected      = "andriy";
            var          director      = new Director(Expected, 12000);
            var          supplyManager = new Manager("vova", 2900);
            var          salesManager  = new Manager("pasha", 4000);

            director.Add(supplyManager);
            director.Add(salesManager);

            var workderX = new Worker("misha", 4320);
            var workderY = new Worker("sasha", 1032);

            var workderA = new Worker("roma", 2020);
            var workderB = new Worker("mark", 3195);

            supplyManager.Add(workderX);
            supplyManager.Add(workderY);

            salesManager.Add(workderA);
            salesManager.Add(workderB);


            M.Interface.IEmployee employee = director;


            var names = new GetNames();

            employee.Accept(names);

            M.EmployeeParser employeeParser = new EmployeeParser();
            string           result         = employeeParser.MaxSalary(names.Result);



            Assert.AreEqual(Expected, result);
        }
 protected void loadData()
 {
     string currentFilter ;
     if (IsPostBack == false)
     {
         Session["emp_filter"] = "jobStatus=1 ";
         currentFilter = "jobStatus=1 ";
     }
     else
         currentFilter = (string)Session["emp_filter"];
     //this.scriptLb.Text = currentFilter;
     EmployeeParser newParser = new EmployeeParser();
     this.dataModel = new EmployeeModel(this.gvEmployees, @".\SQL2008",
          1433, "TSQLFundamentals2008","sa", "123456", "HR.Employees", newParser);
     newParser.DataModel = this.dataModel;
     try
     {
         this.dataModel.resetControl(currentFilter);
         if (this.IsPostBack == false)
             this.loadEmpIDS();
     }
     catch(Exception ex)
     {
         Session["current_error"] = ex.Message;
         Response.Redirect("serverError.aspx");
     }
 }
Example #6
0
 public void SetUp()
 {
     employee = EmployeeParser.Parse(correctEmployeeTableLine);
     parser   = () => EmployeeParser.Parse(invalidEmployeeRow);
 }
Example #7
0
        static void Main(string[] args)
        {
            var director      = new Director("andriy", 12000);
            var supplyManager = new Manager("vova", 2900);
            var salesManager  = new Manager("pasha", 4000);

            director.Add(supplyManager);
            director.Add(salesManager);

            var workderX = new Worker("misha", 4320);
            var workderY = new Worker("sasha", 1032);

            var workderA = new Worker("roma", 2020);
            var workderB = new Worker("mark", 3195);

            supplyManager.Add(workderX);
            supplyManager.Add(workderY);

            salesManager.Add(workderA);
            salesManager.Add(workderB);



            M.Interface.IEmployee employee = director;


            var names = new GetNames();

            employee.Accept(names);

            M.EmployeeParser employeeParser = new EmployeeParser();


            while (true)
            {
                Console.WriteLine("1. Сортировка по належності (у вигляді дерева)\n2. Пошук позиції\n3. Сортировка по позиції\n4. Пошук більної зарплати\n5. Пошук більної заплати ніж у\n0. Вийти\n");
                int           number = Convert.ToInt32(Console.ReadLine());
                List <string> data   = new List <string>();


                if (number == 0)
                {
                    break;
                }


                switch (number)
                {
                case 1:
                    data = employeeParser.SortingDirectSubordination(names.Result);
                    break;

                case 2:
                    data = employeeParser.SearchPosition(names.Result, "Робітник");
                    break;

                case 3:
                    data = employeeParser.SortingPosition(names.Result);
                    break;

                case 4:
                    data = new List <string> {
                        employeeParser.MaxSalary(names.Result)
                    };
                    break;

                case 5:
                    data = employeeParser.OverSalary(names.Result, 4000);
                    break;
                }

                foreach (var d in data)
                {
                    Console.WriteLine(d);
                }
                Console.WriteLine("\n");
            }


            M.Employees employees = new Employees(supplyManager);

            List <M.Interface.IEmployee> test = employees.Subordinate();

            foreach (var d in test)
            {
                Console.WriteLine(d.Name);
            }

            Console.Read();
        }
        protected void loadData()
        {
            EmployeeParser newParser = new EmployeeParser();
            this.dataModel = new EmployeeModel(@".\SQL2008",
                 1433, "TSQLFundamentals2008", "sa", "123456", "HR.Employees", newParser);
            newParser.DataModel = this.dataModel;

            try
            {
                this.dataModel.resetModel("");
            }
            catch (Exception ex)
            {
                Session["current_error"] = ex.Message;
                Response.Redirect("serverError.aspx");
            }

            if (this.IsPostBack == false)
                this.loadEmpIDS();

            if((Request.Params.Get("empid")!=null))
            {
                this.empID = int.Parse(Request.Params.Get("empid").Trim());
                this.newEmpMode = false;
                if (this.IsPostBack == true)
                    return;

                this.loadEmpData();

            }
        }
Example #9
0
 public void SubjectNormalaize_All(string input, string ouput)
 {
     Assert.Equal(ouput, EmployeeParser.NormalizeSubject(input));
 }