diff --git a/src/components/floor-plan/CanvasFrame.jsx b/src/components/floor-plan/CanvasFrame.jsx
index 63dc523a..9441dc7c 100644
--- a/src/components/floor-plan/CanvasFrame.jsx
+++ b/src/components/floor-plan/CanvasFrame.jsx
@@ -32,6 +32,7 @@ import { useEvent } from '@/hooks/useEvent'
import { compasDegAtom } from '@/store/orientationAtom'
import { hotkeyStore } from '@/store/hotkeyAtom'
import { usePopup } from '@/hooks/usePopup'
+import { outerLinePointsState } from '@/store/outerLineAtom'
export default function CanvasFrame() {
const canvasRef = useRef(null)
@@ -45,6 +46,7 @@ export default function CanvasFrame() {
const totalDisplay = useRecoilValue(totalDisplaySelector) // 집계표 표시 여부
const { setIsGlobalLoading } = useContext(QcastContext)
const resetModuleStatisticsState = useResetRecoilState(moduleStatisticsState)
+ const resetOuterLinePoints = useResetRecoilState(outerLinePointsState)
const resetMakersState = useResetRecoilState(makersState)
const resetSelectedMakerState = useResetRecoilState(selectedMakerState)
const resetSeriesState = useResetRecoilState(seriesState)
@@ -137,6 +139,7 @@ export default function CanvasFrame() {
const resetRecoilData = () => {
// resetModuleStatisticsState()
+ resetOuterLinePoints()
resetMakersState()
resetSelectedMakerState()
resetSeriesState()
diff --git a/src/components/simulator/Simulator.jsx b/src/components/simulator/Simulator.jsx
index 9831d1b3..d873049f 100644
--- a/src/components/simulator/Simulator.jsx
+++ b/src/components/simulator/Simulator.jsx
@@ -264,7 +264,6 @@ export default function Simulator() {
style={{ width: '30%' }}
className="select-light"
value={pwrGnrSimType}
- defaultValue={`D`}
onChange={(e) => {
handleChartChangeData(e.target.value)
setPwrGnrSimType(e.target.value)
@@ -334,33 +333,31 @@ export default function Simulator() {
- {moduleInfoList.length > 0 ? (
- moduleInfoList.map((moduleInfo) => {
- return (
- <>
-
- {/* 지붕면 */}
- | {moduleInfo.roofSurface} |
- {/* 경사각 */}
-
- {convertNumberToPriceDecimal(moduleInfo.slopeAngle)}
- {moduleInfo.classType == 0 ? '寸' : 'º'}
- |
- {/* 방위각(도) */}
- {convertNumberToPriceDecimal(moduleInfo.azimuth)} |
- {/* 태양전지모듈 */}
-
- {moduleInfo.itemNo}
- |
- {/* 매수 */}
- {convertNumberToPriceDecimal(moduleInfo.amount)} |
-
- >
- )
- })
- ) : (
-
- | {getMessage('common.message.no.data')} |
+ {moduleInfoList.length > 0 ? (
+ moduleInfoList.map((moduleInfo) => {
+ return (
+
+ {/* 지붕면 */}
+ | {moduleInfo.roofSurface} |
+ {/* 경사각 */}
+
+ {convertNumberToPriceDecimal(moduleInfo.slopeAngle)}
+ {moduleInfo.classType == 0 ? '寸' : 'º'}
+ |
+ {/* 방위각(도) */}
+ {convertNumberToPriceDecimal(moduleInfo.azimuth)} |
+ {/* 태양전지모듈 */}
+
+ {moduleInfo.itemNo}
+ |
+ {/* 매수 */}
+ {convertNumberToPriceDecimal(moduleInfo.amount)} |
+
+ )
+ })
+ ) : (
+
+ | {getMessage('common.message.no.data')} |
)}
@@ -385,25 +382,23 @@ export default function Simulator() {
- {pcsInfoList.length > 0 ? (
- pcsInfoList.map((pcsInfo) => {
- return (
- <>
-
- {/* 파워컨디셔너 */}
- |
- {pcsInfo.itemNo}
- |
- {/* 대 */}
- {convertNumberToPriceDecimal(pcsInfo.amount)} |
-
- >
- )
- })
- ) : (
-
- | {getMessage('common.message.no.data')} |
-
+ {pcsInfoList.length > 0 ? (
+ pcsInfoList.map((pcsInfo) => {
+ return (
+
+ {/* 파워컨디셔너 */}
+ |
+ {pcsInfo.itemNo}
+ |
+ {/* 대 */}
+ {convertNumberToPriceDecimal(pcsInfo.amount)} |
+
+ )
+ })
+ ) : (
+
+ | {getMessage('common.message.no.data')} |
+
)}
diff --git a/src/hooks/roofcover/useRoofAllocationSetting.js b/src/hooks/roofcover/useRoofAllocationSetting.js
index 3ea1894c..4bc26098 100644
--- a/src/hooks/roofcover/useRoofAllocationSetting.js
+++ b/src/hooks/roofcover/useRoofAllocationSetting.js
@@ -374,11 +374,18 @@ export function useRoofAllocationSetting(id) {
setBasicSetting((prev) => {
return { ...prev, selectedRoofMaterial: newRoofList.find((roof) => roof.selected) }
})
+ const selectedRoofMaterial = newRoofList.find((roof) => roof.selected)
+ const roofs = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.ROOF && obj.roofMaterial?.index === selectedRoofMaterial.index)
+
+ roofs.forEach((roof) => {
+ setSurfaceShapePattern(roof, roofDisplay.column, false, { ...selectedRoofMaterial }, true)
+ drawDirectionArrow(roof)
+ })
setRoofList(newRoofList)
setRoofMaterials(newRoofList)
setRoofsStore(newRoofList)
- const selectedRoofMaterial = newRoofList.find((roof) => roof.selected)
+
setSurfaceShapePattern(currentObject, roofDisplay.column, false, selectedRoofMaterial, true)
drawDirectionArrow(currentObject)
modifyModuleSelectionData()