import { defineTable } from 'convex/server'; import { v } from 'convex/values'; export const situacaoContrato = v.union( v.literal('em_execucao'), v.literal('rescendido'), v.literal('aguardando_assinatura'), v.literal('finalizado') ); export const contratosTables = { contratos: defineTable({ contratadaId: v.id('empresas'), objeto: v.string(), numeroNotaEmpenho: v.string(), responsavelId: v.id('funcionarios'), departamento: v.string(), situacao: situacaoContrato, numeroProcessoLicitatorio: v.string(), modalidade: v.string(), numeroContrato: v.string(), anoContrato: v.number(), dataInicioVigencia: v.string(), dataFimVigencia: v.string(), nomeFiscal: v.string(), valorTotal: v.string(), dataAditivoPrazo: v.optional(v.string()), diasAvisoVencimento: v.number(), criadoPor: v.id('usuarios'), criadoEm: v.number(), atualizadoEm: v.optional(v.number()) }) .index('by_responsavel', ['responsavelId']) .index('by_situacao', ['situacao']) .index('by_vigencia_inicio', ['dataInicioVigencia']) .index('by_vigencia_fim', ['dataFimVigencia']) };