Changed types

This commit is contained in:
2025-09-12 19:40:53 +02:00
parent af1bf82c75
commit 0fe16ad79e
12 changed files with 35 additions and 11 deletions

View File

@@ -1,8 +1,6 @@
import { FastifyInstance } from "fastify";
import bcrypt from "bcrypt";
import jwt from "jsonwebtoken";
import { generateRandomPassword, hashPassword } from "../utils/password"
import { sendMail } from "../utils/mailer"
export default async function authRoutesAuthenticated(server: FastifyInstance) {
server.post("/auth/password/change", {
@@ -33,6 +31,7 @@ export default async function authRoutesAuthenticated(server: FastifyInstance) {
const user_id = req.user?.user_id; // kommt aus JWT Middleware
if (!user_id) {
// @ts-ignore
return reply.code(401).send({ error: "Unauthorized" });
}
@@ -44,12 +43,14 @@ export default async function authRoutesAuthenticated(server: FastifyInstance) {
.single();
if (error || !user) {
// @ts-ignore
return reply.code(404).send({ error: "User not found" });
}
// Altes Passwort prüfen
const valid = await bcrypt.compare(old_password, user.password_hash);
if (!valid) {
// @ts-ignore
return reply.code(401).send({ error: "Old password incorrect" });
}
@@ -68,6 +69,7 @@ export default async function authRoutesAuthenticated(server: FastifyInstance) {
if (updateError) {
console.log(updateError);
// @ts-ignore
return reply.code(500).send({ error: "Password update failed" });
}

View File

@@ -31,6 +31,7 @@ export default async function authRoutes(server: FastifyInstance) {
const body = req.body as { email: string; password: string };
if (!body.email || !body.password) {
// @ts-ignore
return reply.code(400).send({ error: "Email and password required" });
}
@@ -45,6 +46,7 @@ export default async function authRoutes(server: FastifyInstance) {
.single();
if (error) {
// @ts-ignore
return reply.code(400).send({ error: error.message });
}
@@ -77,6 +79,7 @@ export default async function authRoutes(server: FastifyInstance) {
const body = req.body as { email: string; password: string };
if (!body.email || !body.password) {
// @ts-ignore
return reply.code(400).send({ error: "Email and password required" });
}
@@ -104,6 +107,7 @@ export default async function authRoutes(server: FastifyInstance) {
user = (data || []).find(i => i.tenants.find(x => x.id === req.tenant.id))
console.log(user)
if(error) {
// @ts-ignore
return reply.code(500).send({ error: "Internal Server Error" });
}
} else {
@@ -116,11 +120,13 @@ export default async function authRoutes(server: FastifyInstance) {
user = data
if(error) {
console.log(error);
// @ts-ignore
return reply.code(500).send({ error: "Internal Server Error" });
}
}
if(!user) {
// @ts-ignore
return reply.code(401).send({ error: "Invalid credentials" });
} else {
@@ -129,6 +135,7 @@ export default async function authRoutes(server: FastifyInstance) {
const valid = await bcrypt.compare(body.password, user.password_hash);
if (!valid) {
// @ts-ignore
return reply.code(401).send({ error: "Invalid credentials" });
} else {
const token = jwt.sign(

View File

@@ -6,7 +6,7 @@ export default async function userRoutes(server: FastifyInstance) {
server.get("/user/:id", async (req, reply) => {
const authUser = req.user // kommt aus JWT (user_id + tenant_id)
const {id} = req.params
const { id } = req.params as { id?: string }
if (!authUser) {
return reply.code(401).send({ error: "Unauthorized" })

View File

@@ -14,12 +14,14 @@ export default async function bankingRoutes(server: FastifyInstance) {
console.log(body);
const {data,error} = await server.supabase.from("statementallocations").insert({
//@ts-ignore
...body.data,
tenant: req.user.tenant_id,
}).select()
await insertHistoryItem(server,{
entity: "bankstatements",
//@ts-ignore
entityId: data.id,
action: "created",
created_by: req.user.user_id,

View File

@@ -98,7 +98,8 @@ export default async function fileRoutes(server: FastifyInstance) {
server.post("/files/download/:id?", async (req, reply) => {
const { id } = req.params as { id?: string }
const ids = req.body?.ids || []
const { ids } = req.body as { ids: string[] }
try {
if (id) {
@@ -180,8 +181,8 @@ export default async function fileRoutes(server: FastifyInstance) {
})
server.post("/files/presigned/:id?", async (req, reply) => {
const { id } = req.params as { key: string };
const { ids } = req.body as { keys: string[] }
const { id } = req.params as { id: string };
const { ids } = req.body as { ids: string[] }
if(id) {
try {

View File

@@ -3,7 +3,9 @@ import {insertHistoryItem } from "../utils/history"
import {diffObjects} from "../utils/diff";
import {sortData} from "../utils/sort";
const dataTypes: any[] = {
// @ts-ignore
tasks: {
isArchivable: true,
label: "Aufgaben",

View File

@@ -26,6 +26,7 @@ export default async function resourceRoutesSpecial(server: FastifyInstance) {
return reply.code(400).send({ error: error.message });
}
// @ts-ignore
const sorted =sortData(data,sort,asc === "true" ? true : false)
return sorted;

View File

@@ -81,10 +81,15 @@ export default async function routes(server: FastifyInstance) {
}
let correctedData = data.map(i => {
return {
id: i.user_id,
// @ts-ignore
email: i.auth_users.email,
// @ts-ignore
profile: i.auth_users.auth_profiles.find(x => x.tenant_id === authUser.tenant_id),
// @ts-ignore
full_name: i.auth_users.auth_profiles.find(x => x.tenant_id === authUser.tenant_id)?.full_name,
}
})