api asset delete bug fix and wall visibililty bug fix
This commit is contained in:
@@ -15,7 +15,7 @@ import { useSelectedAsset } from '../../../../../../store/simulation/useSimulati
|
||||
import { useBuilderStore } from '../../../../../../store/builder/useBuilderStore';
|
||||
|
||||
import { upsertProductOrEventApi } from '../../../../../../services/simulation/products/UpsertProductOrEventApi';
|
||||
import { deleteFloorItem } from '../../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorItemApi';
|
||||
import { deleteFloorAssetsApi } from '../../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorAssetsApi';
|
||||
|
||||
export function useModelEventHandlers({
|
||||
boundingBox,
|
||||
@@ -149,7 +149,12 @@ export function useModelEventHandlers({
|
||||
|
||||
// REST
|
||||
|
||||
deleteFloorItem(organization, asset.modelUuid, asset.modelName);
|
||||
deleteFloorAssetsApi({
|
||||
modelUuid: asset.modelUuid,
|
||||
modelName: asset.modelName,
|
||||
versionId: selectedVersion?.versionId || '',
|
||||
projectId: projectId || ''
|
||||
});
|
||||
|
||||
} else {
|
||||
// SOCKET
|
||||
|
||||
@@ -122,7 +122,7 @@ function Wall({ wall }: { readonly wall: Wall }) {
|
||||
castShadow
|
||||
receiveShadow
|
||||
ref={meshRef}
|
||||
geometry={visible ? geometry : new THREE.BoxGeometry(0, 0)}
|
||||
geometry={visible ? geometry : new THREE.BoxGeometry(0.00001, 0.00001)}
|
||||
position={[centerX, centerY, centerZ]}
|
||||
rotation={[0, -angle, 0]}
|
||||
userData={wall}
|
||||
|
||||
@@ -19,7 +19,7 @@ import RotateControls3D from "./rotateControls3D";
|
||||
import TransformControls3D from "./transformControls3D";
|
||||
import { useBuilderStore } from "../../../../../store/builder/useBuilderStore";
|
||||
|
||||
import { deleteFloorItem } from '../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorItemApi';
|
||||
import { deleteFloorAssetsApi } from '../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorAssetsApi';
|
||||
|
||||
const SelectionControls3D: React.FC = () => {
|
||||
const { camera, controls, gl, scene, raycaster, pointer } = useThree();
|
||||
@@ -284,12 +284,16 @@ const SelectionControls3D: React.FC = () => {
|
||||
const asset = getAssetById(selectedMesh.userData.modelUuid);
|
||||
if (!asset) return;
|
||||
|
||||
|
||||
if (!socket?.connected) {
|
||||
|
||||
// REST
|
||||
|
||||
deleteFloorItem(organization, selectedMesh.userData.modelUuid, selectedMesh.userData.modelName);
|
||||
deleteFloorAssetsApi({
|
||||
modelUuid: selectedMesh.userData.modelUuid,
|
||||
modelName: selectedMesh.userData.modelName,
|
||||
versionId: selectedVersion?.versionId || '',
|
||||
projectId: projectId || ''
|
||||
});
|
||||
} else {
|
||||
|
||||
// SOCKET
|
||||
|
||||
@@ -8,7 +8,7 @@ import { useSocketStore } from "../../../../../store/builder/store";
|
||||
import { upsertProductOrEventApi } from "../../../../../services/simulation/products/UpsertProductOrEventApi";
|
||||
|
||||
import { setAssetsApi } from "../../../../../services/factoryBuilder/asset/floorAsset/setAssetsApi";
|
||||
import { deleteFloorItem } from "../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorItemApi";
|
||||
import { deleteFloorAssetsApi } from "../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorAssetsApi";
|
||||
|
||||
function use3DRedoHandler() {
|
||||
const { undoRedo3DStore, assetStore, productStore, eventStore } = useSceneContext();
|
||||
@@ -177,7 +177,12 @@ function use3DRedoHandler() {
|
||||
if (!socket?.connected) {
|
||||
// REST
|
||||
|
||||
deleteFloorItem(organization, assetData.modelUuid, assetData.modelName);
|
||||
deleteFloorAssetsApi({
|
||||
modelUuid: assetData.modelUuid,
|
||||
modelName: assetData.modelName,
|
||||
versionId: selectedVersion?.versionId || '',
|
||||
projectId: projectId || ''
|
||||
});
|
||||
} else {
|
||||
|
||||
// SOCKET
|
||||
|
||||
@@ -8,7 +8,7 @@ import { useSocketStore } from "../../../../../store/builder/store";
|
||||
import { upsertProductOrEventApi } from "../../../../../services/simulation/products/UpsertProductOrEventApi";
|
||||
|
||||
import { setAssetsApi } from "../../../../../services/factoryBuilder/asset/floorAsset/setAssetsApi";
|
||||
import { deleteFloorItem } from "../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorItemApi";
|
||||
import { deleteFloorAssetsApi } from "../../../../../services/factoryBuilder/asset/floorAsset/deleteFloorAssetsApi";
|
||||
|
||||
function use3DUndoHandler() {
|
||||
const { undoRedo3DStore, assetStore, productStore, eventStore } = useSceneContext();
|
||||
@@ -176,7 +176,12 @@ function use3DUndoHandler() {
|
||||
if (!socket?.connected) {
|
||||
// REST
|
||||
|
||||
deleteFloorItem(organization, assetData.modelUuid, assetData.modelName);
|
||||
deleteFloorAssetsApi({
|
||||
modelUuid: assetData.modelUuid,
|
||||
modelName: assetData.modelName,
|
||||
versionId: selectedVersion?.versionId || '',
|
||||
projectId: projectId || ''
|
||||
});
|
||||
} else {
|
||||
|
||||
// SOCKET
|
||||
@@ -254,7 +259,12 @@ function use3DUndoHandler() {
|
||||
if (!socket?.connected) {
|
||||
// REST
|
||||
|
||||
deleteFloorItem(organization, assetData.modelUuid, assetData.modelName);
|
||||
deleteFloorAssetsApi({
|
||||
modelUuid: assetData.modelUuid,
|
||||
modelName: assetData.modelName,
|
||||
versionId: selectedVersion?.versionId || '',
|
||||
projectId: projectId || ''
|
||||
});
|
||||
} else {
|
||||
|
||||
// SOCKET
|
||||
@@ -291,7 +301,12 @@ function use3DUndoHandler() {
|
||||
if (!socket?.connected) {
|
||||
// REST
|
||||
|
||||
deleteFloorItem(organization, assetData.modelUuid, assetData.modelName);
|
||||
deleteFloorAssetsApi({
|
||||
modelUuid: assetData.modelUuid,
|
||||
modelName: assetData.modelName,
|
||||
versionId: selectedVersion?.versionId || '',
|
||||
projectId: projectId || ''
|
||||
});
|
||||
} else {
|
||||
|
||||
// SOCKET
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
|
||||
|
||||
export interface DeleteFloorAssetsParams {
|
||||
modelUuid: string;
|
||||
modelName: string;
|
||||
projectId: string;
|
||||
versionId: string;
|
||||
}
|
||||
|
||||
export const deleteFloorAssetsApi = async (params: DeleteFloorAssetsParams) => {
|
||||
try {
|
||||
const response = await fetch(`${url_Backend_dwinzo}/api/V1/assetDelete`, {
|
||||
method: "PATCH",
|
||||
headers: {
|
||||
Authorization: "Bearer <access_token>",
|
||||
"Content-Type": "application/json",
|
||||
token: localStorage.getItem("token") || "",
|
||||
refresh_token: localStorage.getItem("refreshToken") || "",
|
||||
},
|
||||
body: JSON.stringify(params),
|
||||
});
|
||||
|
||||
const newAccessToken = response.headers.get("x-access-token");
|
||||
if (newAccessToken) {
|
||||
localStorage.setItem("token", newAccessToken);
|
||||
}
|
||||
|
||||
if (!response.ok) {
|
||||
console.error("Failed to delete Floor Asset");
|
||||
}
|
||||
|
||||
const result = await response.json();
|
||||
return result;
|
||||
} catch (error) {
|
||||
console.error("Failed to delete floor asset");
|
||||
if (error instanceof Error) {
|
||||
console.log(error.message);
|
||||
} else {
|
||||
console.log("An unknown error occurred");
|
||||
}
|
||||
}
|
||||
};
|
||||
@@ -1,42 +0,0 @@
|
||||
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
|
||||
|
||||
export const deleteFloorItem = async (
|
||||
organization: string,
|
||||
modelUuid: string,
|
||||
modelName: string
|
||||
) => {
|
||||
try {
|
||||
const response = await fetch(
|
||||
`${url_Backend_dwinzo}/api/v1/deletefloorItem`,
|
||||
{
|
||||
method: "DELETE",
|
||||
headers: {
|
||||
Authorization: "Bearer <access_token>",
|
||||
"Content-Type": "application/json",
|
||||
token: localStorage.getItem("token") || "",
|
||||
refresh_token: localStorage.getItem("refreshToken") || "",
|
||||
},
|
||||
body: JSON.stringify({ organization, modelUuid, modelName }),
|
||||
}
|
||||
);
|
||||
const newAccessToken = response.headers.get("x-access-token");
|
||||
if (newAccessToken) {
|
||||
//console.log("New token received:", newAccessToken);
|
||||
localStorage.setItem("token", newAccessToken);
|
||||
}
|
||||
|
||||
if (!response.ok) {
|
||||
console.error("Failed to delete Floor Item");
|
||||
}
|
||||
|
||||
const result = await response.json();
|
||||
return result;
|
||||
} catch (error) {
|
||||
echo.error("Failed to delete floor item");
|
||||
if (error instanceof Error) {
|
||||
console.log(error.message);
|
||||
} else {
|
||||
console.log("An unknown error occurred");
|
||||
}
|
||||
}
|
||||
};
|
||||
@@ -18,7 +18,6 @@ export const getFloatingWidgetInput = async (floatWidgetID: string, organization
|
||||
);
|
||||
const newAccessToken = response.headers.get("x-access-token");
|
||||
if (newAccessToken) {
|
||||
//console.log("New token received:", newAccessToken);
|
||||
localStorage.setItem("token", newAccessToken);
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,6 @@ export const getWidgetInputData = async (chartId?: string, zoneUuid?: string, pr
|
||||
);
|
||||
const newAccessToken = response.headers.get("x-access-token");
|
||||
if (newAccessToken) {
|
||||
//console.log("New token received:", newAccessToken);
|
||||
localStorage.setItem("token", newAccessToken);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user