Files
sgse-app/packages/backend/convex/schema.ts

47 lines
1.3 KiB
TypeScript

import { defineSchema, defineTable } from "convex/server";
import { Infer, v } from "convex/values";
import { tables } from "./betterAuth/schema";
export const simboloTipo = v.union(
v.literal("cargo_comissionado"),
v.literal("funcao_gratificada")
);
export type SimboloTipo = Infer<typeof simboloTipo>;
export default defineSchema({
...tables,
todos: defineTable({
text: v.string(),
completed: v.boolean(),
}),
funcionarios: defineTable({
nome: v.string(),
nascimento: v.optional(v.string()),
rg: v.optional(v.string()),
cpf: v.optional(v.string()),
endereco: v.optional(v.string()),
cep: v.optional(v.string()),
cidade: v.optional(v.string()),
uf: v.optional(v.string()),
telefone: v.optional(v.string()),
email: v.optional(v.string()),
matricula: v.string(),
vencimento: v.optional(v.string()),
admissao: v.optional(v.string()),
desligamento: v.optional(v.string()),
ferias: v.optional(v.string()),
simboloId: v.id("simbolos"),
})
.index("by_matricula", ["matricula"])
.index("by_nome", ["nome"]),
simbolos: defineTable({
nome: v.string(),
tipo: simboloTipo,
descricao: v.string(),
vencValor: v.string(),
repValor: v.string(),
valor: v.string(),
}),
});