/
aaronair
/
Test_task_rt_solution
Обзор
Документация
Войти
/
aaronair
/
Test_task_rt_solution
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/lib/excel.ts
28 строк
1 KB
Ilikedrinkpivo
first_commit
28 май 2026, 14:51
28 май 2026, 14:51
b4498fc
Код
Авторство
О чём код?
import * as XLSX from "xlsx"; import type { Initiative } from "@/features/initiatives/types"; import { STATUS_META } from "@/features/initiatives/constants"; import { formatMillions } from "@/lib/format"; export function exportInitiativesToXlsx( items: Initiative[], filename = "ai-initiatives.xlsx", ): void { const rows = items.map((it) => ({ Название: it.title, Статус: STATUS_META[it.status].label, Подразделение: it.segment, Исполнитель: it.contractor, Владелец: it.owner.name, "E-mail владельца": it.owner.email, Технологии: it.technologies.join(", "), "Бизнес-эффект": formatMillions(it.businessEffect) ?? "", Бюджет: formatMillions(it.budget) ?? "", Комментарий: it.comment ?? "", "Дата заявки": it.applicationDate ?? "", })); const sheet = XLSX.utils.json_to_sheet(rows); const book = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(book, sheet, "Инициативы"); XLSX.writeFile(book, filename); }