Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Пример проекта 2

.pdf
Скачиваний:
7
Добавлен:
04.04.2023
Размер:
1.26 Mб
Скачать

ALTER TABLE "ship_daily_report" ADD FOREIGN KEY ("tripid")

REFERENCES "trip" ("id");

ALTER TABLE "permission" ADD FOREIGN KEY ("shipid") REFERENCES "ship" ("id");

ALTER TABLE "fishing_processing" ADD FOREIGN KEY ("trip")

REFERENCES "trip" ("id");

ALTER TABLE "fishing_processing" ADD FOREIGN KEY

("production_director") REFERENCES "employee" ("passport");

ALTER TABLE "fishing_operation" ADD FOREIGN KEY ("fishing_gear")

REFERENCES "fishing_gear" ("id");

ALTER TABLE "fishing_operation" ADD FOREIGN KEY ("fishing_object")

REFERENCES "fishing_object" ("id");

ALTER TABLE "fishing_processing" ADD FOREIGN KEY ("fishing_gear")

REFERENCES "fishing_gear" ("id");

ALTER TABLE "fishing_processing" ADD FOREIGN KEY ("fishing_object")

REFERENCES "fishing_object" ("id");

ALTER TABLE "ship_daily_report" ADD FOREIGN KEY ("permission")

REFERENCES "permission" ("id");

ALTER TABLE "ship_daily_report" ADD FOREIGN KEY ("district")

REFERENCES "district" ("id");

ALTER TABLE "employee" ADD FOREIGN KEY ("profession")

REFERENCES "profession" ("id");

ALTER TABLE "fishing_processing" ADD FOREIGN KEY ("district")

REFERENCES "district" ("id");

51

ALTER TABLE "fishing_object_district" ADD FOREIGN KEY ("obj_id")

REFERENCES "fishing_object" ("id");

ALTER TABLE "fishing_object_district" ADD FOREIGN KEY ("dist_id")

REFERENCES "district" ("id");

Код для создания контрольного примера: --профессии

insert into profession (id, profession) values

(1, 'капитан'), (2, 'второй помощник капитана'),

(3, 'старший помощник капитана'), (4, 'заведующий производством'),

(5, 'помощник капитана по радиоэлектронике');

--орудие лова

insert into fishing_gear (id, name) values

(1, 'трал разноглубинный Egersund 1200'), (2, 'трал разноглубинный Egersund 1440'), (3, 'трал разноглубинный Egersund 608'), (4, 'трал разноглубинный Gloria 2048'),

(5, 'трал разноглубинный Атлантика 1600');

--судна

insert into ship (id, name) values

(1, 'СРТМ Витус Беринг');

--район промысла

insert into district (id, name) values

(1, 'Охотское море'), (2, 'Северо-Курильская зона'), (3, 'Тихоокеанская');

--объект промысла

52

insert into fishing_object (id, name, district) values

(1, 'горбуша', 3), (2, 'кальмар', 2), (3, 'камбала', 3), (4, 'кета', 3), (5, 'минтай', 2), (6, 'палтус', 1), (7, 'сельдь', 1);

--разрешения

insert into permission (id, shipid, districtid) values

(120110301, 1, 1), (120110322, 1, 2), (120110313, 1, 1), (120110364, 1, 3), (120110325, 1, 2);

--работники

insert into employee (passport, profession, name) values

(598441418, 1, 'Мишин Григорий Валентинович'), (239311998, 1, 'Ефремов Яков Улебович'), (697826815, 2, 'Симонов Терентий Антонович'), (977391773, 2, 'Богданов Геннадий Сергеевич'), (535094816, 4, 'Соболев Валентин Макарович'), (260266975, 3, 'Шилов Ефрем Андреевич'), (154007943, 5, 'Князев Захар Богданович'), (202381633, 4, 'Кононов Витольд Егорович'), (580733530, 5, 'Соколов Давид Онисимович'), (563074310, 3, 'Задирако Родион Натанович');

