update assetID

This commit is contained in:
2025-06-12 09:31:51 +05:30
parent 9b0842ed14
commit c7cc5cf2ca
59 changed files with 1039 additions and 1029 deletions

View File

@@ -1,11 +1,11 @@
import { useProductContext } from '../../../modules/simulation/products/productContext'
import RegularDropDown from '../../ui/inputs/RegularDropDown';
import { useProductStore } from '../../../store/simulation/useProductStore';
import { useSaveVersion } from '../../../store/builder/store';
import { useLoadingProgress, useSaveVersion } from '../../../store/builder/store';
import useModuleStore from '../../../store/useModuleStore';
import CompareLayOut from '../../ui/compareVersion/CompareLayOut';
import ComparisonResult from '../../ui/compareVersion/ComparisonResult';
import { useComparisonProduct } from '../../../store/simulation/useSimulationStore';
import { useComparisonProduct, useMainProduct } from '../../../store/simulation/useSimulationStore';
import { usePauseButtonStore, usePlayButtonStore } from '../../../store/usePlayButtonStore';
function ComparisonScene() {
@@ -16,13 +16,14 @@ function ComparisonScene() {
const { selectedProductStore } = useProductContext();
const { selectedProduct } = selectedProductStore();
const { comparisonProduct, setComparisonProduct } = useComparisonProduct();
const { mainProduct } = useMainProduct();
const { setIsPaused } = usePauseButtonStore();
const { loadingProgress } = useLoadingProgress();
const handleSelectLayout = (option: string) => {
const product = products.find((product) => product.productName === option);
if (product) {
setComparisonProduct(product.productUuid, product.productName);
setIsPlaying(true);
setIsPaused(true);
}
};
@@ -41,7 +42,7 @@ function ComparisonScene() {
</div>
}
<CompareLayOut />
{false && <ComparisonResult />}
{(comparisonProduct && mainProduct && !loadingProgress) && <ComparisonResult />}
</>
)}
</>

View File

