Ausweis als Admin bearbeiten
This commit is contained in:
@@ -12,12 +12,12 @@ export const createCaller = createCallerFactory({
|
|||||||
"admin/registriernummer": await import("../src/pages/api/admin/registriernummer.ts"),
|
"admin/registriernummer": await import("../src/pages/api/admin/registriernummer.ts"),
|
||||||
"admin/stornieren": await import("../src/pages/api/admin/stornieren.ts"),
|
"admin/stornieren": await import("../src/pages/api/admin/stornieren.ts"),
|
||||||
"ausweise": await import("../src/pages/api/ausweise/index.ts"),
|
"ausweise": await import("../src/pages/api/ausweise/index.ts"),
|
||||||
"aufnahme": await import("../src/pages/api/aufnahme/index.ts"),
|
|
||||||
"auth/access-token": await import("../src/pages/api/auth/access-token.ts"),
|
"auth/access-token": await import("../src/pages/api/auth/access-token.ts"),
|
||||||
"auth/passwort-vergessen": await import("../src/pages/api/auth/passwort-vergessen.ts"),
|
"auth/passwort-vergessen": await import("../src/pages/api/auth/passwort-vergessen.ts"),
|
||||||
"auth/refresh-token": await import("../src/pages/api/auth/refresh-token.ts"),
|
"auth/refresh-token": await import("../src/pages/api/auth/refresh-token.ts"),
|
||||||
"bedarfsausweis-gewerbe/[id]": await import("../src/pages/api/bedarfsausweis-gewerbe/[id].ts"),
|
"bedarfsausweis-gewerbe/[id]": await import("../src/pages/api/bedarfsausweis-gewerbe/[id].ts"),
|
||||||
"bedarfsausweis-gewerbe": await import("../src/pages/api/bedarfsausweis-gewerbe/index.ts"),
|
"bedarfsausweis-gewerbe": await import("../src/pages/api/bedarfsausweis-gewerbe/index.ts"),
|
||||||
|
"aufnahme": await import("../src/pages/api/aufnahme/index.ts"),
|
||||||
"bedarfsausweis-wohnen/[id]": await import("../src/pages/api/bedarfsausweis-wohnen/[id].ts"),
|
"bedarfsausweis-wohnen/[id]": await import("../src/pages/api/bedarfsausweis-wohnen/[id].ts"),
|
||||||
"bedarfsausweis-wohnen": await import("../src/pages/api/bedarfsausweis-wohnen/index.ts"),
|
"bedarfsausweis-wohnen": await import("../src/pages/api/bedarfsausweis-wohnen/index.ts"),
|
||||||
"bilder/[id]": await import("../src/pages/api/bilder/[id].ts"),
|
"bilder/[id]": await import("../src/pages/api/bilder/[id].ts"),
|
||||||
@@ -26,14 +26,14 @@ export const createCaller = createCallerFactory({
|
|||||||
"geg-nachweis-wohnen/[id]": await import("../src/pages/api/geg-nachweis-wohnen/[id].ts"),
|
"geg-nachweis-wohnen/[id]": await import("../src/pages/api/geg-nachweis-wohnen/[id].ts"),
|
||||||
"geg-nachweis-wohnen": await import("../src/pages/api/geg-nachweis-wohnen/index.ts"),
|
"geg-nachweis-wohnen": await import("../src/pages/api/geg-nachweis-wohnen/index.ts"),
|
||||||
"objekt": await import("../src/pages/api/objekt/index.ts"),
|
"objekt": await import("../src/pages/api/objekt/index.ts"),
|
||||||
|
"rechnung/[id]": await import("../src/pages/api/rechnung/[id].ts"),
|
||||||
|
"rechnung/anfordern": await import("../src/pages/api/rechnung/anfordern.ts"),
|
||||||
|
"rechnung": await import("../src/pages/api/rechnung/index.ts"),
|
||||||
|
"ticket": await import("../src/pages/api/ticket/index.ts"),
|
||||||
"user": await import("../src/pages/api/user/index.ts"),
|
"user": await import("../src/pages/api/user/index.ts"),
|
||||||
"user/self": await import("../src/pages/api/user/self.ts"),
|
"user/self": await import("../src/pages/api/user/self.ts"),
|
||||||
"verbrauchsausweis-gewerbe/[id]": await import("../src/pages/api/verbrauchsausweis-gewerbe/[id].ts"),
|
"verbrauchsausweis-gewerbe/[id]": await import("../src/pages/api/verbrauchsausweis-gewerbe/[id].ts"),
|
||||||
"verbrauchsausweis-gewerbe": await import("../src/pages/api/verbrauchsausweis-gewerbe/index.ts"),
|
"verbrauchsausweis-gewerbe": await import("../src/pages/api/verbrauchsausweis-gewerbe/index.ts"),
|
||||||
"ticket": await import("../src/pages/api/ticket/index.ts"),
|
|
||||||
"rechnung/[id]": await import("../src/pages/api/rechnung/[id].ts"),
|
|
||||||
"rechnung/anfordern": await import("../src/pages/api/rechnung/anfordern.ts"),
|
|
||||||
"rechnung": await import("../src/pages/api/rechnung/index.ts"),
|
|
||||||
"verbrauchsausweis-wohnen/[id]": await import("../src/pages/api/verbrauchsausweis-wohnen/[id].ts"),
|
"verbrauchsausweis-wohnen/[id]": await import("../src/pages/api/verbrauchsausweis-wohnen/[id].ts"),
|
||||||
"verbrauchsausweis-wohnen": await import("../src/pages/api/verbrauchsausweis-wohnen/index.ts"),
|
"verbrauchsausweis-wohnen": await import("../src/pages/api/verbrauchsausweis-wohnen/index.ts"),
|
||||||
"webhooks/mollie": await import("../src/pages/api/webhooks/mollie.ts"),
|
"webhooks/mollie": await import("../src/pages/api/webhooks/mollie.ts"),
|
||||||
|
|||||||
@@ -20,12 +20,11 @@ export const PATCH = defineApiRoute({
|
|||||||
|
|
||||||
const aufnahme = await prisma.aufnahme.findUnique({
|
const aufnahme = await prisma.aufnahme.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id,
|
id
|
||||||
benutzer_id: user.id
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!aufnahme) {
|
if (!aufnahme || (aufnahme.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Aufnahme mit dieser UID existiert nicht oder gehört nicht dem aktuellen Benutzer."
|
message: "Aufnahme mit dieser UID existiert nicht oder gehört nicht dem aktuellen Benutzer."
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { VALID_UUID_PREFIXES } from "#lib/constants.js";
|
|||||||
import { generatePrefixedId } from "#lib/db.js";
|
import { generatePrefixedId } from "#lib/db.js";
|
||||||
import { exclude } from "#lib/exclude.js";
|
import { exclude } from "#lib/exclude.js";
|
||||||
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
||||||
import { prisma } from "#lib/server/prisma.js";
|
import { Enums, prisma } from "#lib/server/prisma.js";
|
||||||
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
||||||
import { BedarfsausweisGewerbeSchema } from "src/generated/zod/bedarfsausweisgewerbe.js";
|
import { BedarfsausweisGewerbeSchema } from "src/generated/zod/bedarfsausweisgewerbe.js";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
@@ -31,13 +31,10 @@ export const PATCH = defineApiRoute({
|
|||||||
const objekt = await prisma.bedarfsausweisGewerbe.findUnique({
|
const objekt = await prisma.bedarfsausweisGewerbe.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id: ctx.params.id,
|
id: ctx.params.id,
|
||||||
benutzer: {
|
|
||||||
id: user.id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!objekt) {
|
if (!objekt || (objekt.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Nachweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
message: "Nachweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { VALID_UUID_PREFIXES } from "#lib/constants.js";
|
|||||||
import { generatePrefixedId } from "#lib/db.js";
|
import { generatePrefixedId } from "#lib/db.js";
|
||||||
import { exclude } from "#lib/exclude.js";
|
import { exclude } from "#lib/exclude.js";
|
||||||
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
||||||
import { prisma } from "#lib/server/prisma.js";
|
import { Enums, prisma } from "#lib/server/prisma.js";
|
||||||
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
||||||
import { BedarfsausweisWohnenSchema } from "src/generated/zod/bedarfsausweiswohnen.js";
|
import { BedarfsausweisWohnenSchema } from "src/generated/zod/bedarfsausweiswohnen.js";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
@@ -30,14 +30,11 @@ export const PATCH = defineApiRoute({
|
|||||||
async fetch(input, ctx, user) {
|
async fetch(input, ctx, user) {
|
||||||
const objekt = await prisma.bedarfsausweisWohnen.findUnique({
|
const objekt = await prisma.bedarfsausweisWohnen.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id: ctx.params.id,
|
id: ctx.params.id
|
||||||
benutzer: {
|
|
||||||
id: user.id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!objekt) {
|
if (!objekt || (objekt.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Ausweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
message: "Ausweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { VALID_UUID_PREFIXES } from "#lib/constants.js";
|
|||||||
import { generatePrefixedId } from "#lib/db.js";
|
import { generatePrefixedId } from "#lib/db.js";
|
||||||
import { exclude } from "#lib/exclude.js";
|
import { exclude } from "#lib/exclude.js";
|
||||||
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
||||||
import { prisma } from "#lib/server/prisma.js";
|
import { Enums, prisma } from "#lib/server/prisma.js";
|
||||||
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
||||||
import { GEGNachweisGewerbeSchema } from "src/generated/zod/gegnachweisgewerbe.js";
|
import { GEGNachweisGewerbeSchema } from "src/generated/zod/gegnachweisgewerbe.js";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
@@ -30,14 +30,11 @@ export const PATCH = defineApiRoute({
|
|||||||
async fetch(input, ctx, user) {
|
async fetch(input, ctx, user) {
|
||||||
const objekt = await prisma.gEGNachweisGewerbe.findUnique({
|
const objekt = await prisma.gEGNachweisGewerbe.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id: ctx.params.id,
|
id: ctx.params.id
|
||||||
benutzer: {
|
|
||||||
id: user.id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!objekt) {
|
if (!objekt || (objekt.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Nachweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
message: "Nachweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { VALID_UUID_PREFIXES } from "#lib/constants.js";
|
|||||||
import { generatePrefixedId } from "#lib/db.js";
|
import { generatePrefixedId } from "#lib/db.js";
|
||||||
import { exclude } from "#lib/exclude.js";
|
import { exclude } from "#lib/exclude.js";
|
||||||
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
import { authorizationHeaders, authorizationMiddleware } from "#lib/middleware/authorization.js";
|
||||||
import { prisma } from "#lib/server/prisma.js";
|
import { Enums, prisma } from "#lib/server/prisma.js";
|
||||||
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
import { APIError, defineApiRoute } from "astro-typesafe-api/server";
|
||||||
import { GEGNachweisWohnenSchema } from "src/generated/zod/gegnachweiswohnen.js";
|
import { GEGNachweisWohnenSchema } from "src/generated/zod/gegnachweiswohnen.js";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
@@ -30,14 +30,11 @@ export const PATCH = defineApiRoute({
|
|||||||
async fetch(input, ctx, user) {
|
async fetch(input, ctx, user) {
|
||||||
const objekt = await prisma.gEGNachweisWohnen.findUnique({
|
const objekt = await prisma.gEGNachweisWohnen.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id: ctx.params.id,
|
id: ctx.params.id
|
||||||
benutzer: {
|
|
||||||
id: user.id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!objekt) {
|
if (!objekt || (objekt.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Nachweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
message: "Nachweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
||||||
|
|||||||
@@ -20,14 +20,11 @@ export const PATCH = defineApiRoute({
|
|||||||
async fetch(input, ctx, user) {
|
async fetch(input, ctx, user) {
|
||||||
const objekt = await prisma.objekt.findUnique({
|
const objekt = await prisma.objekt.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id: ctx.params.id,
|
id: ctx.params.id
|
||||||
benutzer: {
|
|
||||||
id: user.id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!objekt) {
|
if (!objekt || (objekt.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Objekt konnte nicht gefunden werden."
|
message: "Objekt konnte nicht gefunden werden."
|
||||||
|
|||||||
@@ -27,14 +27,11 @@ export const PATCH = defineApiRoute({
|
|||||||
async fetch(input, ctx, user) {
|
async fetch(input, ctx, user) {
|
||||||
const objekt = await prisma.verbrauchsausweisGewerbe.findUnique({
|
const objekt = await prisma.verbrauchsausweisGewerbe.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id: ctx.params.id,
|
id: ctx.params.id
|
||||||
benutzer: {
|
|
||||||
id: user.id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!objekt) {
|
if (!objekt || (objekt.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Ausweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
message: "Ausweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
||||||
|
|||||||
@@ -28,14 +28,11 @@ export const PATCH = defineApiRoute({
|
|||||||
async fetch(input, ctx, user) {
|
async fetch(input, ctx, user) {
|
||||||
const objekt = await prisma.verbrauchsausweisWohnen.findUnique({
|
const objekt = await prisma.verbrauchsausweisWohnen.findUnique({
|
||||||
where: {
|
where: {
|
||||||
id: ctx.params.id,
|
id: ctx.params.id
|
||||||
benutzer: {
|
|
||||||
id: user.id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!objekt) {
|
if (!objekt || (objekt.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
|
||||||
throw new APIError({
|
throw new APIError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
message: "Ausweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
message: "Ausweis konnte nicht gefunden werden oder gehört einem anderen Benutzer."
|
||||||
|
|||||||
Reference in New Issue
Block a user