--рейсы

insert into trip (id, permissionid, shipid, capitan) values

(210119, 120110301, 1, 598441418), (150519, 120110322, 1, 239311998),

53

(160120, 120110313, 1, 598441418), (070520, 120110364, 1, 239311998), (210121, 120110325, 1, 239311998);

--выгрузка

insert into discharging

(id, date_, trip, ship, capitan, carrier, arrival_point, fishing_object, weight) values

(1, 240419, 210119, 1, 598441418, 'Ола', 'ООО Дальрыбпром', 7, 73), (2, 180819, 150519, 1, 239311998, 'Корсаков', 'ООО Дальрифер', 5, 42),

(3, 140420, 160120, 1, 598441418, 'Кронштадский', 'ООО Данико', 6, 122), (4, 050920, 070520, 1, 239311998, 'Меркурий', 'ООО Данико', 4, 17),

(5, 210421, 210121, 1, 239311998, 'Комета', 'ООО Дальрыбфлотпродукт', 2,

85);

--операция добычи

insert into fishing_operation (id, date_, tripid, ship, capitan, latitude, longitude, fishing_object, fishing_gear, weight)

values

(1, 240119, 210119, 1, 598441418, 53.731456, 149.080212, 7, 1, 43), (2, 140219, 210119, 1, 598441418, 53.731456, 149.080212, 7, 1, 30), (3, 160619, 150519, 1, 239311998, 50.166688, 157.572642, 5, 2, 42), (4, 240120, 160120, 1, 598441418, 53.731356, 149.080222, 6, 3, 80), (5, 080220, 160120, 1, 598441418, 53.731356, 149.080222, 6, 3, 42), (6, 060620, 070520, 1, 239311998, 39.255959, 173.899857, 4, 5, 17), (7, 110221, 210121, 1, 239311998, 50.166699, 157.572655, 2, 2, 50), (8, 150321, 210121, 1, 239311998, 50.166699, 157.572655, 2, 2, 35);

--выпуск продукции

insert into fishing_processing (id, date_, trip, production_director, ship, district, latitude, longitude, fishing_object, fishing_gear, weight)

values

(1, 290119, 210119, 697826815, 1, 1, 53.731456, 149.080212, 7, 1, 43), (2, 170219, 210119, 697826815, 1, 1, 53.731456, 149.080212, 7, 1, 30), (3, 200620, 150519, 977391773, 1, 2, 50.166688, 157.572642, 5, 2, 42), (4, 290120, 160120, 563074310, 1, 1, 53.731356, 149.080222, 6, 3, 45), (5, 310120, 160120, 563074310, 1, 1, 53.731356, 149.080222, 6, 3, 35), (6, 150220, 160120, 563074310, 1, 1, 53.731356, 149.080222, 6, 3, 42),

54

(7, 110620, 070520, 260266975, 1, 3, 39.255959, 173.899857, 4, 5, 17), (8, 150221, 210121, 977391773, 1, 2, 50.166699, 157.572655, 2, 2, 50), (9, 200321, 210121, 977391773, 1, 2, 50.166699, 157.572655, 2, 2, 35);

--ссд

insert into ship_daily_report (id, date_, tripid, capitan, ship, permission, latitude, longitude, district)

values

