плотном графике
История обновлений
v5.1.0 - 2023-09-05
Разработка
- 2023 год, май - началась разработка версии 5.1.0, месяц проектирования и обсуждения
- 2023 год, июнь - началась разработка, более двух месяцев работы, особая благодарность команде и активным пользователям за участие в разработке и тестировании
- 2023 год, август - началась публичная бета-версия, около месяца тестирования и устранения ошибок (в процессе поддержка нескольких пользователей в рабочем режиме)
- 2023 год, начало сентября - официальный релиз (после тестирования несколькими пользователями, версия готова к использованию в рабочем режиме)
Обновление версии 4.x
Из-за прекращения поддержки SpringBoot 2.x и Vue 2.x в конце ноября, наша версия 4.x также прекращает обновления.
В связи с большим количеством пользователей и стабильностью функций, обновления прекращаются в конце ноября, но поддержка и устранение ошибок продолжаются (в форме прямого внесения изменений в ветку 4.x без выпуска новых версий).
Видео-введение
Для лучшего понимания версии 5.1.0 автор подготовил соответствующие видео для быстрого ознакомления
Основные обновления* [Основное обновление] Улучшение кода, реализация единого хранения данных для нескольких источников данных (спасибо WangBQ! PR349)
- [Несовместимое обновление] Удаление функции отправки SMS, интеграция более мощного пакета sms4j (спасибо Юйцзяо! PR367)
- [Несовместимое обновление] Интеграция с powerjob для распределенного управления задачами, удаление xxljob из-за прекращения поддержки (спасибо yhan219! PR359)
- [Основное обновление] Добавление функции авторизации через сторонние сервисы, поддержка большинства сторонних сервисов (спасибо Три Три! PR370)
- [Несовместимое обновление] Добавление функции авторизации клиентов, не требующей изменения кода для подключения к нескольким устройствам (спасибо Michelle. Chung! PR379)
- [Основное обновление] Добавление шифрования передачи данных между клиентом и сервером, использование AES+RSA для динамического шифрования (спасибо wdhcr! PR377)
- [Основное обновление] Добавление функции единого входа через сторонние сервисы, интеграция с maxkey
- [Несовместимое обновление] Улучшение конфигурации сериализации Redis, переход на универсальную форму (обновление требует очистки всех данных Redis)
Обновление зависимостей
- Обновление springboot 3.0.7 => 3.1.3
- Обновление springboot-admin 3.1.3 => 3.1.5
- Обновление springdoc 2.1.0 => 2.2.0
- Обновление spring-mybatis 3.0.1 => 3.0.2
- Обновление mybatis-plus 3.5.3.1 => 3.5.3.2
- Обновление easyexcel 3.2.1 => 3.3.2
- Обновление mapstruct-plus 1.2.3 => 1.35 решение проблемы с перекомпиляцией измененных сущностей в IDEA
- обновление satoken 1.34.0 => 1.35.0. RC оптимизация конфигурации истечения срока действия поддержка кастомного срока действия для токенов на разных платформах
- обновление dynamic-ds 3.6.1 => 4.1.3 поддержка SpringBoot3
- обновление sms4j 2.2.0
- обновление hutool 5.8.18 => 5.8.20
- обновление redisson 3.20.1 => 3.23.4
- обновление lock4j 2.2.4 => 2.2.5
- обновление aws-java-sdk-s3 1.12.400 => 1.12.540
- обновление maven-surefire-plugin 3.0.0 => 3.1.2
Функциональные обновления
- обновление оптимизация экспорта Excel для объединения данных обработка данных при инициализации класса
- обновление оптимизация упрощение синтаксиса плагина flatten
- обновление оптимизация поддержка локальной виртуальной доменной зоны для отладки (спасибо Дай Синьдун! pr363)
- обновление переработка переименование Swagger в springdoc внутри фреймворка для избежания путаницы
- обновление переработка перемещение встроенных конфигураций системы в пакет common для независимой загрузки, исключающей возможность произвольного изменения пользователем
- обновление оптимизация смена репозитория Maven на Huawei Cloud (из-за отсутствия обновления aliyun не удается получить зависимости)
- обновление оптимизация обновление satoken для поддержки кастомного срока действия для токенов на разных платформах * обновление оптимизация логики RepeatSubmitAspect для предотвращения проблем с параллельными запросами
- обновление оптимизация добавление обработки двух типов исключений в глобальном обработчике исключений
- обновление оптимизация предоставление полного SQL-скрипта для PowerJob для упрощения использования
- обновление оптимизация фильтрация null значений в других методах StreamUtils (спасибо bleachtred! pr390)
- обновление оптимизация сопоставление портов PowerJob с основным приложением для предотвращения конфликтов в кластере
- обновление оптимизация поддержка просмотра только своих прав доступа для роли решение проблемы с невозможностью просмотра созданных пользователем ролей
- обновление изменение шаблонов генерации кода, использование метода addDateRange для диапазона дат (спасибо LiuHao! pr397)
- обновление оптимизация добавление поля children для генерации дерева в фронтенде
- обновление оптимизация улучшение CryptoFilter для проверки null значений
- обновление оптимизация сопоставление пути websocket с версией cloud
- обновление оптимизация обновление возвращаемого значения политики входа (спасибо zlyx)
- обновление изменение шаблонов генерации кода, изменение порядка открытия диалогового окна и запроса интерфейса
- обновление оптимизация проверка токена и клиента в SaInterceptor (спасибо zlyx! pr402) * обновление оптимизация конвертация словарей в выпадающие списки при экспорте Excel
- обновление оптимизация поддержка передачи clientid через параметры
- обновление оптимизация конвертация словарей в выпадающие списки при экспорте Excel без необходимости указания индекса (спасибо Lionel! pr410)
- обновление оптимизация упрощение конфигурации пула потоков
- обновление оптимизация отключение ненужных логов heartbeat для powerjob
- обновление оптимизация адаптация механизма подключения для MySQL 8.0.34
- обновление оптимизация использование EncryptUtils для единой обработки шифрования
- обновление оптимизация удаление ненужных полей состояния в словарях (редко используемые, отключение их может вызвать проблемы отображения)
- обновление оптимизация отделы и роли не могут быть отключены, если они привязаны к пользователям
- обновление оптимизация должности не могут быть отключены, если они привязаны к пользователям
- обновление оптимизация запросы управления пользователями возвращают только данные отделов, ролей и должностей, которые не отключены
- обновление оптимизация добавление возврата псевдонима для авторизованных пользователей
- обновление оптимизация изменение опции выбора ответственного лица для управления отделами на выпадающий список (спасибо Lionel! pr410)
- обновление оптимизация глобальный обработчик исключений не выводит специфическую информацию о стеке вызовов для бизнес-исключений для уменьшения ненужного хранения логов
- обновление оптимизация удаление избыточного кэширования пользователей и унификация хранения
- обновление оптимизация ослабление ассоциации ролей с меню разрешений, теперь не требуется администратор
Новые возможности
- добавление метода RedisUtils для пакетного удаления ключей хэша
- добавление метода загрузки файла Oss
- добавление возможности экспорта Excel с выпадающими списками
- добавление метода RedisUtils setObjectIfAbsent для установки значения, если оно отсутствует
Исправления ошибок
- исправление ошибки позиционирования аннотации маскирования данных
- исправление проблемы перезаписи кэша с одним ключом для нескольких клиентов OssClient* fix Исправление проблемы с определением отключения маскировки данных для многопользовательской среды
- fix Исправление проблемы с некорректным переключением экземпляра службы OssClient (спасибо jenn! pr360)
- fix Исправление проблемы с некорректным типом параметра, вызывающим ошибку пакета синхронизации PostgreSQL
- fix Исправление проблемы с изменением типа параметра без обновления аннотаций валидации
- fix Исправление проблемы с неверным подсчетом ошибок входа без установки времени действия кэша ошибок (спасибо konbai! pr366)
- fix Исправление проблемы с использованием пакета common-core aop-аннотаций без добавления класса реализации aop, вызывающее ошибку при использовании в отдельности
- fix Исправление проблемы с несколькими параметрами маппера без аннотации @Param
- fix Исправление проблемы с ошибкой значения запроса для входа по электронной почте
- fix Исправление проблемы с повышением привилегий пользователем путем изменения идентификатора роли администратора
- fix Исправление проблемы с некорректным использованием аннотации кэширования словаря
- fix Исправление проблемы с фильтрацией прав доступа для дерева выбора подразделений
- fix Исправление проблемы с некорректным хранением ключа кэша CacheName
- fix Исправление проблемы с генерацией колонок формы добавления или редактирования в фронтенде генерации кода
- fix Исправление проблемы с использованием встроенного идентификатора администратора в новой роли
- fix Исправление проблемы с генерацией колонок формы добавления или редактирования в фронтенде генерации кода
- fix Исправление проблемы с неудалением онлайн-пользователей при истечении срока действия токена
- fix Исправление проблемы с исключением при конвертации данных в модуле шифрования
- fix Исправление проблемы с невозможностью десериализации потенциального класса исключения
- fix Исправление проблемы с обновлением списка при нажатии кнопки "Обновить" в режиме редактирования
- fix Исправление проблемы с сохранением изменений типа авторизации на стороне клиента (спасибо David Wei! pr400)
- fix Исправление проблемы с неправильным использованием ограниченной очереди и очереди с приоритетом
- fix Исправление проблемы с ошибкой переменной кода родителя в шаблоне дерева
- fix Исправление проблемы с появлением нечитаемых символов при развертывании системы
- fix Исправление проблемы с невозможностью отображения первого уровня меню
- fix Исправление проблемы с возможностью нарушения прав доступа (спасибо 丶Stone! pr416)
- fix Исправление проблемы с отсутствием запятой в параметрах страницы генерации кода### Удаленные функции
- remove удалил原有短信功能 (смс-функции удалены, рекомендуется использовать sms4j)
- remove удалил xxljob功能 (функции xxljob удалены, рекомендуется использовать powerjob)