fix: stream newsletter progress to client
This commit is contained in:
parent
e1f6b36336
commit
1c6c123142
2 changed files with 46 additions and 55 deletions
|
@ -6,7 +6,10 @@ import NewsletterDatesFactory from "../../../factory/admin/club/newsletter/newsl
|
|||
import NewsletterRecipientsService from "../../../service/club/newsletter/newsletterRecipientsService";
|
||||
import NewsletterRecipientsFactory from "../../../factory/admin/club/newsletter/newsletterRecipients";
|
||||
import { FileSystemHelper } from "../../../helpers/fileSystemHelper";
|
||||
import { CreateNewsletterCommand, SynchronizeNewsletterCommand } from "../../../command/club/newsletter/newsletterCommand";
|
||||
import {
|
||||
CreateNewsletterCommand,
|
||||
SynchronizeNewsletterCommand,
|
||||
} from "../../../command/club/newsletter/newsletterCommand";
|
||||
import NewsletterCommandHandler from "../../../command/club/newsletter/newsletterCommandHandler";
|
||||
import { SynchronizeNewsletterDatesCommand } from "../../../command/club/newsletter/newsletterDatesCommand";
|
||||
import NewsletterDatesCommandHandler from "../../../command/club/newsletter/newsletterDatesCommandHandler";
|
||||
|
@ -188,15 +191,14 @@ export async function createNewsletter(req: Request, res: Response): Promise<any
|
|||
export async function getNewsletterPrintoutProgressById(req: Request, res: Response): Promise<any> {
|
||||
let newsletterId = parseInt(req.params.newsletterId);
|
||||
|
||||
res.setHeader("Content-Type", "text/event-stream");
|
||||
res.setHeader("Cache-Control", "no-cache");
|
||||
res.setHeader("Connection", "keep-alive");
|
||||
|
||||
res.flushHeaders();
|
||||
res.writeHead(200, {
|
||||
"Content-Type": "text/plain",
|
||||
"Transfer-Encoding": "chunked",
|
||||
});
|
||||
|
||||
const progressHandler = (data: NewsletterEventType) => {
|
||||
if (data.newsletterId == newsletterId && data.kind == "pdf") {
|
||||
res.write(JSON.stringify(data));
|
||||
res.write(JSON.stringify(data) + "//");
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -287,15 +289,14 @@ export async function sendNewsletterById(req: Request, res: Response): Promise<a
|
|||
export async function getNewsletterSendingProgressById(req: Request, res: Response): Promise<any> {
|
||||
let newsletterId = parseInt(req.params.newsletterId);
|
||||
|
||||
res.setHeader("Content-Type", "text/event-stream");
|
||||
res.setHeader("Cache-Control", "no-cache");
|
||||
res.setHeader("Connection", "keep-alive");
|
||||
|
||||
res.flushHeaders();
|
||||
res.writeHead(200, {
|
||||
"Content-Type": "text/plain",
|
||||
"Transfer-Encoding": "chunked",
|
||||
});
|
||||
|
||||
const progressHandler = (data: NewsletterEventType) => {
|
||||
if (data.newsletterId == newsletterId && data.kind == "mail") {
|
||||
res.write(JSON.stringify(data));
|
||||
res.write(JSON.stringify(data) + "//");
|
||||
}
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue