added api fallback for sockets

This commit is contained in:
2025-09-01 17:36:40 +05:30
parent 765f4acb57
commit 8e7c5a1aa0
43 changed files with 2034 additions and 1863 deletions

View File

@@ -13,14 +13,14 @@ import { handleCanvasCursors } from '../../../utils/mouseUtils/handleCanvasCurso
import { useSelectedPoints } from '../../../store/simulation/useSimulationStore';
import { calculateAssetTransformationOnWall } from '../wallAsset/Instances/Instance/functions/calculateAssetTransformationOnWall';
// import { upsertWallApi } from '../../../services/factoryBuilder/wall/upsertWallApi';
// import { deleteWallApi } from '../../../services/factoryBuilder/wall/deleteWallApi';
// import { upsertFloorApi } from '../../../services/factoryBuilder/floor/upsertFloorApi';
// import { deleteFloorApi } from '../../../services/factoryBuilder/floor/deleteFloorApi';
// import { deleteZoneApi } from '../../../services/factoryBuilder/zone/deleteZoneApi';
// import { upsertZoneApi } from '../../../services/factoryBuilder/zone/upsertZoneApi';
// import { upsertWallAssetApi } from '../../../services/factoryBuilder/asset/wallAsset/upsertWallAssetApi';
// import { deleteWallAssetApi } from '../../../services/factoryBuilder/asset/wallAsset/deleteWallAssetApi';
import { upsertWallApi } from '../../../services/factoryBuilder/wall/upsertWallApi';
import { deleteWallApi } from '../../../services/factoryBuilder/wall/deleteWallApi';
import { upsertFloorApi } from '../../../services/factoryBuilder/floor/upsertFloorApi';
import { deleteFloorApi } from '../../../services/factoryBuilder/floor/deleteFloorApi';
import { deleteZoneApi } from '../../../services/factoryBuilder/zone/deleteZoneApi';
import { upsertZoneApi } from '../../../services/factoryBuilder/zone/upsertZoneApi';
import { upsertWallAssetApi } from '../../../services/factoryBuilder/asset/wallAsset/upsertWallAssetApi';
import { deleteWallAssetApi } from '../../../services/factoryBuilder/asset/wallAsset/deleteWallAssetApi';
interface LineProps {
points: [Point, Point];
@@ -120,43 +120,48 @@ function Line({ points }: Readonly<LineProps>) {
if (projectId && asset) {
removeWallAsset(asset.modelUuid);
if (!socket?.active) {
// API
// API
// deleteWallAssetApi(projectId, selectedVersion?.versionId || '', asset.modelUuid, asset.wallUuid);
deleteWallAssetApi(projectId, selectedVersion?.versionId || '', asset.modelUuid, asset.wallUuid);
} else {
// SOCKET
// SOCKET
const data = {
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization,
modelUuid: asset.modelUuid,
wallUuid: asset.wallUuid
const data = {
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization,
modelUuid: asset.modelUuid,
wallUuid: asset.wallUuid
}
socket.emit('v1:wall-asset:delete', data);
}
socket.emit('v1:wall-asset:delete', data);
}
})
if (!socket?.active) {
// API
// API
// deleteWallApi(projectId, selectedVersion?.versionId || '', removedWall.wallUuid);
deleteWallApi(projectId, selectedVersion?.versionId || '', removedWall.wallUuid);
} else {
// SOCKET
// SOCKET
const data = {
wallUuid: removedWall.wallUuid,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
wallUuid: removedWall.wallUuid,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:model-Wall:delete', data);
}
socket.emit('v1:model-Wall:delete', data);
push2D({
type: 'Draw',
actions: [
@@ -180,22 +185,25 @@ function Line({ points }: Readonly<LineProps>) {
if (removedFloors.length > 0) {
removedFloors.forEach(floor => {
if (projectId) {
if (!socket?.active) {
// API
// API
// deleteFloorApi(projectId, selectedVersion?.versionId || '', floor.floorUuid);
deleteFloorApi(projectId, selectedVersion?.versionId || '', floor.floorUuid);
} else {
// SOCKET
// SOCKET
const data = {
floorUuid: floor.floorUuid,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
floorUuid: floor.floorUuid,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:model-Floor:delete', data);
}
socket.emit('v1:model-Floor:delete', data);
}
});
@@ -218,22 +226,25 @@ function Line({ points }: Readonly<LineProps>) {
if (updatedFloors.length > 0) {
updatedFloors.forEach(floor => {
if (projectId) {
if (!socket?.active) {
// API
// API
// upsertFloorApi(projectId, selectedVersion?.versionId || '', floor);
upsertFloorApi(projectId, selectedVersion?.versionId || '', floor);
} else {
// SOCKET
// SOCKET
const data = {
floorData: floor,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
floorData: floor,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:model-Floor:add', data);
}
socket.emit('v1:model-Floor:add', data);
}
});
@@ -263,22 +274,25 @@ function Line({ points }: Readonly<LineProps>) {
if (removedZones.length > 0) {
removedZones.forEach(zone => {
if (projectId) {
if (!socket?.active) {
// API
// API
// deleteZoneApi(projectId, selectedVersion?.versionId || '', zone.zoneUuid);
deleteZoneApi(projectId, selectedVersion?.versionId || '', zone.zoneUuid);
} else {
// SOCKET
// SOCKET
const data = {
zoneUuid: zone.zoneUuid,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
zoneUuid: zone.zoneUuid,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:zone:delete', data);
}
socket.emit('v1:zone:delete', data);
}
});
@@ -301,22 +315,25 @@ function Line({ points }: Readonly<LineProps>) {
if (updatedZones.length > 0) {
updatedZones.forEach(zone => {
if (projectId) {
if (!socket?.active) {
// API
// API
// upsertZoneApi(projectId, selectedVersion?.versionId || '', zone);
upsertZoneApi(projectId, selectedVersion?.versionId || '', zone);
} else {
// SOCKET
// SOCKET
const data = {
zoneData: zone,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
zoneData: zone,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:zone:add', data);
}
socket.emit('v1:zone:add', data);
}
});
@@ -435,40 +452,47 @@ function Line({ points }: Readonly<LineProps>) {
});
if (projectId && updatedWallAsset) {
// API
if (!socket?.active) {
// API
// upsertWallAssetApi(projectId, selectedVersion?.versionId || '', updatedWallAsset);
upsertWallAssetApi(projectId, selectedVersion?.versionId || '', updatedWallAsset);
} else {
// SOCKET
// SOCKET
const data = {
wallAssetData: updatedWallAsset,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
wallAssetData: updatedWallAsset,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:wall-asset:add', data);
}
socket.emit('v1:wall-asset:add', data);
}
});
}
// API
if (!socket?.active) {
// upsertWallApi(projectId, selectedVersion?.versionId || '', updatedWall);
// API
// SOCKET
upsertWallApi(projectId, selectedVersion?.versionId || '', updatedWall);
} else {
const data = {
wallData: updatedWall,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
// SOCKET
const data = {
wallData: updatedWall,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:model-Wall:add', data);
}
socket.emit('v1:model-Wall:add', data);
})
if (initialPositions.walls && initialPositions.walls.length > 0) {
@@ -495,22 +519,25 @@ function Line({ points }: Readonly<LineProps>) {
if (updatedFloors.length > 0 && projectId) {
updatedFloors.forEach(updatedFloor => {
if (!socket?.active) {
// API
// API
// upsertFloorApi(projectId, selectedVersion?.versionId || '', updatedFloor);
upsertFloorApi(projectId, selectedVersion?.versionId || '', updatedFloor);
} else {
// SOCKET
// SOCKET
const data = {
floorData: updatedFloor,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
floorData: updatedFloor,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:model-Floor:add', data);
}
socket.emit('v1:model-Floor:add', data);
})
if (initialPositions.floors && initialPositions.floors.length > 0) {
@@ -537,22 +564,25 @@ function Line({ points }: Readonly<LineProps>) {
if (updatedZones.length > 0 && projectId) {
updatedZones.forEach(updatedZone => {
if (!socket?.active) {
// API
// API
// upsertZoneApi(projectId, selectedVersion?.versionId || '', updatedZone);
upsertZoneApi(projectId, selectedVersion?.versionId || '', updatedZone);
} else {
// SOCKET
// SOCKET
const data = {
zoneData: updatedZone,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
const data = {
zoneData: updatedZone,
projectId: projectId,
versionId: selectedVersion?.versionId || '',
userId: userId,
organization: organization
}
socket.emit('v1:zone:add', data);
}
socket.emit('v1:zone:add', data);
})
if (initialPositions.zones && initialPositions.zones.length > 0) {