training_data/apps/server/src/models/train-situation/trainSituation.router.ts

45 lines
1.7 KiB
TypeScript
Raw Normal View History

2025-03-11 16:15:05 +08:00
import { Injectable } from "@nestjs/common";
import { TrpcService } from "@server/trpc/trpc.service";
import { TrainSituationService } from "./trainSituation.service";
import { z, ZodType } from "zod";
import { Prisma } from "@nice/common";
const TrainSituationArgsSchema:ZodType<Prisma.TrainSituationCreateArgs> = z.any()
2025-03-11 22:36:54 +08:00
const TrainSituationUpdateArgsSchema:ZodType<Prisma.TrainSituationUpdateArgs> = z.any()
const TrainSituationFindManyArgsSchema:ZodType<Prisma.TrainSituationFindManyArgs> = z.any()
2025-03-11 16:15:05 +08:00
@Injectable()
export class TrainSituationRouter {
constructor(
private readonly trpc: TrpcService,
private readonly trainSituationService: TrainSituationService,
) { }
router = this.trpc.router({
create:this.trpc.protectProcedure
.input(TrainSituationArgsSchema)
.mutation(async ({ input }) => {
2025-03-11 22:36:54 +08:00
return this.trainSituationService.create(input)
}),
update:this.trpc.protectProcedure
.input(TrainSituationUpdateArgsSchema)
.mutation(async ({ input }) => {
return this.trainSituationService.update(input)
}),
findMany:this.trpc.protectProcedure
.input(TrainSituationFindManyArgsSchema)
2025-03-12 19:50:47 +08:00
.query(async ({input}) =>{
2025-03-11 22:36:54 +08:00
return this.trainSituationService.findMany(input)
2025-03-11 16:15:05 +08:00
}),
2025-03-11 22:36:54 +08:00
findManyByDepId:this.trpc.protectProcedure
.input(z.object({
deptId: z.string().optional(),
domainId: z.string().optional(),
trainContentId: z.string().optional()
}))
2025-03-12 19:50:47 +08:00
.query(async ({input}) => {
2025-03-11 22:36:54 +08:00
return this.trainSituationService.findManyByDeptId(input)
})
2025-03-11 16:15:05 +08:00
})
}