Files
sgse-app/packages/backend/convex/tables/contratos.ts

38 lines
1.1 KiB
TypeScript

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'])
};