(5, 240419, 210119, 598441418, 1, 120110301, 53.731456, 149.080212, 1), (1, 240119, 210119, 598441418, 1, 120110301, 53.731456, 149.080212, 1), (3, 140219, 210119, 598441418, 1, 120110301, 53.731456, 149.080212, 1), (2, 290119, 210119, 598441418, 1, 120110301, 53.731456, 149.080212, 1), (4, 170219, 210119, 598441418, 1, 120110301, 53.731456, 149.080212, 1), (8, 180819, 150519, 239311998, 1, 120110322, 50.166688, 157.572642, 2), (6, 160619, 150519, 239311998, 1, 120110322, 50.166688, 157.572642, 2), (7, 200620, 150519, 239311998, 1, 120110322, 50.166688, 157.572642, 2), (14, 140420, 160120, 598441418, 1, 120110313, 53.731356, 149.080222, 1), (9, 240120, 160120, 598441418, 1, 120110313, 53.731356, 149.080222, 1), (12, 080220, 160120, 598441418, 1, 120110313, 53.731356, 149.080222, 1), (10, 290120, 160120, 598441418, 1, 120110313, 53.731356, 149.080222, 1), (11, 310120, 160120, 598441418, 1, 120110313, 53.731356, 149.080222, 1), (13, 150220, 160120, 598441418, 1, 120110313, 53.731356, 149.080222, 1), (17, 050920, 070520, 239311998, 1, 120110364, 39.255959, 173.899857, 3), (15, 060620, 070520, 239311998, 1, 120110364, 39.255959, 173.899857, 3), (16, 110620, 070520, 239311998, 1, 120110364, 39.255959, 173.899857, 3), (22, 210421, 210121, 239311998, 1, 120110325, 50.166699, 157.572655, 2), (18, 110221, 210121, 239311998, 1, 120110325, 50.166699, 157.572655, 2), (20, 150321, 210121, 239311998, 1, 120110325, 50.166699, 157.572655, 2), (19, 150221, 210121, 239311998, 1, 120110325, 50.166699, 157.572655, 2), (21, 200321, 210121, 239311998, 1, 120110325, 50.166699, 157.572655, 2);

Код для создания View: create view workers_view as

select

name as ФИО, profession.profession as профессия, passport as паспорт

from employee

55

join profession on profession.id = employee.profession;

create view discharging_view as select

date_ as дата, trip as рейс,

ship.name as судно, employee.name as кпаитан, carrier as получатель,

arrival_point as пункт_назначения, fishing_object.name as продукция, weight as вес

from discharging

join ship on ship.id = discharging.ship

join employee on employee.passport = discharging.capitan

join fishing_object on fishing_object.id = discharging.fishing_object;

create view ship_daily_report_view as select

date_ as дата, employee.name as капитан, tripid as рейс,

permission as разрешение, ship.name as судно,

district.name as район_промысла, longitude as широта,

latitude as долгота from ship_daily_report

join employee on (employee.passport = ship_daily_report.capitan) join ship on (ship_daily_report.ship = ship.id)

join district on (ship_daily_report.district = district.id);

Были созданы АРМ:

АРМ 2-го помощника капитана обеспечивает: Заполнение промыслового журнала

select fishing_object, latitude, longitude, date_ from fishing_operation

Внесение в базу коносамента

select arrival_point, fishing_object from discharging

Формирование справки о наличии продукции на борту

56

select fishing_object.name, sum(weight) from

fishing_processing

join

fishing_object on

 

 

fishing_object.id = fishing_processing.fishing_object

 

group by fishing_object.name, weight

 

 

Контроль заполнения пункта Ш3 “Промысловые операции”

 

select fishing_object, date_, longitude,

latitude, weight

from

fishing_operation where capitan

Контроль заполнения пунктов Ш10, Ш11 “Перегруз мороженной рыбопродукции”

select arrival_point, carrier, fishing_object, weight from discharging

Проверка на заполнение пунктов в рейсовом отчете сводка всех данных , выгрузка, вылов, переработка

select * from discharging, fishing_operation, fishing_processing

АРМ заведующего производством Заполнение технологического журнала

сколько произвели, что, когда

select fishing_object, weight, date_ from fishing_processing

Контроль заполнения пункта Ш6 “Выпуск мороженой рыбопродукции” select fishing_object, date_, longitude, latitude from fishing_processing

Выдача справки о нахождении рыбопродукции на борту select fishing_object, weight from fishing_processing

