export account

main
alex 2024-02-03 23:47:41 +01:00
parent 3128b50540
commit 7c9e6be971
4 changed files with 19 additions and 17 deletions

View File

@ -22,6 +22,7 @@ import {
getUserSession, getUserSession,
hashPassword, hashPassword,
matchPassword, matchPassword,
newAccountExportId,
newFeedbackId, newFeedbackId,
newStoreId, newStoreId,
newUserId, newUserId,
@ -687,17 +688,8 @@ export async function ExportUserAccount(req: Request, res: Response) {
(async () => { (async () => {
try { try {
// send email with user data
console.log("email");
// simulate delay
await new Promise((resolve) => setTimeout(resolve, 5000));
// create json file with user data // create json file with user data
console.log("file");
const exportData = { const exportData = {
user: { user: {
user_id: user.user_id, user_id: user.user_id,
@ -714,7 +706,10 @@ export async function ExportUserAccount(req: Request, res: Response) {
}, },
}; };
fs.writeJson(`./user-profile-exports/${user.user_id}.json`, exportData); fs.writeJson(
`./user-profile-exports/${newAccountExportId()}.json`,
exportData
);
// send email with file // send email with file
@ -722,8 +717,8 @@ export async function ExportUserAccount(req: Request, res: Response) {
process.env.RABBITMQ_MAIL_QUEUE as string, process.env.RABBITMQ_MAIL_QUEUE as string,
Buffer.from( Buffer.from(
JSON.stringify({ JSON.stringify({
m: "test@roese.dev", // UserMail m: email, // UserMail
t: "userAccountExportFinish", // TemplateId t: "dashboardUserAccountExportFinish", // TemplateId
l: "de", // LanguageId l: "de", // LanguageId
// BodyData // BodyData
b: { b: {
@ -748,20 +743,23 @@ export async function ExportUserAccount(req: Request, res: Response) {
export function GetExportedUserAccount(req: Request, res: Response) { export function GetExportedUserAccount(req: Request, res: Response) {
try { try {
const { userId } = req.params; const { id } = req.params;
if (!userId) { if (!id) {
return res.status(400).send({ err: "invalid request" }); return res.status(400).send({ err: "invalid request" });
} }
const file = `./user-profile-exports/${userId}.json`; const file = `./user-profile-exports/${id}.json`;
res.download(file, (err) => { res.download(file, (err) => {
if (err) { if (err) {
logger.error(err);
res.status(500).send({ err: "invalid request" }); res.status(500).send({ err: "invalid request" });
} }
}); });
// delete file after download
fs.remove(file);
} catch (error) { } catch (error) {
logger.error(error); logger.error(error);
res.status(500).send({ err: "invalid request" }); res.status(500).send({ err: "invalid request" });

View File

@ -50,6 +50,10 @@ export function newFeedbackId() {
return uuidv4(); return uuidv4();
} }
export function newAccountExportId() {
return uuidv4();
}
export async function saveSession( export async function saveSession(
req: Request, req: Request,
res: Response, res: Response,

View File

@ -1 +0,0 @@
{"user":{"user_id":"4417984c-de81-4930-8ae7-9f178d98ddf7","username":"Alexander","account_name":"alex","calendar_max_future_booking_days":13,"calendar_min_earliest_booking_time":8,"calendar_using_primary_calendar":true,"language":"de","analytics_enabled":false}}

View File

@ -0,0 +1 @@
{"user":{"user_id":"6d86ae13-05cb-4d3d-a9c2-112783d133b9","username":"Mikael cool","account_name":"mikael","calendar_max_future_booking_days":null,"calendar_min_earliest_booking_time":null,"calendar_using_primary_calendar":true,"language":"de","analytics_enabled":true}}