Fix PRE_TICKET DB constraint + redesign creation form
- Fixed CHECK constraint on support_ticket.status to allow ordinal 14 - Redesigned TicketCreationForm with modern card-based UI: - "How can we help?" landing ...
Добавить статус PRE TICKET с опцией Start Chat
- TicketCreationForm: две кнопки - "Start Chat" (предварительный билет, нет названия) обязательный, только тема) и «Подать билет» (полный билет с названием) - T...
Add PRE_TICKET creation and convert-to-ticket endpoint
- createTicket: when preTicket=true, sets status to PRE_TICKET, skips assignment (no title required) - PUT /tickets/{id}/convert: converts PRE_TICKET to NEW, ...
Добавить статус PRE TICKET и флаг preTicket для создания запроса
Новый статус PRE TICKET(14) для чат-сессий, где пользователь начинает Общаться без официального оформления билета. могут быть преобразованы в Полный билет позже...
Извлеките массив тем из { тем: [...]} API ответ
Конечная точка GET/api/support/topics возвращается { тема: [...]}, а не сырой массив. Все потребители теперь извлекают данные.Темы перед использованием массива.
Открытое окно поддержки с ошибкой 404 страниц
Заменить старую /помощь / билет / новую навигацию с помощью инструмента: Open CustomEvent Откройте окно поддержки непосредственно.
Запрос на слияние #4054 от Yashh56 / кэш-контроль
feat: добавить заголовки управления кэшем в ответ GET
Merge pull request #4090 from ****************
feat(funnels): add per-step event property filters
Use settings timezone in revenue chart date range
The revenue chart was using the browser's local timezone instead of the timezone configured in analytics settings. This caused the chart to show different time ...
Назначение ролей по умолчанию для членов при создании
**************** теперь назначает членов (каждый) роль от organization.roleMemberID. ************************************************* «Члены» (Everyone) и «Чл...
Add POST **************** endpoint
Triggers org-wide member_rights_applied recalculation. Needed after schema migrations or manual DB changes to permissions.
Use targeted role-scoped rights recalculation
SecurityRoleController now uses updateRoleMemberRightsApplied() to only recalculate members who have the modified role, instead of recalculating all members in ...
Пересчет целевых прав для dept, названия должности и изменения ролей
- DepartmentService: пересчитывает только членов в пострадавшем отделе После создания/обновления/удаления JobTitleService: пересчитывает только членов с соответ...
Пересчет член права применяется после создания нового члена
Calls updateMemberRightsПодал заявку на нового участника после того, как оба Создать OrganizationMember и создатьOrganizationTeamMember Немедленно применяются п...
Recalculate member_rights_applied after role create/update/delete
The member_rights_applied table was never recalculated when roles were modified, causing all members to have 0 applied rights. Now calls **************** after ...
Rebuild with updated shared library containing support permissions
SecurityService needs the new ACCEPT_SUPPORT_TICKETS and MANAGE_SUPPORT entries in RoleRightType enum to include them in *** session rights.
Granular role editing, label swapping, and Team Members support
- Add isAllowEditTitle and isAllowEditSecurity to SecurityRole interface - Allow editing security settings on Members/Team Members roles (previously fully locke...
Migrate Everyone role to Members and create Team Members role
- Rename ROLE_EVERYONE_ID column to ROLE_MEMBER_ID - Rename existing "Everyone (Applies To All)" roles to "Members" - Set **************** flags on existing sys...
Enforce role protection flags and add parent label support to session
- Enforce isAllowEditSecurity in SecurityRoleController update endpoint - Add parentMemberTitlePlural and parentTeamMemberTitlePlural to *** session - Resolve p...
Добавить гранулированные флаги защиты ролей и роль системы членов команды
- Добавить isAllowEditTitle и isAllowEditSecurity в OrgRole - Переименовать рольEveryoneID в рольMemberID в Организации, добавить рольTeamMemberID Переименовать...
Добавить отображение ошибок, когда создание темы не удается
Показывает сообщение об ошибке API в диалоговом окне вместо молчаливого отказа.
Загрузка отдела исправления в TopicManager
Отправьте заголовок X-***-Token (совпадающий шаблон DepartmentManager) и Извлеките отделы из формы ответа data.departments.
Добавьте защиту Array.isArray в ответы API для предотвращения ошибок .map
API может возвращать объекты ошибок вместо массивов в бэкэнд-таблицах пока не существует. Охраняйте все операции с массивом с помощью проверок Array.isArray.
Enable redirect following for MaxMind download
MaxMind returns 302 redirect to the actual file. HttpClient wasn't following it, causing the sync to fail with HTTP 302.
Add Support section to settings page
Adds Topics, Notifications, and Status & Response Times cards that link to /support?tab=settings.
Add SecurityConfig to permit daemon trigger and actuator endpoints
Spring Security defaults blocked all endpoints with 401. Added explicit config to permit /api/daemon/** and /actuator/** without authentication.
Allow 6 settings cards per row on xl screens and hide Club House nav item
Settings page grids now scale to 6 columns at xl breakpoint. Club House menu item commented out in NavPri.
Update ticket popup tool window to use light theme matching chatColors
Replace dark theme (dark backgrounds, white text, amber accents) with the light color scheme used by all other popup tool windows in the app.
Remove MANAGE_SUPPORT conditional from settings/analytics tabs, enable NavPri slide-out
All tabs now always visible. Removed disablePanel from NavPri Support entry so the slide-out panel works on hover.
Make description textarea fill remaining popup window height
Removed minRows/maxRows constraints and set flex layout on the input root so the textarea expands to fill all available vertical space.
Как вы видите судоходство?
Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.