Содержание архива
- Программа на C# (WPF) + база данных Sql Server
- Отчет на 81 страницу (уникальность 80%+)
Техническое задание
🛠️ Технологический стек:
- WPF
- C#
- SQLServer
- Паттерн MVVM
📋 Функциональные требования:
🔑 Система авторизации пользователей
- Аутентификация по логину и паролю
- Роли пользователей:
- Администратор (Бригадир): Полный доступ к функционалу системы
- Сотрудник: Ограниченный функционал (ввод данных, о произведенной продукции в течении рабочего дня, просмотр информации, о количестве произведенного продукта, количестве отработанных часов, заработной плате за день и месяц)
👔 Роль администратора
🏗️ Основной функционал:
- Раздел «Производство»
- Просмотр данных по всем сотрудникам (количеству отработанных часов и произведенной продукции за день, месяц)
- Выбор ФИО сотрудника (возможность поиска по ФИО)Ввод и редактирование количества отработанных часов сотрудниками
- Ввод и редактирование количества квадратных метров произведенной продукции
Раздел «Сотрудники»:
- Управление данными сотрудников:
- Добавление нового сотрудника
- (ФИО, Телефон, Должность, Ставка за час работы)
- Редактирование данных сотрудника
- Удаление сотрудника
- (возможность поиска по ФИО)
Раздел «Продукция»:
- Работа с типами продукции:
- Возможность добавления новых типов продукции
- Возможность указания объема у продукта в метрах
- Возможность указания стоимости за метр
Раздел «Отчёты»
- Формирование отчетов по каждому сотруднику:
- За день, месяц
- Функционал печати отчетов на листах A4
- Выгрузка отчётов в Excel или PDF
- Кнопка завершение сеанса (выход на login screen)
🛠️ Роль сотрудника
💼 Основной функционал:
- Работа с продукцией:
- Возможность выбора типа продукции из списка
- Ввод количества произведенного продукта
- Кнопка Ввод данных, которая сохраняет данные в систему
Просмотр информации по результатам:
- Отображение данных:
- ФИО сотрудника
- Количество произведенной продукции за день
- Количество отработанных часов (по дефолту 8, если не указанно другое администратором)
- Итоговая стоимость произведенных работ за день и общая за месяц.
- Кнопка завершение сеанса (выход на login screen)
На главной странице кнопка «Выход» - закрытие приложения
Содержание отчета к программе (Отчет 81 страница)
Фрагмент программного кода (расчет заработной платы сотрудника)
count_product_day = Math.Round(double.TryParse(table.Rows[0][0].ToString(), out double _count_product_day) ? _count_product_day : 0, 2); count_hour_work_day = int.TryParse(table.Rows[0][1].ToString(), out int _count_hour_work_day) ? _count_hour_work_day : 8; cost_work_day = count_hour_work_day * ThisEmployee.rate_per_hour; cost_work_month = (double.TryParse(table.Rows[0][2].ToString(), out double _hour30) ? _hour30 : 0) * ThisEmployee.rate_per_hour; if (!int.TryParse(table.Rows[0][1].ToString(), out int __count_hour_work_day)) cost_work_month += count_hour_work_day;
-