feat(smart-3d): replica card de engenharia e adiciona ferramenta girar 90 com trava
This commit is contained in:
@@ -20,6 +20,7 @@ export const SmartViewer3DFlow: React.FC<SmartViewer3DFlowProps> = ({
|
||||
const [modelData, setModelData] = useState<LoadedModel3DResult | null>(null);
|
||||
const [phasesList, setPhasesList] = useState<string[]>([]);
|
||||
const [productionMap, setProductionMap] = useState<Map<string, ProductionPieceStatus>>(new Map());
|
||||
const [initialRotation, setInitialRotation] = useState<{ x: number; y: number; z: number } | null>(null);
|
||||
|
||||
// Loading States
|
||||
const [isLoading, setIsLoading] = useState<boolean>(true);
|
||||
@@ -35,10 +36,10 @@ export const SmartViewer3DFlow: React.FC<SmartViewer3DFlowProps> = ({
|
||||
setLoadingPercent(15);
|
||||
|
||||
try {
|
||||
// 1.1. Buscar registro da OF para obter URL do IFC
|
||||
// 1.1. Buscar registro da OF para obter URL do IFC e rotação memorizada
|
||||
const { data: ofData, error: ofError } = await supabase
|
||||
.from('ordens_fabricacao' as any)
|
||||
.select('id, num_of, descritivo, ifc_url, ifc_filename')
|
||||
.select('id, num_of, descritivo, ifc_url, ifc_filename, model_3d_rotation')
|
||||
.eq('num_of', obra.of_number)
|
||||
.maybeSingle();
|
||||
|
||||
@@ -52,6 +53,9 @@ export const SmartViewer3DFlow: React.FC<SmartViewer3DFlowProps> = ({
|
||||
|
||||
const ifcUrl = (ofData as any).ifc_url;
|
||||
const ifcFilename = (ofData as any).ifc_filename;
|
||||
if ((ofData as any).model_3d_rotation) {
|
||||
setInitialRotation((ofData as any).model_3d_rotation);
|
||||
}
|
||||
|
||||
// 1.2. Buscar Peças e Apontamentos em paralelo
|
||||
setLoadingStep('Carregando dados das peças e apontamentos...');
|
||||
@@ -87,6 +91,8 @@ export const SmartViewer3DFlow: React.FC<SmartViewer3DFlowProps> = ({
|
||||
marca: marcaStr,
|
||||
fase,
|
||||
etapa_fase: fase,
|
||||
descricao: p.descricao || '',
|
||||
perfilPrincipal: p.perfil_principal || p.descricao || '',
|
||||
totalQtd: Number(p.quantidade || 1),
|
||||
pointedQtd: 0,
|
||||
currentProcessName: 'Pendente',
|
||||
@@ -277,6 +283,7 @@ export const SmartViewer3DFlow: React.FC<SmartViewer3DFlowProps> = ({
|
||||
selectedOF={obra.of_number}
|
||||
cliente={obra.cliente}
|
||||
phasesList={phasesList}
|
||||
initialRotation={initialRotation}
|
||||
onVoltar={onVoltarHub}
|
||||
/>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user