Изменения документа VKPHT. Релиз нота R4 (24Q1)
Редактировал(а) Александра Баруткина 2024/06/27 13:20
От версии 5.1
отредактировано Александра Баруткина
на 2024/05/28 08:44
на 2024/05/28 08:44
Изменить комментарий:
К данной версии нет комментариев
К версии 8.1
отредактировано Александра Баруткина
на 2024/05/28 11:50
на 2024/05/28 11:50
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -14,6 +14,7 @@ 14 14 15 15 Всё это позволяет максимально гибко настроить систему и через Административные панели системы выстраивать матрицу ролей и их полномочия. 16 16 17 +(% class="table-bordered" %) 17 17 |**Тема**|**Описание **|**Задача RM** 18 18 |Реализация экранных форм с помощью административных панелей - "Управление правами доступа"|((( 19 19 * Реализована модель данных ... ... @@ -74,28 +74,361 @@ 74 74 75 75 = AWA. Управление нотификациями = 76 76 77 -(% style="width:1109px" %) 78 +(% class="table-bordered" style="width:1109px" %) 78 78 |**Тема**|**Описание **|**Задача RM** 79 79 | | |(% style="width:252px" %) 80 -| |Добавлена возможность просмотра почт у выбранных подразделений: при нажатии на кнопку "Список адресов" открывается попап "Список адресатов" с перечнем почт сотрудников подразделения, которым отправится уведомление.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101679>>url:https://redmine.goodt.me/issues/101679]] 81 -| |Отредактированы данные таблиц бд notification на стенде [[https:~~/~~/vkpht-dev.goodt.me>>url:https://vkpht-dev.goodt.me/editor/#/apps]] для миграции: 81 +|((( 82 +Добавление возможности просмотра почт получателей у выбранных подразделений. 83 +)))|Добавлена возможность просмотра почт у выбранных подразделений: при нажатии на кнопку "Список адресов" открывается попап "Список адресатов" с перечнем почт сотрудников подразделения, которым отправится уведомление.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101679>>url:https://redmine.goodt.me/issues/101679]] 84 +|Отредактированы данные таблиц бд notification на стенде [[https:~~/~~/vkpht-dev.goodt.me>>url:https://vkpht-dev.goodt.me/editor/#/apps]] для миграции.|Отредактированы данные таблиц бд notification на стенде [[https:~~/~~/vkpht-dev.goodt.me>>url:https://vkpht-dev.goodt.me/editor/#/apps]] для миграции: 82 82 удалены тестовые и закрытые записи, проставлены признаки у системных записей (is_system=true).|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/114431>>url:https://redmine.goodt.me/issues/114431]] 83 -| |Добавлено поле is_system c типом данных bool (true/false), со значением по умолчанию false в таблицы бд notification.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/114424>>url:https://redmine.goodt.me/issues/114424]] 84 -| |Добавлен на страницу выбора получателей инструмента управления количеством отображаемых записей - Пагинация.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101674>>url:https://redmine.goodt.me/issues/101674]] 85 -| |Добавили всплывающее сообщение при успешном создании события в реестрах "Уведомления о событиях" и "Ручные рассылки". 86 +|Добавление поля is_system|Добавлено поле is_system c типом данных bool (true/false), со значением по умолчанию false в таблицы бд notification.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/114424>>url:https://redmine.goodt.me/issues/114424]] 87 +|Добавление пагинации|Добавлен на страницу выбора получателей инструмента управления количеством отображаемых записей - Пагинация.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101674>>url:https://redmine.goodt.me/issues/101674]] 88 +|Добавление всплывающего сообщения при успешном создании события|Добавили всплывающее сообщение при успешном создании события в реестрах "Уведомления о событиях" и "Ручные рассылки". 86 86 Текстовка: "Событие "Код события" "Название события" создано". 87 87 В сообщении присутствует гиперссылка, при нажатии на которую, происходит переход к созданному событию (автоматически устанавливается фильтр в код события): при нажатии на текст/кнопку записывается в хранилище переменная(которую слушают таблица и фильтр) и закрывается попап.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/108113>>url:https://redmine.goodt.me/issues/108113]] 88 -| |Вывели в табличном представлении (попап добавления получателей) табельный номер сотрудника. По атрибуту доступна фильтрация и поиск.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101676>>url:https://redmine.goodt.me/issues/101676]] 89 -| |Реализован вывод полного списка получателей в отдельном попапе, а не в табличном представлении. Исправлено на странице Уведомления о событиях и Ручные рассылки.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101681>>url:https://redmine.goodt.me/issues/101681]] 90 -| |((( 91 +|Попап добавления получателей|Вывели в табличном представлении (попап добавления получателей) табельный номер сотрудника. По атрибуту доступна фильтрация и поиск.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101676>>url:https://redmine.goodt.me/issues/101676]] 92 +|Вывод полного списка получателей в отдельном попапе|Реализован вывод полного списка получателей в отдельном попапе, а не в табличном представлении. Исправлено на странице Уведомления о событиях и Ручные рассылки.|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101681>>url:https://redmine.goodt.me/issues/101681]] 93 +|Добавление кнопки "Удалить всех"|((( 91 91 В карточках "Добавить шаблон" и "Редактировать шаблон" реестров "Уведомления о событиях" и "Ручные рассылки" добавили кнопку "Удалить всех", при нажатии на которую удаляются все выбранные получатели. 92 92 )))|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/101661>>url:https://redmine.goodt.me/issues/101661]] 93 -| |((( 96 +|Доработка виджета ElemCreateNitificationEvent|((( 94 94 Доработка виджета ElemCreateNitificationEvent: кнопка "Отправить уведомления". Кнопка неактивна для событий, у которых не создан ни один шаблон уведомления. 95 95 )))|(% style="width:252px" %)[[https:~~/~~/redmine.goodt.me/issues/96705>>url:https://redmine.goodt.me/issues/96705]] 96 96 97 97 = BPS. Управление фоновыми программам = 98 98 99 -(% style="width:1109px" %) 102 +(% class="table-bordered" style="width:1109px" %) 100 100 |**Тема**|**Описание **|**Задача RM** 101 101 |Реализация фоновой программы TASKS_REASSIGNMENT.|Реализация фоновой программы TASKS_REASSIGNMENT. Фоновая программа переноса задач, в случаях, когда у сотрудника появляется новое назначение и имеется закрытое старое назначение|[[https:~~/~~/redmine.goodt.me/issues/106128>>url:https://redmine.goodt.me/issues/106128]] 105 + 106 += BPM. Управление конфигурацией бизнес-объектов = 107 + 108 +(% class="table-bordered" %) 109 +|**Тема**|**Описание **|**Задача RM** 110 +|Удаление добавленного статуса на экране Матрица статусных переходов|- Добавлена иконка корзины для удаления неиспользуемого в статусной модели статуса|[[https:~~/~~/redmine.goodt.me/issues/114771>>url:https://redmine.goodt.me/issues/114771]] 111 +|Исправление возможности использования различных сервисов при конфигурации справочников|- Проведен рефакторинг методов конфигурации севрисов, к которым возможно обращение для получения данных справочника|[[https:~~/~~/redmine.goodt.me/issues/107135>>url:https://redmine.goodt.me/issues/107135]] 112 +|Изменения в UX для справочников административной панели|- Проведены различные исправления и изменения в пользовательском пути при работе со справочниками административной панели|((( 113 +[[https:~~/~~/redmine.goodt.me/issues/114978>>url:https://redmine.goodt.me/issues/114978]] 114 + 115 +[[https:~~/~~/redmine.goodt.me/issues/114306>>url:https://redmine.goodt.me/issues/114306]] 116 +))) 117 +|Рефакторинг интерфейса заведения поля бизнес-объекта|((( 118 +- Проведена группировка конфигурации поля бизнес-объекта 119 + 120 +- Добавлены дополнительные возможности конфигурации 121 +)))|[[https:~~/~~/redmine.goodt.me/issues/113104>>url:https://redmine.goodt.me/issues/113104]] 122 +|Ведение нового типа владельца БО - employee |- Реализована механика и необходимые проверки для ведения бизнес-объектов с типом владельца - работник (employee) |[[https:~~/~~/redmine.goodt.me/issues/104881>>url:https://redmine.goodt.me/issues/104881]] 123 + 124 += CFG. Управление конфигурацией = 125 + 126 +(% class="table-bordered" %) 127 +|**Тема**|**Описание **|**Задача RM** 128 +|Доработка модели данных для учета системных записей и возможности управления их доступностью для редактирования при настройке системы на проекте.|((( 129 +* Структура таблиц обновлена с учетом признаков is_system и is_editable 130 +* Изменения учтены в работе HATEOAS методов для таблиц 131 +)))|((( 132 +[[https:~~/~~/redmine.goodt.me/issues/110241>>url:https://redmine.goodt.me/issues/110241]] 133 + 134 +Актуализация модели данных с учетом признаков is_system и is_editable 135 +))) 136 + 137 += INT. Управление интеграцией = 138 + 139 +INT0 Общие требования 140 + 141 +(% class="table-bordered" %) 142 +|**Тема**|**Описание **|**Задача RM** 143 +|Создание сервиса и БД интеграции 144 +Создание структур данных|((( 145 +* Создан сервис и БД интеграции. 146 +* Созданы структуры данных. 147 +* Предзаполнены таблицы в БД. 148 +* Развернут SFTP сервер. 149 + 150 + 151 +)))|((( 152 +[[https:~~/~~/redmine.goodt.me/issues/100207>>url:https://redmine.goodt.me/issues/100207]] 153 + 154 +API_ИП/1 Разработка механизма хранения информации по интеграции 155 +))) 156 +|Реализация метода разбора данных из файла в БД интеграции|Реализован метод разбора xlsx файла **PutFileInBuffer **, проверка на структуру файла, на то что файл не пуст и забор его данных в БД интеграции.|((( 157 +[[https:~~/~~/redmine.goodt.me/issues/99568>>url:https://redmine.goodt.me/issues/99568]] 158 + 159 +Реализация API метода PutFileInBuffer для разбора данных заполненного шаблона 160 +))) 161 +|((( 162 +Регистрация модуля в метамодели и разработка базовых методов 163 +)))|((( 164 +* Модуль интеграции зарегистрирован в метамодели. 165 +* Реализован hateoas и представления бизнес-модели. 166 +* Реализованы настройки работы с SFTP сервером. 167 +* Реализованы методы: 168 +** **GetFileList **/api/import/buffer/file-list - Вызывается по кнопке "Создать поток" на странице правил обработки данных по шаблонам. Метод создает интеграционный поток и формирует список файлов соответствующие критериям (путь к сфтп, префикс, расширение). Регистрирует в системе записи интеграционных файлов (flow_file) 169 +** **GetFileData **/api/import/buffer/file-data - Вызывается по кнопке "Забрать данные в буффер" на странице правил обработки данных по шаблонам. Метод заполняет данные flow_file, вызывает метод **PutFileInBuffer**, вызывает метод **MoveFile **по результату забора данных 170 +** ** GetExecuteFlowFileListCheck **/api/integration/execution/check -Вызывается по нажатию "проверить без вставки" Метод проверяет данные в БД интеграции. 171 +** ** GetExecuteFlowFileListCheckInsert **/api/integration/execution/insert - Вызывается по нажатию "проверить и загрузить" Метод проверяет данные в БД интеграции и загружает в целевую систему. 172 +** **MoveFile - **забирает файл по указанному пути и перекладывает файл по указанному пути 173 +* В рамках методов реализовано логирование ошибок. 174 +* Доработана структура данных БД интеграции. 175 +)))|((( 176 +[[https:~~/~~/redmine.goodt.me/issues/102235>>url:https://redmine.goodt.me/issues/102235]] 177 + 178 +API_ИП/2 Разработка методов (базовые) 179 +))) 180 +|Разработка базовых интерфейсов для прохождения основного сценария|((( 181 +* Реализованы на UI основные таблицы: 182 +** Просмотр шаблонов. 183 +** Просмотр типов файла интеграционной платформы. 184 +** Просмотр состава данных шаблона интеграции. 185 +** Просмотр алгоритма проверки шаблонов интеграции. 186 +** Просмотр типов файлов для интеграции. 187 +** Просмотр реестра источников файлов для интеграции. 188 +** Просмотр правил обработки данных по шаблонам по интеграционным потокам. 189 +** Просмотр правил обработки данных по шаблонам. 190 +** Просмотр реестр интеграционных потоков. 191 +** Просмотр файлов интеграции. 192 +** Просмотр строк файлов интеграции. 193 +** Редактирование файлов интеграционного потока. 194 +** Редактирование карточки интеграционного потока. 195 +** Редактирование карточки правил обработки данных по шаблонам. 196 +* Реализованы элементы на UI, которые обеспечивают вызов методов и прохождение всего сценария работы с интеграционным потоком на примере любого бизнес- объекта: 197 +** Создание потока через вызов метода. 198 +** Создание и обработки потока через вызов метода. 199 +** Забор данных в БД интеграции через вызов метода. 200 +** Проверка и загрузка через вызов метода. 201 +** Формирование и скачивание отчетности через вызов метода. 202 +** Скачивание пустого шаблона через вызов метода. 203 +)))|((( 204 +[[https:~~/~~/redmine.goodt.me/issues/109401>>url:https://redmine.goodt.me/issues/109401]] 205 + 206 +API_ИП/2 Разработка интерфейсов 207 +))) 208 +|Разработка мастер методов для массового создания и обработки потоков |((( 209 +Реализованы мастер методы: 210 + 211 +* **executeAllIntegrationSteps **/api/integration/template-flow/{id}/execute - Вызывается по кнопке "Создать и обработать поток" для определенного правила обработки. Мастер метод который вызывает внутри себя подряд все методы: 212 +** /api/import/buffer/file-list 213 +** /api/import/buffer/file-data 214 +** /api/integration/execution/check 215 +** /api/integration/execution/insert 216 +* ((( 217 + **ChainLaunch **/api/integration/template-flow/execute - Вызывается по кнопке "Создать и обработать все потоки поток" для определенного правила обработки. Мастер метод который вызывает внутри себя подряд все методы: 218 + 219 +* /api/import/buffer/file-list 220 +* /api/import/buffer/file-data 221 +* /api/integration/execution/check 222 +* /api/integration/execution/insert 223 +))) 224 +)))|((( 225 +[[https:~~/~~/redmine.goodt.me/issues/109436>>url:https://redmine.goodt.me/issues/109436]] 226 + 227 +API_ИП/2 Разработка расширенного списка методов, реализующих функционал массового запуска базовых методов ИП 228 + 229 + 230 +))) 231 +|Стабилизация интерфейса и работы системы|((( 232 +Свёрстаны все страницы интерфейса 233 + 234 +Реализованы методы: 235 + 236 +* **GetEmptyTemplate **api/integration/api/import/buffer/file/{id}/excel - Вызывается по кнопке "Скачать". Метод генерирует пустой шаблон для заполнения на основе данных БД. 237 +* **ErrorLinesDownload **api/integration/api/template/{id}/generate - Вызывается по кнопке "Загрузить ошибочные строки". Метод генерирует файл сapi/integration/api/template/{id}/generate - Вызывается по кнопке "Загрузить о ошибочными строками, которые не загрузились в целевую систему. 238 + 239 + 240 +)))|((( 241 +[[https:~~/~~/redmine.goodt.me/issues/104186>>url:https://redmine.goodt.me/issues/104186]] 242 + 243 +API_ИП/3 Стабилизация 244 +))) 245 +|Реализация методов загрузки и обработки шаблонов загрузки бизнес объектов, часть 1 |((( 246 +Для таблиц: 247 + 248 +* Legal_entity 249 +* Division 250 +* Person 251 +* Employee 252 +* Position 253 +* Role 254 +* Division_team 255 + 256 +Выполнено: 257 + 258 +* Обновлена структура хранения данных в БД. 259 +* Исправлены представления. 260 +* Реализована обработка и вставка в целевую систему шаблонов. 261 +* Подготовлены пустые xlsx шаблоны. 262 +* Подготовлены заполненные xlsx шаблоны. 263 + 264 + 265 +)))|((( 266 +[[https:~~/~~/redmine.goodt.me/issues/101583>>url:https://redmine.goodt.me/issues/101583]] 267 + 268 +API (Интеграционная платформа). Загрузка оргструктуры. Часть 1 269 +))) 270 +|Реализация методов загрузки и обработки шаблонов загрузки бизнес объектов, часть 2|((( 271 +Для таблиц: 272 + 273 +* Project 274 +* Function 275 +* Legal_entity_team 276 +* Division_function 277 +* Function_team 278 +* Project_team 279 +* Work_function 280 +* Location 281 + 282 +Выполнено: 283 + 284 +* Обновлена структура хранения данных в БД. 285 +* Исправлены представления. 286 +* Реализована обработка и вставка в целевую систему шаблонов. 287 +* Подготовлены пустые xlsx шаблоны. 288 +* Подготовлены заполненные xlsx шаблоны. 289 + 290 + 291 +)))|((( 292 +[[https:~~/~~/redmine.goodt.me/issues/101584>>url:https://redmine.goodt.me/issues/101584]] 293 + 294 +API (Интеграционная платформа). Загрузка оргструктуры. Часть 2 295 +))) 296 +|Реализация методов загрузки и обработки шаблонов загрузки бизнес объектов, часть 3|((( 297 +Для таблиц: 298 + 299 +* Structure 300 +* Workplace 301 +* Person_disability 302 +* Person_privilege 303 +* Personnel_document 304 +* Employee_condition 305 +* Placement 306 +* employee_education 307 +* work_experience 308 + 309 +Выполнено: 310 + 311 +* Обновлена структура хранения данных в БД. 312 +* Исправлена представления. 313 +* Реализована обработка и вставка в целевую систему шаблонов. 314 +* Подготовлены пустые xlsx шаблоны. 315 +* Подготовлены заполненные xlsx шаблоны. 316 + 317 + 318 +)))|[[https:~~/~~/redmine.goodt.me/issues/101604>>url:https://redmine.goodt.me/issues/101604]]((( 319 +API (Интеграционная платформа). Загрузка оргструктуры. Часть 3 320 +))) 321 +|Реализация методов загрузки и обработки шаблонов загрузки бизнес объектов, часть НМИ|((( 322 +Для таблиц: 323 + 324 +* legal_entity_status 325 +* legal_entity_type 326 +* division_status 327 +* division_group 328 +* position_type 329 +* position_status 330 +* position_rank 331 +* job_title 332 +* position_category 333 +* family_status 334 +* system_role 335 +* team_type 336 +* team_status 337 +* work_function_status 338 +* project_type 339 +* project_status 340 +* function_status 341 +* assignment_type 342 +* assignment_status 343 +* assignment_category 344 +* job_title_cluster 345 +* cost_center 346 +* position_importance 347 +* location_group 348 +* project_team_status 349 +* substitution_type 350 +* citizenship 351 + 352 +Выполнено: 353 + 354 +* Обновлена структура хранения данных в БД 355 +* Исправлена представления 356 +* Реализована обработка и вставка в целевую систему шаблонов 357 +* Подготовлены пустые xlsx шаблоны 358 +* Подготовлены заполненные xlsx шаблоны 359 +))) 360 + 361 += ONB0 Общие требования = 362 + 363 +(% class="table-bordered" %) 364 +|=((( 365 +**Тема** 366 +)))|=((( 367 +**Описание** 368 +)))|=(% colspan="1" %)((( 369 +Задача RM 370 +))) 371 +|(% colspan="1" %)((( 372 +Редактирование раздела "Полезные материалы" через административную панель 373 +)))|(% colspan="1" %)((( 374 +У Администратора Системы появилась возможность редактировать состав раздела "Полезные материалы" процесса "Адаптация" через административную панель. Теперь состав раздела можно сконфигурировать: задать заголовок, описание и ссылку на материал из внешнего ресурса. 375 +)))|(% colspan="1" %)((( 376 +[[https:~~/~~/redmine.goodt.me/issues/106869>>url:https://redmine.goodt.me/issues/106869]] 377 +))) 378 +|((( 379 +Редактирование плана адаптации 380 +)))|((( 381 +В рамках развития процесса "Адаптации" добавлена возможность через административную панель формировать состав задач и подзадач плана адаптации работников. 382 +)))|((( 383 +[[https:~~/~~/redmine.goodt.me/issues/106949>>url:https://redmine.goodt.me/issues/106949]] 384 +))) 385 +|Настройка фоновой программы|Реализована новая фоновая программа, которая формирует индивидуальный план адаптации нового работника исходя из настройки плана адаптации. Кроме этого, назначение опросов выведены в отдельный фоновый процесс, который при необходимости отключается.|[[https:~~/~~/redmine.goodt.me/issues/106949>>url:https://redmine.goodt.me/issues/106949]] 386 + 387 += PLT0 Общие требования = 388 + 389 +(% class="table-bordered" %) 390 +|=((( 391 +**Тема** 392 +)))|=((( 393 +**Описание** 394 +)))|=(% colspan="1" %)((( 395 +Задача RM 396 +))) 397 +|(% colspan="1" %)Переход на RT-Core|(% colspan="1" %)Переход на rt-core, включение TS2 в rt-core|(% colspan="1" %)[[https:~~/~~/redmine.goodt.me/issues/103594>>url:https://redmine.goodt.me/issues/103594]] 398 +|(% colspan="1" %)Фоновая программа обработки переводов и тасков|(% colspan="1" %)Новый функционал фоновой программы позволяет обрабатывать переводы работника и "переводить" на его новое назначение его исторические таски основных процессов|(% colspan="1" %)[[https:~~/~~/redmine.goodt.me/issues/106128>>url:https://redmine.goodt.me/issues/106128]] 399 + 400 += PLT2 Оргструктура = 401 + 402 +(% class="table-bordered" %) 403 +|=((( 404 +**Тема** 405 +)))|=((( 406 +**Описание** 407 +)))|=(% colspan="1" %)((( 408 +Задача RM 409 +))) 410 +|(% colspan="1" %)((( 411 +Новая структура для раздела "Образование" профиля работника 412 +)))|(% colspan="1" %)((( 413 +В модель данных модуля добавлена новая структура для хранения данных образования работника 414 +)))|(% colspan="1" %)((( 415 +[[https:~~/~~/redmine.goodt.me/issues/110997>>url:https://redmine.goodt.me/issues/110997]] 416 +))) 417 +|(% colspan="1" %)Органиграмма 2.0|(% colspan="1" %)Обновление и изменение функционала визуализации Органиграммы|(% colspan="1" %)((( 418 +[[https:~~/~~/redmine.goodt.me/issues/93958>>url:https://redmine.goodt.me/issues/93958]] 419 + 420 +[[https:~~/~~/redmine.goodt.me/issues/101978>>url:https://redmine.goodt.me/issues/101978]] 421 +))) 422 + 423 += Разворачивание системы = 424 + 425 +(% class="table-bordered" %) 426 +|**Сервис**|**Описание**|**Значения переменных**|**Примечания** 427 +|rtl-core|Изменение или добавление|RTL_ROOT_URL: https:~/~/root_url| 428 +|rtl-job|Изменение или добавление|((( 429 +RTL_BACKEND_TASKSETTING_URL: [[__https:~~/~~/root_url/rtl-api/rt-core/old__>>url:https://root_url/rtl-api/rt-core/old]] 430 + 431 +RTL_BACKEND_RTCORE_URL: [[__https:~~/~~/root_url/rtl-api/rt-core__>>url:https://root_url/rtl-api/rt-core]] 432 +)))| 433 +|hr-competence|Изменение или удаление| |Удален frontend сервис 434 +|my-attestation|Изменение или удаление| |Удален frontend сервис 435 +|vkph-admin|Изменение или добавление| |Добавлен frontend сервис