feat: integrate jsPDF and jsPDF-autotable for document generation; enhance employee management with print functionality and improved data handling in employee forms
This commit is contained in:
@@ -16,6 +16,7 @@ export default defineSchema({
|
||||
completed: v.boolean(),
|
||||
}),
|
||||
funcionarios: defineTable({
|
||||
// Campos obrigatórios existentes
|
||||
nome: v.string(),
|
||||
nascimento: v.string(),
|
||||
rg: v.string(),
|
||||
@@ -31,6 +32,110 @@ export default defineSchema({
|
||||
desligamentoData: v.optional(v.string()),
|
||||
simboloId: v.id("simbolos"),
|
||||
simboloTipo: simboloTipo,
|
||||
|
||||
// Dados Pessoais Adicionais (opcionais)
|
||||
nomePai: v.optional(v.string()),
|
||||
nomeMae: v.optional(v.string()),
|
||||
naturalidade: v.optional(v.string()),
|
||||
naturalidadeUF: v.optional(v.string()),
|
||||
sexo: v.optional(v.union(
|
||||
v.literal("masculino"),
|
||||
v.literal("feminino"),
|
||||
v.literal("outro")
|
||||
)),
|
||||
estadoCivil: v.optional(v.union(
|
||||
v.literal("solteiro"),
|
||||
v.literal("casado"),
|
||||
v.literal("divorciado"),
|
||||
v.literal("viuvo"),
|
||||
v.literal("uniao_estavel")
|
||||
)),
|
||||
nacionalidade: v.optional(v.string()),
|
||||
|
||||
// Documentos Pessoais
|
||||
rgOrgaoExpedidor: v.optional(v.string()),
|
||||
rgDataEmissao: v.optional(v.string()),
|
||||
carteiraProfissionalNumero: v.optional(v.string()),
|
||||
carteiraProfissionalSerie: v.optional(v.string()),
|
||||
carteiraProfissionalDataEmissao: v.optional(v.string()),
|
||||
reservistaNumero: v.optional(v.string()),
|
||||
reservistaSerie: v.optional(v.string()),
|
||||
tituloEleitorNumero: v.optional(v.string()),
|
||||
tituloEleitorZona: v.optional(v.string()),
|
||||
tituloEleitorSecao: v.optional(v.string()),
|
||||
pisNumero: v.optional(v.string()),
|
||||
|
||||
// Formação e Saúde
|
||||
grauInstrucao: v.optional(v.union(
|
||||
v.literal("fundamental"),
|
||||
v.literal("medio"),
|
||||
v.literal("superior"),
|
||||
v.literal("pos_graduacao"),
|
||||
v.literal("mestrado"),
|
||||
v.literal("doutorado")
|
||||
)),
|
||||
formacao: v.optional(v.string()),
|
||||
formacaoRegistro: v.optional(v.string()),
|
||||
grupoSanguineo: v.optional(v.union(
|
||||
v.literal("A"),
|
||||
v.literal("B"),
|
||||
v.literal("AB"),
|
||||
v.literal("O")
|
||||
)),
|
||||
fatorRH: v.optional(v.union(
|
||||
v.literal("positivo"),
|
||||
v.literal("negativo")
|
||||
)),
|
||||
|
||||
// Cargo e Vínculo
|
||||
descricaoCargo: v.optional(v.string()),
|
||||
nomeacaoPortaria: v.optional(v.string()),
|
||||
nomeacaoData: v.optional(v.string()),
|
||||
nomeacaoDOE: v.optional(v.string()),
|
||||
pertenceOrgaoPublico: v.optional(v.boolean()),
|
||||
orgaoOrigem: v.optional(v.string()),
|
||||
aposentado: v.optional(v.union(
|
||||
v.literal("nao"),
|
||||
v.literal("funape_ipsep"),
|
||||
v.literal("inss")
|
||||
)),
|
||||
|
||||
// Dados Bancários
|
||||
contaBradescoNumero: v.optional(v.string()),
|
||||
contaBradescoDV: v.optional(v.string()),
|
||||
contaBradescoAgencia: v.optional(v.string()),
|
||||
|
||||
// Documentos Anexos (Storage IDs)
|
||||
certidaoAntecedentesPF: v.optional(v.id("_storage")),
|
||||
certidaoAntecedentesJFPE: v.optional(v.id("_storage")),
|
||||
certidaoAntecedentesSDS: v.optional(v.id("_storage")),
|
||||
certidaoAntecedentesTJPE: v.optional(v.id("_storage")),
|
||||
certidaoImprobidade: v.optional(v.id("_storage")),
|
||||
rgFrente: v.optional(v.id("_storage")),
|
||||
rgVerso: v.optional(v.id("_storage")),
|
||||
cpfFrente: v.optional(v.id("_storage")),
|
||||
cpfVerso: v.optional(v.id("_storage")),
|
||||
situacaoCadastralCPF: v.optional(v.id("_storage")),
|
||||
tituloEleitorFrente: v.optional(v.id("_storage")),
|
||||
tituloEleitorVerso: v.optional(v.id("_storage")),
|
||||
comprovanteVotacao: v.optional(v.id("_storage")),
|
||||
carteiraProfissionalFrente: v.optional(v.id("_storage")),
|
||||
carteiraProfissionalVerso: v.optional(v.id("_storage")),
|
||||
comprovantePIS: v.optional(v.id("_storage")),
|
||||
certidaoRegistroCivil: v.optional(v.id("_storage")),
|
||||
certidaoNascimentoDependentes: v.optional(v.id("_storage")),
|
||||
cpfDependentes: v.optional(v.id("_storage")),
|
||||
reservistaDoc: v.optional(v.id("_storage")),
|
||||
comprovanteEscolaridade: v.optional(v.id("_storage")),
|
||||
comprovanteResidencia: v.optional(v.id("_storage")),
|
||||
comprovanteContaBradesco: v.optional(v.id("_storage")),
|
||||
|
||||
// Declarações (Storage IDs)
|
||||
declaracaoAcumulacaoCargo: v.optional(v.id("_storage")),
|
||||
declaracaoDependentesIR: v.optional(v.id("_storage")),
|
||||
declaracaoIdoneidade: v.optional(v.id("_storage")),
|
||||
termoNepotismo: v.optional(v.id("_storage")),
|
||||
termoOpcaoRemuneracao: v.optional(v.id("_storage")),
|
||||
})
|
||||
.index("by_matricula", ["matricula"])
|
||||
.index("by_nome", ["nome"])
|
||||
|
||||
Reference in New Issue
Block a user