Ausweis, Ausstellung, Adresse
This commit is contained in:
@@ -20,6 +20,7 @@ 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";
|
||||
import { getBedarfsausweisWohnenKomplett, getVerbrauchsausweisGewerbeKomplett, getVerbrauchsausweisWohnenKomplett } from "#lib/server/db.js";
|
||||
|
||||
export const GET = defineApiRoute({
|
||||
input: z.object({
|
||||
@@ -46,59 +47,11 @@ export const GET = defineApiRoute({
|
||||
| null = null;
|
||||
|
||||
if (ausweisart === Enums.Ausweisart.VerbrauchsausweisWohnen) {
|
||||
ausweis = await prisma.verbrauchsausweisWohnen.findUnique({
|
||||
where: {
|
||||
id: id_ausweis,
|
||||
},
|
||||
include: {
|
||||
aufnahme: {
|
||||
include: {
|
||||
bilder: true,
|
||||
objekt: {
|
||||
include: {
|
||||
benutzer: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
ausweis = await getVerbrauchsausweisWohnenKomplett(id_ausweis)
|
||||
} else if (ausweisart === Enums.Ausweisart.VerbrauchsausweisGewerbe) {
|
||||
ausweis = await prisma.verbrauchsausweisGewerbe.findUnique({
|
||||
where: {
|
||||
id: id_ausweis,
|
||||
},
|
||||
include: {
|
||||
aufnahme: {
|
||||
include: {
|
||||
bilder: true,
|
||||
objekt: {
|
||||
include: {
|
||||
benutzer: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
ausweis = await getVerbrauchsausweisGewerbeKomplett(id_ausweis)
|
||||
} else if (ausweisart === Enums.Ausweisart.BedarfsausweisWohnen) {
|
||||
ausweis = await prisma.bedarfsausweisWohnen.findUnique({
|
||||
where: {
|
||||
id: id_ausweis,
|
||||
},
|
||||
include: {
|
||||
aufnahme: {
|
||||
include: {
|
||||
bilder: true,
|
||||
objekt: {
|
||||
include: {
|
||||
benutzer: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
ausweis = await getBedarfsausweisWohnenKomplett(id_ausweis)
|
||||
}
|
||||
|
||||
if (!ausweis) {
|
||||
@@ -273,5 +226,34 @@ fax 040 · 209339859
|
||||
subject: `Ihr Originalausweis vom Ingenieurbüro Cornelsen (ID: ${ausweis.id})`,
|
||||
text,
|
||||
});
|
||||
|
||||
if (ausweisart === Enums.Ausweisart.VerbrauchsausweisWohnen) {
|
||||
await prisma.verbrauchsausweisWohnen.update({
|
||||
where: {
|
||||
id: ausweis.id
|
||||
},
|
||||
data: {
|
||||
ausgestellt: true
|
||||
}
|
||||
})
|
||||
} else if (ausweisart === Enums.Ausweisart.VerbrauchsausweisGewerbe) {
|
||||
await prisma.verbrauchsausweisGewerbe.update({
|
||||
where: {
|
||||
id: ausweis.id
|
||||
},
|
||||
data: {
|
||||
ausgestellt: true
|
||||
}
|
||||
})
|
||||
} else if (ausweisart === Enums.Ausweisart.BedarfsausweisWohnen) {
|
||||
await prisma.bedarfsausweisWohnen.update({
|
||||
where: {
|
||||
id: ausweis.id
|
||||
},
|
||||
data: {
|
||||
ausgestellt: true,
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
@@ -7,10 +7,7 @@ import {
|
||||
authorizationHeaders,
|
||||
} from "#lib/middleware/authorization.js";
|
||||
import {
|
||||
BedarfsausweisWohnen,
|
||||
Enums,
|
||||
VerbrauchsausweisGewerbe,
|
||||
VerbrauchsausweisWohnen,
|
||||
} from "#lib/server/prisma.js";
|
||||
import { prisma } from "#lib/server/prisma.js";
|
||||
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
||||
@@ -21,14 +18,14 @@ import { getPrismaAusweisAdapter } from "#lib/server/ausweis.js";
|
||||
|
||||
export const GET = defineApiRoute({
|
||||
input: z.object({
|
||||
uid: UUidWithPrefix,
|
||||
id: UUidWithPrefix,
|
||||
}),
|
||||
headers: authorizationHeaders,
|
||||
middleware: adminMiddleware,
|
||||
async fetch({ uid }, context, user) {
|
||||
const ausweisart = getAusweisartFromId(uid);
|
||||
async fetch({ id }, context, user) {
|
||||
const ausweisart = getAusweisartFromId(id);
|
||||
const adapter = getPrismaAusweisAdapter(
|
||||
uid
|
||||
id
|
||||
) as typeof prisma.verbrauchsausweisWohnen;
|
||||
|
||||
if (!adapter) {
|
||||
@@ -40,7 +37,7 @@ export const GET = defineApiRoute({
|
||||
|
||||
const ausweis = await adapter.findUnique({
|
||||
where: {
|
||||
uid,
|
||||
id,
|
||||
},
|
||||
include: {
|
||||
aufnahme: {
|
||||
@@ -193,7 +190,7 @@ export const GET = defineApiRoute({
|
||||
adapter as typeof prisma.verbrauchsausweisWohnen
|
||||
).update({
|
||||
where: {
|
||||
uid,
|
||||
id,
|
||||
},
|
||||
data: {
|
||||
registriernummer:
|
||||
|
||||
@@ -101,6 +101,19 @@ export const PUT = defineApiRoute({
|
||||
betrag,
|
||||
bezahlmethode: bezahlmethode,
|
||||
status: Enums.Rechnungsstatus.open,
|
||||
abweichende_versand_adresse: input.abweichende_versand_adresse,
|
||||
email: input.email,
|
||||
empfaenger: input.empfaenger,
|
||||
ort: input.ort,
|
||||
plz: input.plz,
|
||||
strasse: input.strasse,
|
||||
telefon: input.telefon,
|
||||
versand_ort: input.versand_ort,
|
||||
versand_empfaenger: input.versand_empfaenger,
|
||||
versand_plz: input.versand_plz,
|
||||
versand_strasse: input.versand_strasse,
|
||||
versand_zusatzzeile: input.versand_zusatzzeile,
|
||||
zusatzzeile: input.zusatzzeile,
|
||||
verbrauchsausweis_wohnen: {
|
||||
connect: {
|
||||
id: ausweis_id
|
||||
@@ -118,6 +131,19 @@ export const PUT = defineApiRoute({
|
||||
betrag,
|
||||
bezahlmethode: bezahlmethode,
|
||||
status: Enums.Rechnungsstatus.open,
|
||||
abweichende_versand_adresse: input.abweichende_versand_adresse,
|
||||
email: input.email,
|
||||
empfaenger: input.empfaenger,
|
||||
ort: input.ort,
|
||||
plz: input.plz,
|
||||
strasse: input.strasse,
|
||||
telefon: input.telefon,
|
||||
versand_ort: input.versand_ort,
|
||||
versand_empfaenger: input.versand_empfaenger,
|
||||
versand_plz: input.versand_plz,
|
||||
versand_strasse: input.versand_strasse,
|
||||
versand_zusatzzeile: input.versand_zusatzzeile,
|
||||
zusatzzeile: input.zusatzzeile,
|
||||
verbrauchsausweis_gewerbe: {
|
||||
connect: {
|
||||
id: ausweis_id
|
||||
@@ -135,6 +161,19 @@ export const PUT = defineApiRoute({
|
||||
betrag,
|
||||
bezahlmethode: bezahlmethode,
|
||||
status: Enums.Rechnungsstatus.open,
|
||||
abweichende_versand_adresse: input.abweichende_versand_adresse,
|
||||
email: input.email,
|
||||
empfaenger: input.empfaenger,
|
||||
ort: input.ort,
|
||||
plz: input.plz,
|
||||
strasse: input.strasse,
|
||||
telefon: input.telefon,
|
||||
versand_ort: input.versand_ort,
|
||||
versand_empfaenger: input.versand_empfaenger,
|
||||
versand_plz: input.versand_plz,
|
||||
versand_strasse: input.versand_strasse,
|
||||
versand_zusatzzeile: input.versand_zusatzzeile,
|
||||
zusatzzeile: input.zusatzzeile,
|
||||
bedarfsausweis_wohnen: {
|
||||
connect: {
|
||||
id: ausweis_id
|
||||
|
||||
Reference in New Issue
Block a user