feat: Introduce structured table definitions in convex/tables for various entities and remove the todos example table.
This commit is contained in:
48
packages/backend/convex/tables/pedidos.ts
Normal file
48
packages/backend/convex/tables/pedidos.ts
Normal file
@@ -0,0 +1,48 @@
|
||||
import { defineTable } from 'convex/server';
|
||||
import { v } from 'convex/values';
|
||||
|
||||
export const pedidosTables = {
|
||||
pedidos: defineTable({
|
||||
numeroSei: v.optional(v.string()),
|
||||
status: v.union(
|
||||
v.literal('em_rascunho'),
|
||||
v.literal('aguardando_aceite'),
|
||||
v.literal('em_analise'),
|
||||
v.literal('precisa_ajustes'),
|
||||
v.literal('cancelado'),
|
||||
v.literal('concluido')
|
||||
),
|
||||
acaoId: v.optional(v.id('acoes')),
|
||||
criadoPor: v.id('usuarios'),
|
||||
criadoEm: v.number(),
|
||||
atualizadoEm: v.number()
|
||||
})
|
||||
.index('by_numeroSei', ['numeroSei'])
|
||||
.index('by_status', ['status'])
|
||||
.index('by_criadoPor', ['criadoPor'])
|
||||
.index('by_acaoId', ['acaoId']),
|
||||
|
||||
pedidoItems: defineTable({
|
||||
pedidoId: v.id('pedidos'),
|
||||
produtoId: v.id('produtos'),
|
||||
valorEstimado: v.string(),
|
||||
valorReal: v.optional(v.string()),
|
||||
quantidade: v.number(),
|
||||
adicionadoPor: v.id('funcionarios'),
|
||||
criadoEm: v.number()
|
||||
})
|
||||
.index('by_pedidoId', ['pedidoId'])
|
||||
.index('by_produtoId', ['produtoId'])
|
||||
.index('by_adicionadoPor', ['adicionadoPor']),
|
||||
|
||||
historicoPedidos: defineTable({
|
||||
pedidoId: v.id('pedidos'),
|
||||
usuarioId: v.id('usuarios'),
|
||||
acao: v.string(), // "criacao", "alteracao_status", "adicao_item", "remocao_item", "edicao_item"
|
||||
detalhes: v.optional(v.string()), // JSON string
|
||||
data: v.number()
|
||||
})
|
||||
.index('by_pedidoId', ['pedidoId'])
|
||||
.index('by_usuarioId', ['usuarioId'])
|
||||
.index('by_data', ['data'])
|
||||
};
|
||||
Reference in New Issue
Block a user