@@ -1,7 +1,9 @@
import React from "react";
import {
useLoadingProgress,
useRenameModeStore,
useSaveVersion,
useSelectedFloorItem,
useSocketStore,
useWidgetSubOption,
} from "../../../store/builder/store";
@@ -30,6 +32,10 @@ import {
import { useProductContext } from "../../../modules/simulation/products/productContext";
import { useProductStore } from "../../../store/simulation/useProductStore";
import RegularDropDown from "../../ui/inputs/RegularDropDown";
import RenameTooltip from "../../ui/features/RenameTooltip";
import { setFloorItemApi } from "../../../services/factoryBuilder/assest/floorAsset/setFloorItemApi";
import { useAssetsStore } from "../../../store/builder/useAssetStore";
import { useParams } from "react-router-dom";
function MainScene() {
const { products } = useProductStore();
@@ -47,13 +53,33 @@ function MainScene() {
const { selectedZone } = useSelectedZoneStore();
const { setFloatingWidget } = useFloatingWidget();
const { comparisonProduct } = useComparisonProduct();
const { selectedFloorItem, setSelectedFloorItem } = useSelectedFloorItem();
const { setName } = useAssetsStore();
const { projectId } = useParams()
const { isRenameMode, setIsRenameMode } = useRenameModeStore();
const handleSelectLayout = (option: string) => {
const product = products.find((product) => product.productName === option);
if (product) {
setMainProduct(product.productUuid, product.productName);
}
};
const handleObjectRename = async (newName: string) => {
const email = localStorage.getItem("email") ?? "";
const organization = email?.split("@")[1]?.split(".")[0];
let response = await setFloorItemApi(
organization,
selectedFloorItem.userData.modelUuid,
newName,
projectId
);
selectedFloorItem.userData = {
...selectedFloorItem.userData,
modelName: newName
};
setSelectedFloorItem(selectedFloorItem);
setIsRenameMode(false);
setName(selectedFloorItem.userData.modelUuid, response.modelName);
}
return (
<>
@@ -79,6 +105,7 @@ function MainScene() {
{(isPlaying || comparisonProduct !== null) &&
activeModule !== "simulation" && <ControlsPlayer />}
{isRenameMode && selectedFloorItem?.userData.modelName && <RenameTooltip name={selectedFloorItem?.userData.modelName} onSubmit={handleObjectRename} />}
{/* remove this later */}
{activeModule === "builder" && !toggleThreeD && <SelectFloorPlan />}
</>

View File

@@ -137,6 +137,7 @@ const Simulations: React.FC = () => {
}
);
}
}, [selectedProduct.productUuid, products]);
return (

View File

@@ -22,8 +22,6 @@ import { useSelectedZoneStore } from "../../store/visualization/useZoneStore";
import {
useActiveTool,
useAddAction,
useDeleteTool,
useDeletePointOrLine,
useRefTextUpdate,
useSelectedWallItem,
useSocketStore,
@@ -32,7 +30,7 @@ import {
useActiveSubTool,
useShortcutStore,
} from "../../store/builder/store";
import {useToggleStore} from "../../store/useUIToggleStore";
import { useToggleStore } from "../../store/useUIToggleStore";
import {
use3DWidget,
useFloatingWidget,
@@ -72,8 +70,6 @@ const Tools: React.FC = () => {
setActiveTool,
setToolMode,
setAddAction,
setDeleteTool,
setDeletePointOrLine,
} = useStoreHooks();
const { setActiveSubTool, activeSubTool } = useActiveSubTool();
@@ -131,18 +127,14 @@ const Tools: React.FC = () => {
const resetTools = () => {
setToolMode(null);
setDeleteTool(false);
setAddAction(null);
setDeletePointOrLine(false);
setRefTextUpdate((prev) => prev - 1);
};
const updateToolBehavior = (tool: string, is2D: boolean) => {
switch (tool) {
case "cursor":
if (toggleView) {
setToolMode("move");
}
is2D ? setToolMode("move") : setToolMode("cursor");
break;
case "draw-wall":
is2D && setToolMode("Wall");
@@ -160,10 +152,10 @@ const Tools: React.FC = () => {
setToolMode("MeasurementScale");
break;
case "Add pillar":
if (!is2D) setAddAction("pillar");
if (!is2D) setAddAction("Pillar");
break;
case "delete":
is2D ? setDeletePointOrLine(true) : setDeleteTool(true);
is2D ? setToolMode('2D-Delete') : setToolMode('3D-Delete');
break;
}
};
@@ -175,7 +167,6 @@ const Tools: React.FC = () => {
setToggleUI(toggleTo2D, toggleTo2D);
if (toggleTo2D) {
setSelectedWallItem(null);
setDeleteTool(false);
setAddAction(null);
}
setActiveTool("cursor");
@@ -410,9 +401,7 @@ const useStoreHooks = () => {
return {
...useActiveTool(),
...useToolMode(),
...useDeleteTool(),
...useAddAction(),
...useDeletePointOrLine(),
...useRefTextUpdate(),
};
};

View File

@@ -118,7 +118,6 @@ const CompareLayOut = () => {
if (product) {
setComparisonProduct(product.productUuid, product.productName);
setLoadingProgress(1);
setIsPlaying(true);
setIsPaused(true);
}
};

View File

@@ -1,7 +1,7 @@
import React, { useMemo } from "react";
import PerformanceResult from "./result-card/PerformanceResult";
import EnergyUsage from "./result-card/EnergyUsage";
import { Bar, Line } from "react-chartjs-2";
import { Bar, Line, Pie } from "react-chartjs-2";
const ComparisonResult = () => {
const options = useMemo(
@@ -33,21 +33,22 @@ const ComparisonResult = () => {
backgroundColor: [purpleDark, purpleLight],
borderColor: [purpleDark, purpleLight],
borderWidth: 1,
borderRadius: 10, // ✅ Rounded all corners (TypeScript-safe)
// borderSkipped: "bottom", // ✅ This is allowed by the Chart.js types
},
],
};
const cycleTimeData = {
const cycleTimePieData = {
labels: ["Layout 1", "Layout 2"],
datasets: [
{
label: "Cycle Time (sec)",
data: [110, 110],
backgroundColor: [purpleLight],
borderColor: purpleDark,
data: [120, 110],
backgroundColor: [purpleDark, purpleLight],
borderColor: "#fff",
borderWidth: 2,
tension: 0.4,
fill: false,
},
],
};
@@ -61,6 +62,8 @@ const ComparisonResult = () => {
backgroundColor: [purpleDark, purpleLight],
borderColor: [purpleDark, purpleLight],
borderWidth: 1,
borderRadius: 10,
borderSkipped: false,
},
],
};
@@ -74,6 +77,8 @@ const ComparisonResult = () => {
backgroundColor: [purpleDark, purpleLight],
borderColor: [purpleDark, purpleLight],
borderWidth: 1,
borderRadius: 10,
borderSkipped: false,
},
],
};
@@ -83,7 +88,6 @@ const ComparisonResult = () => {
<div className="header">Performance Comparison</div>
<div className="compare-result-wrapper">
<EnergyUsage />
<div className="throughPutCard-container comparisionCard">
<h4>Throughput (units/hr)</h4>
<div className="layers-wrapper">
@@ -95,9 +99,9 @@ const ComparisonResult = () => {
<div className="key">Layout 2</div>
<div className="value">550/ hr</div>
</div>
</div>
<div className="chart">
<Bar data={throughputData} options={options} />
<div className="chart">
<Bar data={throughputData} options={options} />
</div>
</div>
</div>
@@ -122,7 +126,7 @@ const ComparisonResult = () => {
</div>
</div>
<div className="chart">
<Line data={cycleTimeData} options={options} />
<Pie data={cycleTimePieData} options={options} />
</div>
</div>

View File

@@ -122,7 +122,7 @@ const List: React.FC<ListProps> = ({ items = [], remove }) => {
zoneUuid: selectedZone.zoneUuid,
zoneName: newName,
};
const response = await zoneCameraUpdate(zonesdata, organization,projectId);
const response = await zoneCameraUpdate(zonesdata, organization, projectId);
if (response.message === "zone updated") {
setSelectedZone((prev) => ({ ...prev, zoneName: newName }));
setZones((prevZones: any[]) =>
@@ -143,9 +143,11 @@ const List: React.FC<ListProps> = ({ items = [], remove }) => {
let response = await setFloorItemApi(
organization,
zoneAssetId.id,
newName
newName,
projectId
);
// console.log("response: ", response);
console.log(' zoneAssetId.id,: ', zoneAssetId.id,);
setName(zoneAssetId.id, response.modelName);
}

View File

@@ -69,6 +69,9 @@ const SimulationPlayer: React.FC = () => {
};
const handlePlayStop = () => {
setIsPaused(!isPaused);
if (isPaused) {
setIsPlaying(true);
}
echo.warn(`Simulation is ${isPaused ? "Resumed" : "Paused"}`);
};
const handleExit = () => {