Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТРПО_записка.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.31 Mб
Скачать

3.4. Диаграммы реализации

В процессе проектирования были созданы системные компоненты, и на диаграмме компонентов (Component diagram) показаны зависимости между ними (рис.3.11).

Рис.3.11. Диаграмма компонентов подсистемы «ТН»

Каждая компонента подсистемы состоит из двух модулей. Классы, реализованные в модулях «ТН для Директора / Сервер», «Директор / Клиент», «ТН для Руководителя / Сервер», «Руководитель подразделения / Клиент », представлены на рис. 3.12 - 3.15

Рис.3.12. Классы модуля «ТН для Директора / Сервер»

Рис.3.13. Классы модуля «Директор / Клиент»

Рис.3.14. Классы модуля «ТН для Руководителя / Сервер»

Рис.3.15. Классы модуля «Руководитель подразделения / Клиент»

Была создана диаграмма развертывания c узлам и соединениями. Для узлов показаны развернутые на них компоненты (рис. 3.16).

Рис.3.16 Диаграмма развертывания

  1. Реализация

В курсовом проекте была реализована функция расчёта стоимости материалов, затребованных на конкретном складе для руководителя организации и функция расчета общей стоимости затребованных материалов для директора организации

Для этого были разработаны следующие классы:

В этих классах были реализованы следующие методы:

Пакет Boundary:

// Диалог расчета общей стоимости затребованных материалов для Директора

public partial class DirectorCalculate : Form

{

...

// расчет

private void calculate()

{...}

// Диалог расчета стоимости материалов, затребованных на конкретном складе для Руководителя

public partial class ManagerTotalCalculate : Form

// расчет

private void calculate()

{...}

Пакет Control:

// Класс управления организацией

class OrganizationControl

{

// Вычисление общей стоимости затребованных материалов

public int Calculate(DateTime dateStart, DateTime dateEnd, out List<int> cost, out List<Entity.Subdivision> subdivision)

{...}

// Вычисление стоимости материалов, затребованных на конкретном складе

public int Calculate(DateTime dateStart, DateTime dateEnd, int storeNumber)

{...}

// Получение списка складов

public List<Entity.Store> getStore()

{...}

// Получение списка подразделений

public List<Subdivision> getSubdivision()

{...}

Пакет Entity:

// Класс организации

public class Organization

{

// Вычисление общей стоимости затребованных материалов

public int Calculate(DateTime dateStart, DateTime dateEnd, out List<int> cost, out List<Entity.Subdivision> subdivision)

{...}

// Вычисление стоимости материалов, затребованных на конкретном складе

public int Calculate(DateTime dateStart, DateTime dateEnd, int storeNumber)

{...}

}

// Класс структурного подразделения

public class Subdivision

{

// Расчет стоимости для указанного диапазона дат

public int getCost(DateTime dateStart, DateTime dateEnd)

{...}

// Расчет стоимости для указанного диапазона дат и склада

public int getCost(DateTime dateStart, DateTime dateEnd, int storeNumber)

{...}

}

// Класс требования-накладной

public class RequirementsBill

{

// Проверка даты

public Boolean CheckDate(DateTime dateStart, DateTime dateEnd)

{...}

// Проверка номера склада

public Boolean CheckStore(int storeN)

{...}

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]