infoalloggi-monorepo/apps/infoalloggi/src/server/api/routers/fatture.ts

49 lines
1 KiB
TypeScript
Raw Normal View History

2025-08-04 17:45:44 +02:00
import { z } from "zod";
import {
adminProcedure,
createTRPCRouter,
protectedProcedure,
publicProcedure,
} from "~/server/api/trpc";
import {
addClient,
getClientFromCF,
getClientList,
searchClient,
} from "~/server/controllers/fic.controller";
import { ClientSchema } from "~/server/services/fic.service";
export const fattureRouter = createTRPCRouter({
getListClienti: adminProcedure.query(async () => {
return await getClientList();
}),
searchClient: adminProcedure
.input(
z.object({
cognome: z.string(),
}),
)
.query(async ({ input }) => {
return await searchClient(input.cognome);
}),
getClientFromCF: publicProcedure
.input(
z.object({
cf: z.string(),
}),
)
.query(async ({ input }) => {
return await getClientFromCF(input.cf);
}),
createClient: protectedProcedure
.input(
z.object({
client: ClientSchema,
}),
)
.mutation(async ({ input }) => {
return await addClient(input.client);
}),
});