- •Введение
- •Анализ предметной области
- •Структура комитета государственной безопасности Республики Беларусь
- •Обзор существующих аналогов
- •Аналитический обзор
- •Язык программирования php
- •Архитектура клиент-сервер
- •Rest-сервис
- •Системное проектирование
- •Функциональное проектирование
- •Классы, реализующие непосредственно логику работы веб-приложения
- •Класс AccountController
- •Класс ConvictionsController
- •Класс DefendantsController
- •Класс ExcelController
- •Класс IndexController
- •Класс NoticesController
- •Класс PlacesWorkController
- •Класс PreventivesController
- •Класс PrivateCasesController
- •Класс UrlController
- •Класс UsersController
- •Класс RelativesController
- •Класс ChangePinaltiesController
- •Класс ViolationsController
- •Класс AmnistiesController
- •Класс PartnersController
- •Класс PaymentsController
- •Класс TreatmentsController
- •Структура таблиц базы данных
- •Классы работы с базой данных и доступа к данным
- •Класс ModelManager
- •Класс DynamicModel
- •Разработка программных модулей
- •Авторизация
- •Заведение дела
- •Программа и методика испытаний
- •Определение вида тестирования
- •Объект тестирования
- •Выход из системы
- •Добавить сотрудника
- •Просмотреть список сотрудников
- •Редактировать сотрудника
- •Изменить пароль сотрудника
- •Удалить сотрудника
- •Добавить правонарушителя
- •Просмотреть список правонарушителей
- •Просмотреть правонарушителя
- •Редактировать правонарушителя
- •Удалить правонарушителя
- •Добавить место работы правонарушителя
- •Просмотреть место работы правонарушителя
- •Редактировать место работы правонарушителя
- •Удалить место работы правонарушителя
- •Добавить родственника
- •Просмотреть список родственников
- •Просмотреть родственника
- •Редактировать родственника
- •Удалить родственника
- •Добавить дело
- •Просмотреть список дел
- •Просмотреть дело
- •Редактировать дело
- •Удалить дело
- •Добавить осуждение
- •Просмотреть список осуждений
- •Просмотреть осуждение
- •Редактировать осуждение
- •Удалить осуждение
- •Добавить нарушение
- •Просмотреть список нарушений
- •Просмотреть нарушение
- •Редактировать нарушение
- •Удалить нарушение
- •Добавить отчет профучета
- •Просмотреть список отчетов профучета
- •Просмотреть отчет профучета
- •Редактировать отчет профучета
- •Удалить отчет профучета
- •Руководство пользователя
- •Назначение веб-приложения для автоматизации учета правонарушений
- •Условия выполнения
- •Функциональные возможности
- •Авторизация сотрудников
- •Ведение базы сотрудников
- •Ведение базы правонарушений
- •Ведение базы личных дел правонарушителей
- •Технико-экономическое обоснование проекта веб-приложения для автоматизации учета правонарушений
- •Характеристика программного продукта
- •Расчет затрат и отпускной цены веб-приложения для автоматизации учета правонарушений
- •Основная заработная плата исполнителей проекта определяется по формуле (7.1):
- •Расчет стоимостной оценки результата от разработки веб-приложения по автоматизации учета правонарушений
- •Расчет показателей эффективности разработки программного продукта
- •Заключение
- •Список используемых источников
Класс TreatmentsController
Данный класс отвечает за работу с данными о посещении правонарушителей уголовно-исполнительно инспекции.
Свойства класса TreatmentsController, приведены в таблице 3.30.
Методы класса TreatmentsController, приведены в таблице 3.31.
Таблица 3.30 – Свойства класса TreatmentsController
Свойство |
Описание |
layout |
Данное свойство отвечает за базовый шаблон представления. |
Таблица 3.31 – Свойства класса TreatmentsController
Метод |
Описание |
treatments |
Предоставляет страницу со списком посещений и связанными с ней функциями. |
createTreatment |
Предоставляет страницу с формой создания, содержащей поля соответствующие полям из таблицы «Посещения». Передав в функцию данные формы, будет запущен процесс записи информации в базу данных. |
viewTreatment |
Предоставляет страницу содержащей данные о посещениях. |
editTreatment |
Предоставляет страницу с формой редактирования, содержащей поля соответствующие полям из таблицы «Посещения». Передав в функцию данные формы, будет запущен процесс записи информации в базу данных. |
deleteTreatment |
Осуществляет удаление данные о посещении уголовно-исполнительной инспекции по переданному идентификатору. |
Структура таблиц базы данных
В проекте используется обращение к реляционной базе данных, работающей под управлением системы управления базами данных (СУБД) MySQL. Каждой таблице в базе данных соответствует класс доменной модели в приложении, который инкапсулирует всю необходимую для программы информацию об объекте предметной области. Для работы с базой данных используется ORM-решение собственной разработки.
Структура таблиц и связи между ними показаны на чертеже модели
данных (ГУИР.400201.206 РР.2), а также подробно рассмотрены далее.
Таблица defendants
Таблица содержит данные о нарушителе.
Поле первичного ключа:
id – поле содержит уникальный идентификатор нарушителя.
Поля внешних ключей
gender_id – поле содержащее идентификатор пола;
issuing_passport – поле содержащее идентификатор органа выдавшего паспорт.
Поля:
first_name – имя;
second_name – фамилия;
patronymic – отчество;
date_birth – дата рождения;
place_birth – место рождения;
place_residence – место проживания;
place_registration – место регистрации;
passport_series – серия паспорта;
passport_number – номер паспорта;
passport_date_issue – дата выдачи паспорта;
passport_personal_number – идентификационный номер паспорта;
home_phone – домашний телефон;
mobile_phone – мобильный телефон;
citizenship – гражданство;
nickname – прозвище;
photo – фотография;
note – примечание;
edit_date – дата изменения записи;
create_date – дата создания записи.
Таблица relatives
Таблица содержит данные о родственниках правонарушителя.
Поле первичного ключа:
id – поле содержит уникальный идентификатор родственника нарушителя.
Поля внешних ключей
gender_id – поле содержащее идентификатор пола;
issuing_passport – поле содержащее идентификатор органа выдавшего паспорт.
Поля:
relation_degree – степень родства;
first_name – имя;
second_name – фамилия;
patronymic – отчество;
date_birth – дата рождения;
place_reisdence – место проживания;
place_work – место работы;
passport_series – серия паспорта;
passport_number – номер паспорта;
passport_date_issue – дата выдачи паспорта;
passport_personal_number – идентификационный номер паспорта.
Таблица places_work
Таблица содержит данные о метах работы правонарушителей.
Поле первичного ключа:
id – содержит уникальный идентификатор дела правонарушителя.
Поля внешних ключей
defendant_id – поле содержащее идентификатор правонарушителя.
case_type – поле содержащее идентификатор типа дела.
Поля:
company_name – название организации;
company_address – адрес компании;
accounting_phone – телефон бухгалтерии;
personnel_department_phone – телефон отдела кадров;
position – должность;
admission_date – дата принятия на работу;
dismissal_date – дата увольнения;
note – примечание;
create_date – дата создание записи;
edit_date – дата изменения записи.
Таблица private_cases
Таблица содержит данные о делах правонарушителей.
Поле первичного ключа:
id – поле содержит уникальный идентификатор дела правонарушителя.
Поля внешних ключей
defendant_id – поле содержащее идентификатор правонарушителя;
case_type – поле содержащее идентификатор типа дела;
card_filled_employee_id – поле содержащее идентификатор сотрудника.
Поля:
case_number – номер дела;
card_number – номер карты;
outgoing_number – входящий номер;
outgoing_date – входящая дата;
incoming_number – исходящий номер;
incoming_date – исходящая дата;
opop_number – ОПОП номер;
take_accounting_date – дата взятия на учет;
withdrawn_accounting_date – дата снятия с учета;
base_withdrawn_accounting – основания снятия с учета;
note – примечание;
taken_into_custody_from – дата взятия под стражу;
taken_into_custody_to – дата освобождения из под стражи;
taken_into_custody_note – основания освобождения;
criminal_case_number – номер уголовного дела;
presence_inspection_report – наличие отчета инспекции;
copy_employment_record – копия рабочей книги;
zzd – запрет занимать должности;
create_date – дата создания записи;
edit_date – дата изменения записи.
Таблица convictions
Таблица содержит данные о осуждениях вынесенных правонарушителю по делу.
Поле первичного ключа:
id – поле содержит уникальный идентификатор осуждения.
Поля внешних ключей
private_case_id – поле содержащее идентификатор дела;
punishment_extended_court_id – поле содержит идентификатор суда;
conviction_court_id – поле содержит идентификатор суда;
release_court_id – поле содержит идентификатор суда;
released_article_id – поле содержит идентификатор статьи;
conviction_article_id – поле содержит идентификатор статьи.
Поля:
date_conviction – дата осуждения;
conviction_term_years – срок осуждения (лет);
conviction_term_months – срок осуждения (месяцев);
conviction_term_days – срок осуждения (дней);
conviction_term_hours – срок осуждения (часов);
punishment – наказание;
date_entry_into_force – дата вступления наказания в силу;
released_from – место освобождения;
init_released_date – дата принятия решения об освобождении;
release_date – дата освобождения;
conviction_postponed_years – осуждение отложено (лет);
conviction_postponed_months – осуждение отложено (месяцев);
conviction_postponed_days – осуждение отложено (дней);
punishment_extended_date – дата продления наказания;
punishment_extended_years – продление наказания (лет);
punishment_extended_months – продление наказания (месяцев);
punishment_extended_days – продление наказания (дней);
prohibition_holding_positions – запрет занимать должности;
prohibitions – запреты по приговору;
note – примечания;
create_date – дата создания записи;
edit_date – дата изменения записи.
Таблица violations
Таблица содержит данные о нарушениях, совершенных правонарушителем по делу.
Поле первичного ключа:
id – поле содержит уникальный идентификатор нарушения.
Поля внешних ключей
private_case_id – поле содержащее идентификатор дела.
Поля:
violation – нарушение;
type_violation – тип нарушения;
date_making – дата совершения нарушения;
main_violation – поле содержит значения, обозначающее является ли это нарушение главным;
measure_recovery – компенсация ущерба;
date_expiry – дата истечения срока действия;
drawdown_date – дата снятия;
officially – официальность.
Таблица amnesties
Таблица содержит данные об амнистиях.
Поле первичного ключа:
id – поле содержит уникальный идентификатор амнистии.
Поля внешних ключей
private_case_id – поле содержащее идентификатор правонарушителя;
article_id – поле содержит идентификатор статьи.
Поля:
date_application – дата заявки;
cancelled_years – отменено лет;
cancelled_months – отменено месяцев;
cancelled_days – отменено дней;
note – примечание.
Таблица change_penalties
Таблица содержит данные об изменениях приговора.
Поле первичного ключа:
id – поле содержит уникальный идентификатор амнистии.
Поля внешних ключей
private_case_id – поле содержащее идентификатор правонарушителя;
new_article_id – поле содержит идентификатор статьи;
changed_court_id – поле содержит идентификатор суда.
Поля:
change_date – дата внесения изменения;
new_term_years – новое количество лет;
new_term_months – новое количество месяцев;
new_term_days – новое количество дней;
number_sentence – номер приговора;
date_intoduction – дата введения;
changes – изменения;
additional_punishment – дополнительное наказание.
Таблица treatments
Таблица содержит данные об посещениях правонарушителя уголовно-исполнительной инспекции.
Поле первичного ключа:
id – поле содержит уникальный идентификатор посещения.
Поля:
date – дата посещения;
note – примечание.
Таблица reports_puku
Таблица содержит данные о отчетах профучета.
Поле первичного ключа:
id – поле содержит уникальный идентификатор посещения.
Поля:
one – первое число месяца;
two – второе число месяца;
three – третье число месяца;
four – четвертое число месяца;
five – пятое число месяца;
six – шестое число месяца;
seven – седьмое число месяца;
eight – восьмое число месяца;
nine – девятое число месяца;
ten – десятое число месяца;
eleven – одиннадцатое число месяца;
twelve – двенадцатое число месяца;
therteen – тринадцатое число месяца;
fourteen – четырнадцатое число месяца;
fifteen – пятнадцатое число месяца;
sixteen – шестнадцатое число месяца;
seventeen – семнадцатое число месяца;
eighteen – восемнадцатое число месяца;
nineteen – девятнадцатое число месяца;
twenty – двадцатое число месяца;
twenty_one – двадцать первое число месяца;
twenty_two – двадцать второе число месяца;
twenty_three – двадцать третье число месяца;
twenty_four – двадцать четвертое число месяца;
twenty_five – двадцать пятое число месяца;
twenty_six – двадцать шестое число месяца;
twenty_seven – двадцать седьмое число месяца;
twenty_eight – двадцать восьмое число месяца;
twenty_nine – двадцать девятое число месяца;
thity – тридцатое число месяца;
thiry_one – тридцать первое число месяца;
total – общее число дней;
note – примечание;
month – месяц;
year – год;
ky – наличие контручета;
pu – наличие профучета;
create_date – дата создания записи;
edit_date – дата изменения записи.
Таблица partners
Таблица содержит данные о соучастниках по делу.
Поле первичного ключа:
id – поле содержит уникальный идентификатор амнистии.
Поля внешних ключей
private_case_id – поле содержащее идентификатор правонарушителя;
defendant_id – поле содержит идентификатор правонарушителя, на которого открыто дело;
partner_id – поле содержит идентификатор правонарушителя, который является соучастником по делу.
Таблица payments
Таблица содержит данные о платежах совершенных при осуществлении возмещений ущерба.
Поле первичного ключа:
id – поле содержит уникальный идентификатор платежа.
Поля внешних ключей
private_case_id – поле содержащее идентификатор правонарушителя;
report_puku – поле содержит идентификатор отчета профучета.
Поля:
payment_date – дата платежа;
number_directory – номер каталога;
number_PP – номер ПП;
number_workong_days – количество рабочих дней;
number_included_days – количество включенных дней;
number_not_included_days – количество не включенных дней;
reason – причина;
earn_money – заработал денег;
transferred_money – перечислено денег.
Таблица notices
Таблица содержит данные об извещениях, отправленных по месту работы.
Поля:
name – название извещения;
direction_date – дата отправки извещения;
confirmation_date – дата подтверждения о получении.
Таблица additional_employees
Таблица содержит данные о сотрудниках.
Поле первичного ключа:
id – поле содержит уникальный идентификатор платежа.
Поля внешних ключей
gender – поле содержащее идентификатор пола;
position – поле содержит идентификатор должности;
title – поле содержит идентификатор звания.
Поля:
first_name – имя;
second_name – фамилия;
patronymic – отчество;
date_birthday – дата рождения;
in_ovd – в ОВД;
in_position – в должности;
education – образование;
vuz – закончил ли ВУЗ;
cabinet – номер кабинета;
work_phone – рабочий телефон;
mobile_phone – мобильный телефон;
card_number – номер карточки;
note – примечание;
login – логин;
password – пароля;
create_date – дата создания;
edit_date – дата изменения.
