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

Горнолыжный комплекс. Учёт билетов (C#, Windows Forms, SQL Server)

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

Задание

Написать мини-приложение (MDI) для горнолыжного комплекса для ведения учета билетов. Рекомендации: главная форма MainForm должна быть родительской, а TicketsForm - дочерней. Также реализовать - добавление / редактирование через одну форму, экспорт в Эксель, HTML, XML, чтение из XML.   

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

  • добавление / редактирование данных
  • удаление данных
  • перезагрузка формы и ДатаГрид
  • поиск по статусу заказа с очисткой фильтра
  • экспорт в Эксель
  • экспорт в HTML и XML
  • чтение данных из XML
  • печать данных

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

using SkiResort.BL.Interfaces;
using SkiResort.BL.Models;
using System;
using System.Windows.Forms;

namespace SkiResort.UI
{
    public partial class AddTicketsForm : Form
    {
        private int _ticketId;
        public AddTicketsForm()
        {
            InitializeComponent();
        }

        private void BtnSave_Click(object sender, EventArgs e)
        {
            DateTime? payment = null;

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

            if (!DateTime.TryParse(dtpOrderDate.Value.ToString(), out DateTime order))
            {
                MessageBox.Show("Дата заказа должна быть целым числом", "Проверка");
                return;
            }

            if (!string.IsNullOrEmpty(dtpPaymentDate.Text))
            {
                DateTime datePayment;
                if (!DateTime.TryParse(dtpPaymentDate.Value.ToString(), out datePayment))
                {
                    MessageBox.Show("Дата оплаты должна быть в формате даты", "Проверка");
                    return;
                }

                if (datePayment < order)
                {
                    MessageBox.Show("Дата оплаты должны быть больше даты заказа", "Проверка");
                    return;
                }
                payment = datePayment;
            }

            // Создаем объект для передачи данных
            TicketDto ticket = new TicketDto()
            {
                Customer = txtCustomer.Text,
                TicketType = txtTicketType.Text,
                OrderDate = order,
                PaymentDate = chkPaymentDate.Checked ? dtpPaymentDate.Value : (payment),
                Price = numericPrice.Value,
                Status = chkStatus.Checked 
            };
            // Именно тут запрашиваем реализованную раннее задачу по работе с билетами
            ITicketProcess ticketProcess = ProcessFactory.GetTicketProcess();
            // если это новый объект -  сохраняем его
            if (_ticketId == 0)
            {
                // Сохраняем билет
                ticketProcess.Add(ticket);
            }
            else // иначе обновляем
            {
                // копируем обратно идентификатор объекта
                ticket.Id = _ticketId;
                // обновляем
                ticketProcess.Update(ticket);
            }
            // и закрываем форму
            Close();
        }

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

        public void LoadTicket(TicketDto ticket)
        {
            if (ticket == null) return;

            _ticketId = ticket.Id;
            txtCustomer.Text = ticket.Customer;
            txtTicketType.Text = ticket.TicketType;
            dtpOrderDate.Value = ticket.OrderDate;
            if (ticket.PaymentDate.HasValue)
            {
                chkPaymentDate.Checked = true;
                dtpPaymentDate.Value = ticket.PaymentDate.Value;
            }
            else
            {
                chkPaymentDate.Checked = false;
                dtpPaymentDate.Value = DateTime.UtcNow; // или минимальная дата
            }

            numericPrice.Value = ticket.Price;
            chkStatus.Checked = true;            
        }

        private void chkPaymentDate_CheckedChanged(object sender, EventArgs e)
        {
            dtpPaymentDate.Enabled = chkPaymentDate.Checked;
        }
    }
}

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

1. Установить SSMS 2. Присоединить БД 3. Поменять путь к БД в AppConfig  4. SkiResortData поместить строго на рабочий стол. 5. Поменять путь к данной папке в коде формы TicketsForm при необходимости.  6. Запускаем приложение и работаем. 

Купить 2500,00 
Сразу после оплаты Вы сможете скачать работу и мы вышлем дополнительно файл с работой на электронную почту. Исходник программ Вы сможете отредактировать, как Вам нужно.
Комментарии (0)
Горнолыжный комплекс. Учёт билетов (C#, Windows Forms, SQL Server)

/ /

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

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

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

2500,00 

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

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

Горнолыжный комплекс.zip
84466209
Оцени работу

рейтинг

Горнолыжный комплекс. Учёт билетов (C#, Windows Forms, SQL Server)
Горнолыжный комплекс - это приложение для ведения учета билетов (оплаченных и не оплаченных). Пользователю доступен широкий спектр возможностей для работы с приложением.
Категория: Образование
Стоимость: 2500,00