示例#1
0
        /// <summary>
        /// Сохранение введеной смены
        /// </summary>
        private void SetWorkedTimeToTimetable()
        {
            //проходим по каждой записи
            //foreach (DataGridViewRow row in dataGridView1.Rows)
            //{
            object rowValue = dataGridView1.CurrentRow.Cells[0].Value;       //ТН работника

            if (rowValue != null)
            {
                Person person = PersonProxy.SearchPersonById(int.Parse(rowValue.ToString()));     //текущий работник
                Dictionary <DateTime, string> timeWorked = new Dictionary <DateTime, string>();   //пара Дата-Время

                for (int i = 2; i < dataGridView1.ColumnCount - 1; i++)
                {
                    object timeValue = dataGridView1.CurrentRow.Cells[i].Value;
                    if (timeValue != null)
                    {
                        DateTime date = new DateTime(int.Parse(Year), Month, dataGridView1.CurrentRow.Cells[i].ColumnIndex - 1).Date;
                        timeWorked.Add(date, timeValue.ToString());     //добавляем дату и отработанное время
                        PersonProxy.SetWorkingTime(timeWorked, person); //отправляем данные на обработку
                    }
                }
                //}
            }
        }
示例#2
0
        private void filterForm_PersonSelected(object sender, FilterEventArgs e)
        {
            if (e is FilterEventArgs)
            {
                FilterEventArgs filterEventArgs = e as FilterEventArgs;
                Person          person          = PersonProxy.SearchPersonById(filterEventArgs.ID);

                dataGridView1.Rows.Add(person.ID, person.LastName + " " + person.FirstName + " " + person.Patronymic);
            }
        }
示例#3
0
        /// <summary>
        /// Заполнение таблицы смен
        /// </summary>
        private void FillTheShifts()
        {
            //Проходим каждый ряд работника
            foreach (DataGridViewRow row in dataGridView1.Rows)
            {
                if (row.Cells[0].Value != null)
                {
                    Person person = PersonProxy.SearchPersonById(int.Parse(row.Cells[0].Value.ToString()));     //текущий работник

                    dataGridView2.DataSource = NetProxy.GetShifts(person, int.Parse(Year), Month);

                    IEnumerable <Net> shifts = NetProxy.GetShifts(person, int.Parse(Year), Month);   //список всех отработанных дней

                    //проходим по каждой смене
                    foreach (Net shift in shifts)
                    {
                        foreach (DataGridViewColumn column in dataGridView1.Columns)
                        {
                            //сверяем отработанную дату с датой, введеной в таблицу
                            if (column.HeaderText.Contains(' '))
                            {
                                string headerDate = column.HeaderText.Split(' ')[0];
                                if (headerDate.Length <= 2)
                                {
                                    if (int.Parse(headerDate) == shift.DateWorked.Day)
                                    {
                                        //если дата совпадает - вводим значение
                                        row.Cells[column.Index].Value = shift.TimeWorked;
                                    }
                                }
                            }
                        }
                    }

                    CountTotalTime();
                    person = null;
                }
            }
        }