feat: sistema de deteccao de conflitos, conciliacao e ordem de intervencao fabril na importacao de pecas
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
export type NivelRiscoImportacao = 'nenhum' | 'baixo' | 'medio' | 'critico';
|
||||
|
||||
export interface DiffCampo {
|
||||
campo: string;
|
||||
label: string;
|
||||
valorAntigo: any;
|
||||
valorNovo: any;
|
||||
isCritico: boolean;
|
||||
}
|
||||
|
||||
export interface DiffComponente {
|
||||
marca_componente: string;
|
||||
descricao?: string;
|
||||
perfil?: string;
|
||||
tipo: 'adicionado' | 'removido' | 'modificado' | 'inalterado';
|
||||
detalhe?: string;
|
||||
quantidadeAntiga?: number;
|
||||
quantidadeNova?: number;
|
||||
comprimentoAntigo?: number | null;
|
||||
comprimentoNovo?: number | null;
|
||||
pesoUnitAntigo?: number | null;
|
||||
pesoUnitNovo?: number | null;
|
||||
}
|
||||
|
||||
export interface ProcessoApontado {
|
||||
processoId: string;
|
||||
processoNome: string;
|
||||
ordem: number;
|
||||
quantidadeProduzida: number;
|
||||
}
|
||||
|
||||
export interface ApontamentoResumoPeca {
|
||||
totalProduzido: number;
|
||||
processos: ProcessoApontado[];
|
||||
ultimoProcessoNome?: string;
|
||||
temApontamento: boolean;
|
||||
emRomaneio: boolean;
|
||||
}
|
||||
|
||||
export interface ItemAnaliseImportacao {
|
||||
key: string; // `${of_number}-${etapa_fase}-${marca}`
|
||||
of_number: string;
|
||||
etapa_fase: string;
|
||||
marca: string;
|
||||
descricao: string;
|
||||
|
||||
isNova: boolean;
|
||||
isIdentica: boolean;
|
||||
temDivergencias: boolean;
|
||||
|
||||
camposDivergentes: DiffCampo[];
|
||||
componentesDivergentes: DiffComponente[];
|
||||
|
||||
dadosImportados: Record<string, any>;
|
||||
dadosExistentes?: Record<string, any>;
|
||||
pecaIdExistente?: string;
|
||||
|
||||
apontamentoResumo: ApontamentoResumoPeca;
|
||||
nivelRisco: NivelRiscoImportacao;
|
||||
|
||||
// Ações de usuário selecionadas
|
||||
sobrepor: boolean; // true para atualizar no banco, false para ignorar
|
||||
atencaoEspecial: boolean; // true se deve gerar ordem de intervenção impressa
|
||||
motivoAlerta?: string;
|
||||
acaoRecomendadaFabril?: string;
|
||||
}
|
||||
|
||||
export interface ResultadoAnaliseImportacao {
|
||||
totalImportadas: number;
|
||||
totalNovas: number;
|
||||
totalIdenticas: number;
|
||||
totalComDivergencia: number;
|
||||
totalComApontamento: number;
|
||||
totalCriticas: number;
|
||||
itens: ItemAnaliseImportacao[];
|
||||
}
|
||||
Reference in New Issue
Block a user