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

АИС Барбершоп C#, WPF, PostgreSQL, EntityFramework

Задание

Разработать автоматизированную информационную систему контроля и учета рабочего времени и предоставленных услуг для барбершопа.

Технологии: C#, WPF (.NET 6) + MVVM, PostgreSQL + EntityFramework.

Для симпатичного интерфейса подключен пакет HandyControl, обеспечивающий современный вид элементов управления на интерфейсе пользователя.

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

Возможности администратора:

  • Ведение списка администраторов, барберов и клиентов
  • Учет товаров, включаемых в заказ
  • Управление услугами для 3-ех уровней мастерства барбера со своей процентной ставкой: Младший мастер (15%), Мастер (25%), Старший мастер (35%)
  • Управление заказами клиентов
  • Создание/Выполнение заказа от клиента в удобном поэтапном конструкторе

Возможности барбера:

  • Создание/Выполнение заказа от клиента в удобном поэтапном конструкторе
  • Просмотр статистики по выполненным заказам

Дополнительные возможности:

  • Смена темы приложения Светлая/Тёмная
  • Интерактивный поиск на страницах приложения
  • Гибкий дизайн

Содержание отчета к программе (50 страниц + Приложение код)

ПЕРЕЧЕНЬ СОКРАЩЕНИЙ.. 3

ВВЕДЕНИЕ.. 4

1 Аналитический обзор. 7

1.1 Аналитический обзор современных подходов к организации рабочего процесса барбершопа. 8

1.2 Анализ современных прикладных IT решений в сфере контроля и учета рабочего времени и предоставляемых услуг барбершопа. 11

1.3 Цель и задачи работы.. 23

1.4 Календарно-ресурсное планирование процесса разработки программного комплекса для барбершопа. 24

1.5 Выводы по аналитическому обзору. 26

2 Основная часть. Разработка автоматизированной системы.. 27

2.1 Формализованное описание процесса контроля и учета бизнес-процессов барбершопа. 27

2.2 Структура и характеристика информационного обеспечения системы.. 28

2.3 Разработка функциональной структуры программного комплекса. 30

2.4 Обзор и обоснование выбора инструментальных средств разработки системы.. 32

2.5 Характеристика технического и программного обеспечения системы.. 38

2.6 Обеспечение информационной безопасности. 41

2.7 Тестирование и оценка качества информационной системы.. 42

2.8 Оценка эффективности проекта. 44

2.9 Выводы по основной части. 48

Заключение. 49

Список использованных источников. 50

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

public sealed class OfferService : EntityService<ServiceDto, Service, UpsertServiceCommand>
{
    private readonly IBaseRepository<ServiceSkillLevel> _serviceSkillLevelRepository;

    public OfferService(
        IBaseRepository<ServiceSkillLevel> serviceSkillLevelRepository,
        IBaseRepository<Service> repository,
        IMapper mapper)
        : base(repository, mapper)
    {
        _serviceSkillLevelRepository = serviceSkillLevelRepository ?? throw new ArgumentNullException(nameof(serviceSkillLevelRepository));
    }

    public override async Task Update(UpsertServiceCommand command)
    {
        var storedService = await _entityRepository.GetById(command.Id, x => x.ServiceSkillLevels);
        await SyncServiceSkillLevel(storedService.ServiceSkillLevels, SkillLevel.Junior, command.JuniorSkill);
        await SyncServiceSkillLevel(storedService.ServiceSkillLevels, SkillLevel.Middle, command.MiddleSkill);
        await SyncServiceSkillLevel(storedService.ServiceSkillLevels, SkillLevel.Senior, command.SeniorSkill);

        var service = _mapper.Map<Service>(command);

        await _entityRepository.Update(service);
    }

    public override async Task<IReadOnlyList<ServiceDto>> GetAll()
    {
        var services = await _entityRepository.GetAll(x => x.ServiceSkillLevels);

        return _mapper.Map<IReadOnlyList<ServiceDto>>(services);
    }

    public override async Task<ServiceDto> GetById(int id)
    {
        var service = await _entityRepository.GetById(id, x => x.ServiceSkillLevels);

        return _mapper.Map<ServiceDto>(service);
    }

    private async Task SyncServiceSkillLevel(ICollection<ServiceSkillLevel> skillLevels, SkillLevel skillLevel, ServiceSkillLevelDto? serviceSkillLevelDto)
    {
        var storedSkillLevel = skillLevels.FirstOrDefault(x => x.SkillLevel == skillLevel);

        if (storedSkillLevel != null && serviceSkillLevelDto == null)
        {
            await _serviceSkillLevelRepository.Remove(storedSkillLevel.Id);
        }
    }
}

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

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

Для запуска программы должны быть установлены следующие компоненты:

  • Visual Studio 2019;
  • .NET 6;
  • PostgreSQL.

Всё это можно установить в установщике Visual Studio Installer при установке Visual Studio 2019.

После просто открыть проект и запустить программу. База автоматически создастся с пользователем admin для входа в программу + начальный набор данных как в видео.

Структура проекта

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

/ /

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

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

Только зарегистрированые пользователи имеют возможность комментировать работы
Купить

7500,00 

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

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

ВКР.docx
2875895
Barbershop.zip
3623384
Оцени работу

рейтинг

АИС Барбершоп C#, WPF, PostgreSQL, EntityFramework
Автоматизированная информационная система для салона красоты Барбершоп
Категория: Образование
Стоимость: 7500,00