refactor(assets): move workflows into use cases

This commit is contained in:
2026-06-04 22:10:43 +02:00
parent e88fb2e6d4
commit 2b908b24f6
8 changed files with 648 additions and 222 deletions
+37
View File
@@ -0,0 +1,37 @@
import { z } from "zod"
export const assetSchema = z.object({
id: z.string().optional(),
itemId: z.string().min(1, {
error: "Item is required",
}),
serialNumber: z.string().min(1, {
error: "Serial number is required",
}),
deliveryNote: z.string().optional(),
notes: z.string().optional(),
recipientId: z.string().optional(),
})
export const createAssetSchema = assetSchema.extend({
status: z.enum(["AVAILABLE", "ASSIGNED"]),
})
export type CreateAssetFormType = z.infer<typeof createAssetSchema>
export const updateAssetSchema = assetSchema.extend({
id: z.string().min(1, {
error: "ID is required",
}),
status: z.enum([
"AVAILABLE",
"ASSIGNED",
"RESERVED",
"IN_REPAIR",
"BROKEN",
"STOLEN",
"DISPOSED",
]),
})
export type UpdateAssetFormType = z.infer<typeof updateAssetSchema>