- •Задание на работу
- •Аннотация
- •Summary
- •Описание выполненной работы
- •2.1 Маршрутная технология и маршрутные карты
- •2.2 Разработка функциональных требований к подсистеме
- •2.3 Разработка модели классов этапа анализа
- •2.4 Разработка модели классов этапа проектирования
- •2.5 Разработка модели хранения
- •2.6 Создание базы данных
- •2.7 Разработка основных процедур
- •2.7.1 Процедура, создающая запись в таблице “prod_operation”:
- •2.7.2 Процедура, создающая запись в таблице “input_resources”
- •2.7.3 Процедура удаления записи о операции в таблице “prod_operation”
- •2.7.4 Процедура, создающая запись о схд в таблице “terminal_classifier”
- •2.7.5 Процедура, создающая грц класс в таблице terminal_classifier
- •2.7.6 Процедура создания экземпляра грц
- •2.7.7 Процедура, меняющая порядок операции, позволяя вставлять ее в начало, середину, конец тм
- •2.7.8 Процедура удаления записи в таблице “input_resources”
- •2.7.9 Процедура изменения количества ресурса в таблице “inputs_resources”
- •2.7.10 Процедура нахождения информации об операции по id
- •2.7.11 Процедура поиска tm, сортируя их по приоритету (порядок формируется приоритетом операции при ее создании / вставке в началу/середину/конец)
- •2.7.12 Поиск затрат ресурсов на тм на партию объектов
- •2.7.13 Поиск затрат ресурсов на одну операцию для партии изделий
2.7.10 Процедура нахождения информации об операции по id
функция: find_obj_operation - получение подробной информации о процедуре по id
-- вход:
-- 1. obj_operation_id - id класса операции
-- выход: получение подробной информации о процедуре по id
-- эффекты:
-- нет
-- требования:
-- 1. передаваемые id должно существовать
def find_obj_operation(obj_operation_id):
if not is_exist_by_id_in_table(obj_operation_id, PROD_OPERATION_TABLE):
raise ValueError(f'операции с id={obj_operation_id} не существует в таблице {PROD_OPERATION_TABLE}')
cursor.execute("""
SELECT operation_name FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
res_operation_name = cursor.fetchone()[0]
cursor.execute("""
SELECT operation_priority FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
res_operation_priority = cursor.fetchone()[0]
cursor.execute("""
SELECT id_shd FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
id_shd = cursor.fetchone()[0]
cursor.execute("""
SELECT terminal_classifier_name FROM terminal_classifier
WHERE id = ?
""", (id_shd,))
res_shd_name = cursor.fetchone()[0]
cursor.execute("""
SELECT prod_id FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
prod_id = cursor.fetchone()[0]
cursor.execute("""
SELECT product_name FROM product
WHERE id = ?
""", (prod_id,))
res_prod_name = cursor.fetchone()[0]
cursor.execute("""
SELECT grc_id FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
grc_id = cursor.fetchone()[0]
cursor.execute("""
SELECT product_name_short FROM product
WHERE id = ?
""", (grc_id,))
res_grc_name = cursor.fetchone()[0]
cursor.execute("""
SELECT prof_id FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
prof_id = cursor.fetchone()[0]
cursor.execute("""
SELECT terminal_classifier_name FROM terminal_classifier
WHERE id = ?
""", (prof_id,))
res_prof_name = cursor.fetchone()[0]
cursor.execute("""
SELECT prof_qual_id FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
prof_qual_id = cursor.fetchone()[0]
cursor.execute("""
SELECT enum_name FROM enum
WHERE id = ?
""", (prof_qual_id,))
res_prof_qual_name = cursor.fetchone()[0]
cursor.execute("""
SELECT launch_time FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
res_launch_time = cursor.fetchone()[0]
cursor.execute("""
SELECT time_per_obj FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
res_time_per_obj = cursor.fetchone()[0]
cursor.execute("""
SELECT time_unit_id FROM prod_operation
WHERE id = ?
""", (obj_operation_id,))
time_unit_id = cursor.fetchone()[0]
cursor.execute("""
SELECT unit_name_short FROM unit
WHERE id = ?
""", (time_unit_id,))
res_unit_name = cursor.fetchone()[0]
operation_info = [res_operation_name, res_shd_name, res_prod_name, res_grc_name, res_prof_name, res_prof_qual_name, res_launch_time, res_time_per_obj, res_unit_name, res_operation_priority]
return operation_info
