feat: в письме о сообщении чата — строка «Прикреплены файлы: …»
Tests / frontend-test (pull_request) Failing after 28s

Иначе сообщение из одного файла приходило письмом с пустым текстом.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
gorbenko.pavel
2026-10-14 14:36:39 +05:00
parent 53535e4180
commit 2bcfb9f6f4
3 changed files with 29 additions and 3 deletions
@@ -23,6 +23,8 @@ export interface IChatNotifyInput {
authorName: string;
authorEmail: string;
messageText: string;
/** Имена приложенных файлов, как их выбрал пользователь (без складского префикса). */
fileNames?: string[];
requestCode: string;
requestUrl: string;
requestTitle: string;
@@ -32,6 +34,17 @@ export interface IChatNotifyInput {
const sameEmail = (a: string, b: string): boolean => a.toLowerCase() === b.toLowerCase();
/**
* Текст для письма: сообщение и строка о файлах. Без неё сообщение из одного
* файла пришло бы письмом с пустым текстом. Сами файлы в письмо не кладём —
* они в библиотеке, открываются по ссылке на заявку.
*/
function letterText(text: string, fileNames: string[]): string {
if (fileNames.length === 0) return text;
const files = `Прикреплены файлы: ${fileNames.join(', ')}`;
return text ? `${text}\n\n${files}` : files;
}
/**
* Собрать тело запроса к потоку или undefined, если писать некому.
*
@@ -62,7 +75,7 @@ export function buildChatNotifyBody(input: IChatNotifyInput): IChatNotifyBody |
initiatorEmail,
mentionedEmails: mentioned,
authorName: input.authorName,
messageText: input.messageText,
messageText: letterText(input.messageText, input.fileNames || []),
RequestUniqueCode: input.requestCode,
requestUrl: input.requestUrl,
requestTitle: input.requestTitle