Ausstellen
This commit is contained in:
@@ -18,6 +18,8 @@ import { BASE_URI } from "#lib/constants.js";
|
||||
import { getAnsichtsausweis, getDatenblatt } from "#lib/server/ausweis.js";
|
||||
import { PutObjectCommand } from "@aws-sdk/client-s3";
|
||||
import { s3Client } from "#lib/s3.js";
|
||||
import { createInvoice } from "#lib/server/invoice.js";
|
||||
import { tryCatch } from "#lib/tryCatch.js";
|
||||
|
||||
export const GET = defineApiRoute({
|
||||
input: z.object({
|
||||
@@ -125,27 +127,24 @@ export const GET = defineApiRoute({
|
||||
});
|
||||
}
|
||||
|
||||
// TODO
|
||||
// SECTION: Rechnung erstellen (LexOffice)
|
||||
// Wir wollen die Rechnung an lex office versenden, und uns die ID von da holen.
|
||||
// Falls die Rechnung bereits existiert ist das nicht nötig.
|
||||
// if (!$rechnung->lex_office_id) {
|
||||
// [$lex_office_id, $renr] = createInvoice($ausweis, $rechnung);
|
||||
// sleep(1); // TODO: Nach der Umstellung von LexOffice auf etwas anderes MUSS das hier unbedingt entfernt werden!
|
||||
if (!rechnung.lex_office_id) {
|
||||
const [result, error] = await tryCatch(createInvoice(ausweis, rechnung));
|
||||
|
||||
// if (!$lex_office_id || !$renr) {
|
||||
// die("Bei der Erstellung der Rechnung ist etwas schiefgelaufen - Möglicherweise ist etwas mit LexOffice?");
|
||||
// }
|
||||
if (error) {
|
||||
return
|
||||
}
|
||||
|
||||
// $rechnung->lex_office_id = $lex_office_id;
|
||||
// $rechnung->rechnungsnummer = $renr;
|
||||
// $rechnung->save();
|
||||
// }
|
||||
const { id, voucherNumber } = result;
|
||||
|
||||
// TODO
|
||||
// if ($ausweis->erledigt != 2) {$ausweis->erstellungsdatum = date("Y-m-d H:i:s");}
|
||||
// $ausweis->erledigt = 2;
|
||||
// $ausweis->save();
|
||||
await prisma.rechnung.update({
|
||||
where: {
|
||||
id: rechnung.id
|
||||
},
|
||||
data: {
|
||||
lex_office_id: id
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const pdfAusweis = await getAnsichtsausweis(
|
||||
ausweis,
|
||||
|
||||
@@ -3,6 +3,7 @@ import { VALID_UUID_PREFIXES } from "#lib/constants.js";
|
||||
import { generatePrefixedId } from "#lib/db.js";
|
||||
import { adminMiddleware, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
||||
import { hashPassword } from "#lib/password.js";
|
||||
import { createLexOfficeCustomer } from "#lib/server/lexoffice.js";
|
||||
import { sendRegisterMail } from "#lib/server/mail/registrierung.js";
|
||||
import { prisma } from "#lib/server/prisma.js";
|
||||
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
||||
@@ -117,6 +118,17 @@ export const PUT = defineApiRoute({
|
||||
}
|
||||
})
|
||||
|
||||
const lex_office_id = await createLexOfficeCustomer(user);
|
||||
|
||||
await prisma.benutzer.update({
|
||||
where: {
|
||||
id: user.id
|
||||
},
|
||||
data: {
|
||||
lex_office_id
|
||||
}
|
||||
})
|
||||
|
||||
await sendRegisterMail(user)
|
||||
|
||||
return { id }
|
||||
|
||||
Reference in New Issue
Block a user