На нашем сайте Вы сможете найти готовые курсовые и дипломные работы по программированию
Сейчас работаем

Учет посещаемости занятий (C#, WPF, SQL Server, SQLite)

Задание

Разработать программу с БД для учета посещаемости занятий.

Функционал программы

  • Учет учеников / студентов
  • Учет преподавателей (в разработке)
  • Добавление / изменение / удаление данных
  • Регистрация / авторизация / кабинет пользователя

Фрагмент программного кода

using School.BL.Interfaces;
using School.BL.Models;
using System.Linq;
using System.Windows;

namespace School.UI
{
    /// <summary>
    /// Логика взаимодействия для AddStudentsWindow.xaml
    /// </summary>
    public partial class AddStudentsWindow : Window
    {
        /// <summary>
        /// Список преподавателей
        /// </summary>
        private static readonly string[] Teachers = { "Иванов И.И.", "Петрова А.В.", "Смирнова А.Н." };
        /// <summary>
        /// Поле хранит идентификатор товара 
        /// </summary>
        private int _id;
        public AddStudentsWindow()
        {
            InitializeComponent();
            // Передаем допустимые значения
            cbTeacher.ItemsSource = Teachers;
            // Задаем начальное значение
            cbTeacher.SelectedIndex = 0;
        }

        private void BtnCancel_Click(object sender, RoutedEventArgs e)
        {
            Close();
        }

        private void BtnSave_Click(object sender, RoutedEventArgs e)
        {
            int pass;
            int? visit = null;

            if (string.IsNullOrEmpty(tbStudentName.Text))
            {
                MessageBox.Show("Поле Ученик  не должно быть пустым", "Проверка");
                return;
            }

            if (string.IsNullOrEmpty(tbGroup.Text))
            {
                MessageBox.Show("Поле Класс не может быть пустым", "Проверка");
                return;
            }

            if (!int.TryParse(tbNumberPasses.Text, out pass))
            {
                MessageBox.Show("Кол-во пропусков должно быть целым числом", "Проверка");
                return;
            }

            if (!string.IsNullOrEmpty(tbNumberVisits.Text))
            {
                int intVisit;
                if (!int.TryParse(tbNumberVisits.Text, out intVisit))
                {
                    MessageBox.Show("Кол-во посещений должно быть целым числом", "Проверка");
                    return;
                }

                if (intVisit < pass)
                {
                    MessageBox.Show("Кол-во посещений должно быть больше кол-ва пропусков", "Проверка");
                    return;
                }
                visit = intVisit;
            }

            // Создаем объект для передачи данных
            StudentDto student = new StudentDto();
            // Заполняем объект данными
            student.StudentName = tbStudentName.Text;
            student.NumberPasses = pass;
            student.NumberVisits = visit;
            student.Group = tbGroup.Text;
            student.Teacher = cbTeacher.SelectedItem.ToString();
            // Именно тут запрашиваем реализованную раннее задачу по работе с учениками 
            IStudentProcess studentProcess = ProcessFactory.GetStudentProcess();
            // если это новый объект - сохраняем его
            if (_id == 0)
            {
                // Сохраняем учеников
                studentProcess.Add(student);
            }
            else // иначе обновляем
            {
                // копируем обратно идентификатор объекта
                student.Id = _id;
                // обновляем 
                studentProcess.Update(student);
            }
            // и закрываем форму
            Close();
        }

        public void Load(StudentDto student)
        {
            // если объект не существует, или преподаватель не в списке допустимых, выходим
            if (student == null || !Teachers.Contains(student.Teacher))
                return;
            // сохраняем id ученика 
            _id = student.Id;
            // заполняем визуальные компоненты для отображения данных
            tbStudentName.Text = student.StudentName;
            tbNumberPasses.Text = student.NumberPasses.ToString();
            if (student.NumberVisits.HasValue)
                tbNumberVisits.Text = student.NumberVisits.Value.ToString();
            tbGroup.Text = student.Group;
            cbTeacher.SelectedItem = student.Teacher;
        }
    }
}

Скриншот архива с проектом

Пояснения по запуску программы

Запустить Visual Studio, запустить проект. Ссылка на инструкцию: https://youtu.be/jqsnC23HUm0

Купить 2000,00 
Сразу после оплаты Вы сможете скачать работу и мы вышлем дополнительно файл с работой на электронную почту. Исходник программ Вы сможете отредактировать, как Вам нужно.
Комментарии (0)

admin

/ /

Оставить комментарий

Ты не можешь комментировать

Только зарегистрированые пользователи имеют возможность комментировать работы
Похожие работы
Тип Название Рейтинг Категория Стоимость
Исходник Система учета спортсменов( C#, WPF, SQL Server, SQLite) new 1 .NET (C#) 2 000,00
Исходник Автошкола (C#, WPF, SQL Server, SQLite) new 0 .NET (C#) 1 500,00
Исходник Автомагазин (C#, WPF, SQL Server, SQLite) new 0 .NET (C#) 1 500,00
Исходник Спортивный магазин C# (WPF, SQL Server, SQLite) new 1 .NET (C#) 2 000,00
Исходник Учет продаж (NET 5.0, C#, WPF, SQL Server) -2 .NET (C#) 1 500,00
Купить

2000,00 

Покупается впервые!
Сразу после оплаты Вы сможете скачать работу и мы вышлем дополнительно файл с работой на электронную почту. Исходник программ Вы сможете отредактировать, как Вам нужно.

Заказать через

Учет посещаемости.rar
54719272
Оцени работу

рейтинг

Учет посещаемости занятий (C#, WPF, SQL Server, SQLite)
Программа предназначена для учета посещения учениками / студентами занятий, а также учета преподавателей.
Категория: Образование
Стоимость: 2000,00