Initial for #123
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
import { FastifyInstance } from "fastify"
|
||||
import { asc, desc } from "drizzle-orm"
|
||||
import { asc, desc, eq } from "drizzle-orm"
|
||||
import { sortData } from "../utils/sort"
|
||||
|
||||
// Schema imports
|
||||
import { accounts, units,countrys } from "../../db/schema"
|
||||
import { accounts, units, countrys, tenants } from "../../db/schema"
|
||||
|
||||
const TABLE_MAP: Record<string, any> = {
|
||||
accounts,
|
||||
@@ -40,6 +40,44 @@ export default async function resourceRoutesSpecial(server: FastifyInstance) {
|
||||
// Wir geben IMMER alle Spalten zurück → kompatibel zum Frontend
|
||||
// ---------------------------------------
|
||||
|
||||
if (resource === "accounts") {
|
||||
const [tenant] = await server.db
|
||||
.select({
|
||||
accountChart: tenants.accountChart,
|
||||
})
|
||||
.from(tenants)
|
||||
.where(eq(tenants.id, Number(req.user.tenant_id)))
|
||||
.limit(1)
|
||||
|
||||
const activeAccountChart = tenant?.accountChart || "skr03"
|
||||
let data
|
||||
if (sort && (accounts as any)[sort]) {
|
||||
const col = (accounts as any)[sort]
|
||||
data = ascQuery === "true"
|
||||
? await server.db
|
||||
.select()
|
||||
.from(accounts)
|
||||
.where(eq(accounts.accountChart, activeAccountChart))
|
||||
.orderBy(asc(col))
|
||||
: await server.db
|
||||
.select()
|
||||
.from(accounts)
|
||||
.where(eq(accounts.accountChart, activeAccountChart))
|
||||
.orderBy(desc(col))
|
||||
} else {
|
||||
data = await server.db
|
||||
.select()
|
||||
.from(accounts)
|
||||
.where(eq(accounts.accountChart, activeAccountChart))
|
||||
}
|
||||
|
||||
return sortData(
|
||||
data,
|
||||
sort as any,
|
||||
ascQuery === "true"
|
||||
)
|
||||
}
|
||||
|
||||
let query = server.db.select().from(table)
|
||||
|
||||
// ---------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user