Проверка на заполнение пунктов в рейсовом отчете

select * from fishing_operation, fishing_processing, discharging

АРМ помощника капитана по радиоэлектронике обеспечивает: Работа со словарями (подразделения, виды водных биоресурсов)

select * from fishing_object; insert into fishing_object values ();

Отправка ССД

select * from ship_daily_report

АРМ капитана обеспечивает:

Контроль правильности заполнения документов Заверение документов Формирование рейсовых отчётов

select * from discharging, ship_daily_report

АРМ генерального директора обеспечивает: чтение всей базы данных

select * from trip

57

select * from discharging select * from ship

select * from fishing_gear select * from fishing_object select * from fishing_operation select * from employee

select * from profession

select * from ship_daily_report select * from permission

select * from fishing_processing select * from district

select * from fishing_object_district

5.Выводы и результаты

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

-проанализирован порядок производственной деятельности дальневосточного рыболовецкого предприятия. Выявлены слабые места в учете производственных процессов. Предложен вариант наиболее рационального решения по автоматизации управления производства;

-разработаны автоматизированные рабочие места (АРМ) и выделены их основные задачи;

-проанализировано и выбрано соответствующее программное обеспечение, СУБД. Построена логическая и физическая структура данных по автоматизации учета производственной деятельности дальневосточного рыболовецкого предприятия;

-на основании спроектированной системы производства рекомендованы к внедрению автоматизированные рабочие места и их задачи;

-представлен программный код построения таблиц и запросов;

Выводы:

- в результате проведенного предпроектного исследования установлено, что целесообразно создать распределенные автоматизированные системы с рядом АРМ не только для офисов ООО "Фрам", но и для удаленных

58

рыболовецких судов. Такая взаимосвязь целесообразна с применением современной сети интернет;

-в ходе создания системы выявлена необходимость создания АРМ капитана, генерального директора, помощника капитана по радиоэлектронике, заведующего производством, 2-го помощника капитан;

-целесообразно было выбрать СУБД PostgreSQL из-за её отказоустойчивости и бесплатного обслуживания, так как СУБД PostgreSQL является свободно распространяемой и полностью соответствует требованиям

ООО"Фрам".

59

Источники информации

1.Федеральный закон от 20.12.2004 №166-ФЗ "О рыболовстве и сохранении водных биологических ресурсов"

2.Кодекс торгового мореплавания Российской Федерации от 30.04.1999 №81-ФЗ

3.Приказ Министерства сельского хозяйства РФ от 23 мая 2019 г. №267 "Об утверждении правил рыболовства для Дальневосточного рыбохозяйственного бассейна"

4.Приказ Министерства сельского хозяйства Российской Федерации от 26.12.2019 №721 "Об утверждении Порядка передачи данных в отраслевую систему мониторинга водных биологических ресурсов"

5.ГОСТ 34.003-90. Автоматизированные системы. Термины и определения.

6.ГОСТ 34.201-89. Виды, комплектность и обозначение документов при создании автоматизированных систем.

7.ГОСТ 34.601-90. Автоматизированные системы. Стадии создания.

8.ГОСТ 34.602-89. Техническое задание на создание автоматизированной системы.

9.ГОСТ 34.603-92. Виды испытаний автоматизированных систем.

10.РД 50 - 34.698-90. Автоматизированные системы. Требования к содержанию документов.

11.РД 50-680-88. Автоматизированные системы. Основные положения

12.ГОСТ 19.001-77. Общие положения

13.ГОСТ 19.002-80. Схемы алгоритмов и программ. Правила выполнения

14.ГОСТ 19.003-80. Схемы алгоритмов и программ. Обозначения условные графические

15.ГОСТ 19.004-80. Термины и определения

16.ГОСТ 19.101-77. Виды программ и программных документов

17.ГОСТ 19.102-77. Стадии разработки

18.ГОСТ 19.103-77. Обозначение программ и программных документов

60