feat: enhance user management with matricula retrieval and validation

- Updated user-related queries and mutations to retrieve the matricula from associated funcionario records, improving data accuracy.
- Refactored user creation and listing functionalities to ensure matricula is correctly handled and displayed.
- Enhanced error handling and validation for user operations, ensuring a more robust user management experience.
- Improved the overall structure of user-related code for better maintainability and clarity.
This commit is contained in:
2025-11-04 14:37:28 -03:00
parent d0692c3608
commit fbec5c46c2
10 changed files with 1250 additions and 587 deletions

View File

@@ -294,12 +294,19 @@ export const login = mutation({
timestamp: agora,
});
// Obter matrícula do funcionário se houver
let matricula: string | undefined = undefined;
if (usuario.funcionarioId) {
const funcionario = await ctx.db.get(usuario.funcionarioId);
matricula = funcionario?.matricula;
}
return {
sucesso: true as const,
token,
usuario: {
_id: usuario._id,
matricula: usuario.matricula,
matricula: matricula || "",
nome: usuario.nome,
email: usuario.email,
funcionarioId: usuario.funcionarioId,
@@ -568,12 +575,19 @@ export const loginComIP = internalMutation({
timestamp: agora,
});
// Obter matrícula do funcionário se houver
let matricula: string | undefined = undefined;
if (usuario.funcionarioId) {
const funcionario = await ctx.db.get(usuario.funcionarioId);
matricula = funcionario?.matricula;
}
return {
sucesso: true as const,
token,
usuario: {
_id: usuario._id,
matricula: usuario.matricula,
matricula: matricula || "",
nome: usuario.nome,
email: usuario.email,
funcionarioId: usuario.funcionarioId,
@@ -688,11 +702,18 @@ export const verificarSessao = query({
return { valido: false as const, motivo: "Role não encontrada" };
}
// Obter matrícula do funcionário se houver
let matricula: string | undefined = undefined;
if (usuario.funcionarioId) {
const funcionario = await ctx.db.get(usuario.funcionarioId);
matricula = funcionario?.matricula;
}
return {
valido: true as const,
usuario: {
_id: usuario._id,
matricula: usuario.matricula,
matricula: matricula || "",
nome: usuario.nome,
email: usuario.email,
funcionarioId: usuario.funcionarioId,