This commit is contained in:
Philipp Dormann 2025-04-02 21:55:21 +02:00
parent a09bf31e22
commit 35e58d233e
Signed by: philipp
GPG Key ID: 3BB9ADD52DCA4314
2 changed files with 22 additions and 13 deletions

View File

@ -2,7 +2,7 @@
import { _ } from "svelte-i18n";
import { clickOutside } from "../base/outsideclick";
import { onMount } from "svelte";
export let download_details = [];
export let download_details = "";
export let modal_open;
onMount(() => {
document.onkeydown = (e) => {
@ -65,12 +65,12 @@
/></svg
>
</div>
<div class="mt-3 sm:text-left">
<div class="mt-3 sm:text-left text-base">
<h3 class="text-lg leading-6 font-medium text-gray-900">
Download läuft...
</h3>
<div class="w-full">
{JSON.stringify(download_details)}
{download_details}
</div>
</div>
</div>

View File

@ -20,13 +20,10 @@
export let generate_teams = [];
//
export let download_modal_open = false;
export let download_now = 0;
export let download_total = 0;
export let download_details = [];
export let download_details = "";
function generateSponsoringContract(locale) {
download_modal_open = true;
download_now = 0;
if (generate_orgs.length > 0) {
generateOrgContracts(locale);
} else if (generate_teams.length > 0) {
@ -69,19 +66,24 @@
async function generateOrgContracts(locale) {
toast.loading($_("generating-pdf"));
download_total = generate_orgs.length;
let totalCount = 0;
for (const o of generate_orgs) {
totalCount++;
for (const t of o.teams) {
totalCount++;
}
}
console.log({ totalCount });
let count = 0;
for (const o of generate_orgs) {
count++;
let runners =
await RunnerOrganizationService.runnerOrganizationControllerGetRunners(
o.id,
true
);
if (runners.length > 0) {
download_details.push({
name: runners[0].group.name,
downloaded: false,
});
download_details = runners[0].group.name;
}
await documentServer
.generateContracts(runners, locale)
@ -97,6 +99,9 @@
let runners = await RunnerTeamService.runnerTeamControllerGetRunners(
t.id
);
if (runners.length > 0) {
download_details = runners[0].group.name;
}
await documentServer
.generateContracts(runners, locale)
.then((blob) => {
@ -106,6 +111,10 @@
t.name
}-${locale}-${createId()}.pdf`
);
console.log({ count });
if (count === totalCount) {
download_modal_open = false;
}
})
.catch((err) => {});
}