-
- handleChangeRoofMaterial(e, index)}
- />
-
- {index === 0 &&
{getMessage('modal.roof.alloc.default.roof.material')}}
- {index !== 0 &&
}
+
+
{getMessage('modal.roof.alloc.info')}
+
+
{getMessage('modal.roof.alloc.select.roof.material')}
+
+ {
+ // const selected = roofMaterials.find((roofMaterial) => roofMaterial.roofMatlCd === e.id)
+ setCurrentRoofMaterial(e)
+ }}
+ showKey={'roofMatlNm'}
+ sourceKey={'roofMatlCd'}
+ targetKey={'roofMatlCd'}
+ />
+
+
+
+
+
+ {currentRoofList.map((roof, index) => {
+ return (
+
+
+
+
-
-
-
-
{getMessage('slope')}
-
- {
- handleChangeInput(e, currentAngleType === 'slope' ? 'pitch' : 'angle', index)
- }}
- defaultValue={currentAngleType === 'slope' ? roof.pitch : roof.angle}
- />
-
-
{pitchText}
-
-
- {(roof.widAuth || roof.lenAuth) && (
-
- {roof.widAuth && (
+
+
-
W
-
-
+
+ handleChangeRoofMaterial(e, index)}
+ />
+ {index === 0 &&
{getMessage('modal.roof.alloc.default.roof.material')}}
+ {index !== 0 && (
+
+
+
+ )}
- )}
- {roof.lenAuth && (
+
+
- )}
- {(roof.raftAuth || roof.roofPchAuth) && (
-
- {roof.raftAuth && (
-
-
-
{getMessage('modal.placement.initial.setting.rafter')}
- {raftCodes.length > 0 && (
-
-
+
+ {(roof.widAuth || roof.lenAuth) && (
+ <>
+ {roof.widAuth && (
+
-
- )}
- {roof.roofPchAuth && (
-
-
-
{getMessage('hajebichi')}
-
-
-
-
+ )}
+ {roof.lenAuth && (
+
+ )}
+ >
)}
-
- )}
-
-
-
-
+ {(roof.raftAuth || roof.roofPchAuth) && (
+ <>
+ {roof.raftAuth && (
+
+
+
{getMessage('modal.placement.initial.setting.rafter')}
+ {raftCodes.length > 0 && (
+
+
+
+ )}
+
+
+ )}
+ {roof.roofPchAuth && (
+
+
+
{getMessage('hajebichi')}
+
+
+
+
+
+ )}
+ >
+ )}
+
+
+
+
+
+
-
-
- )
- })}
-
-
-
-
-
+ )
+ })}
+
+
+
+
+
+
+ >
+ )}
diff --git a/src/hooks/module/useModule.js b/src/hooks/module/useModule.js
index de64c404..80aa17d7 100644
--- a/src/hooks/module/useModule.js
+++ b/src/hooks/module/useModule.js
@@ -1,12 +1,14 @@
import { BATCH_TYPE, POLYGON_TYPE } from '@/common/common'
import { canvasState } from '@/store/canvasAtom'
import { isOverlap, polygonToTurfPolygon, rectToPolygon } from '@/util/canvas-util'
-import { useRecoilValue } from 'recoil'
+import { useRecoilValue, useSetRecoilState } from 'recoil'
import { v4 as uuidv4 } from 'uuid'
import * as turf from '@turf/turf'
import { useSwal } from '../useSwal'
import { useModuleBasicSetting } from './useModuleBasicSetting'
import { useMessage } from '../useMessage'
+import { selectedModuleState } from '@/store/selectedModuleOptions'
+import { moduleStatisticsState } from '@/store/circuitTrestleAtom'
export const MODULE_REMOVE_TYPE = {
LEFT: 'left',
@@ -35,6 +37,8 @@ export function useModule() {
const { swalFire } = useSwal()
const { getMessage } = useMessage()
const { checkModuleDisjointObjects } = useModuleBasicSetting()
+ const selectedModules = useRecoilValue(selectedModuleState)
+ const setModuleStatistics = useSetRecoilState(moduleStatisticsState)
const moduleMove = (length, direction) => {
const selectedObj = canvas.getActiveObjects() //선택된 객체들을 가져옴
@@ -929,6 +933,92 @@ export function useModule() {
.filter((obj) => [BATCH_TYPE.OPENING, BATCH_TYPE.TRIANGLE_DORMER, BATCH_TYPE.PENTAGON_DORMER, BATCH_TYPE.SHADOW].includes(obj.name))
}
+ const setModuleStatisticsData = () => {
+ const tempHeader = [
+ { name: getMessage('simulator.table.sub1'), prop: 'name' },
+ { name: getMessage('modal.circuit.trestle.setting.circuit.allocation.passivity.circuit'), prop: 'circuit' },
+ ...selectedModules.itemList.map((module) => {
+ return {
+ name: module.itemNm,
+ prop: module.itemId,
+ }
+ }),
+ { name: `${getMessage('modal.panel.batch.statistic.power.generation.amount')}(kW)`, prop: 'wpOut' },
+ ]
+ const surfaceObjects = {}
+ const surfaces = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE)
+ const rows = surfaces.map((surface) => {
+ surfaceObjects[surface.id] = {
+ roofSurface: canvas.getObjects().filter((obj) => obj.id === surface.parentId)[0].directionText,
+ circuit: '-',
+ amount: 0,
+ wpOut: 0,
+ circuits: {},
+ }
+
+ surface.modules.forEach((module) => {
+ if (!surfaceObjects[surface.id][module.moduleInfo.itemId]) {
+ // 지붕면에 모듈 존재 여부
+ surfaceObjects[surface.id][module.moduleInfo.itemId] = 0 // 모듈 초기화
+ }
+
+ surfaceObjects[surface.id][module.moduleInfo.itemId]++
+ surfaceObjects[surface.id].wpOut += +module.moduleInfo.wpOut
+ if (module.circuit) {
+ if (!surfaceObjects[surface.id].circuits[module.circuitNumber]) {
+ surfaceObjects[surface.id].circuits[module.circuitNumber] = {
+ circuit: module.circuitNumber,
+ wpOut: 0,
+ circuits: { wpOut: 0 },
+ }
+
+ if (!surfaceObjects[surface.id].circuits[module.circuitNumber].circuits[module.moduleInfo.itemId]) {
+ surfaceObjects[surface.id].circuits[module.circuitNumber].circuits[module.moduleInfo.itemId] = 0
+ }
+ }
+ surfaceObjects[surface.id].circuits[module.circuitNumber].circuits[module.moduleInfo.itemId]++
+ surfaceObjects[surface.id].circuits[module.circuitNumber].circuits.wpOut += +module.moduleInfo.wpOut
+ surfaceObjects[surface.id].wpOut -= +module.moduleInfo.wpOut
+ surfaceObjects[surface.id][module.moduleInfo.itemId]--
+ }
+ })
+ })
+ let tempRows = []
+ Object.keys(surfaceObjects).forEach((key) => {
+ let tempRow = {
+ name: surfaceObjects[key].roofSurface,
+ circuit: surfaceObjects[key].circuit,
+ wpOut: parseInt((surfaceObjects[key].wpOut / 1000).toFixed(3)),
+ }
+ selectedModules.itemList.forEach((module) => {
+ tempRow[module.itemId] = surfaceObjects[key][module.itemId]
+ })
+ tempRows.push(tempRow)
+
+ Object.keys(surfaceObjects[key].circuits).forEach((circuit) => {
+ let row = {
+ name: surfaceObjects[key].roofSurface,
+ circuit: surfaceObjects[key].circuits[circuit].circuit,
+ wpOut: parseInt((surfaceObjects[key].circuits[circuit].circuits.wpOut / 1000).toFixed(3)),
+ }
+ selectedModules.itemList.forEach((module) => {
+ row[module.itemId] = surfaceObjects[key].circuits[circuit].circuits[module.itemId]
+ })
+ tempRows.push(row)
+ })
+ })
+
+ const tempFooter = {
+ name: getMessage('modal.panel.batch.statistic.total'),
+ circuit: '-',
+ wpOut: tempRows.reduce((acc, row) => acc + row.wpOut, 0),
+ }
+ selectedModules.itemList.forEach((module) => {
+ tempFooter[module.itemId] = tempRows.reduce((acc, row) => acc + row[module.itemId], 0)
+ })
+ setModuleStatistics({ header: tempHeader, rows: tempRows.filter((row) => row.wpOut !== 0), footer: tempFooter })
+ }
+
return {
moduleMove,
moduleMultiMove,
@@ -942,5 +1032,6 @@ export function useModule() {
muduleRowInsert,
modulesRemove,
alignModule,
+ setModuleStatisticsData,
}
}
diff --git a/src/hooks/module/useModuleBasicSetting.js b/src/hooks/module/useModuleBasicSetting.js
index bf4d4a86..1462fef5 100644
--- a/src/hooks/module/useModuleBasicSetting.js
+++ b/src/hooks/module/useModuleBasicSetting.js
@@ -2468,7 +2468,7 @@ export function useModuleBasicSetting(tabNum) {
...surface,
name: canvas.getObjects().filter((obj) => obj.id === surface.parentId)[0].directionText, // 지붕면
// powerGeneration: wpOut.toLocaleString('ko-KR', { maximumFractionDigits: 4 }),
- wpOut: wpOut,
+ wpOut: (wpOut / 1000).toFixed(3),
}
})
@@ -2481,7 +2481,7 @@ export function useModuleBasicSetting(tabNum) {
}),
{ name: `${getMessage('modal.panel.batch.statistic.power.generation.amount')}(kW)`, prop: 'wpOut' },
]
- let footer = ['합계']
+ let footer = [getMessage('modal.panel.batch.statistic.total')]
let footerData = {}
rows.forEach((row) => {
Object.keys(moduleInfo).map((key) => {
@@ -2492,7 +2492,7 @@ export function useModuleBasicSetting(tabNum) {
Object.keys(footerData).forEach((key) => {
footer.push(footerData[key])
})
- footer.push(totalWpout)
+ footer.push((totalWpout / 1000).toFixed(3))
console.log({ header: header, rows, footer: footer })
setModuleStatistics({ header: header, rows, footer: footer })
}
diff --git a/src/hooks/module/useTrestle.js b/src/hooks/module/useTrestle.js
index 9c580971..fffe27c9 100644
--- a/src/hooks/module/useTrestle.js
+++ b/src/hooks/module/useTrestle.js
@@ -2,9 +2,10 @@ import { useRecoilValue } from 'recoil'
import { canvasState, currentAngleTypeSelector } from '@/store/canvasAtom'
import { POLYGON_TYPE } from '@/common/common'
import { moduleSelectionDataState } from '@/store/selectedModuleOptions'
-import { getDegreeByChon, getTrestleLength } from '@/util/canvas-util'
+import { getDegreeByChon } from '@/util/canvas-util'
import { v4 as uuidv4 } from 'uuid'
import { useMasterController } from '@/hooks/common/useMasterController'
+import { basicSettingState } from '@/store/settingAtom'
// 회로 및 가대설정
export const useTrestle = () => {
@@ -12,6 +13,7 @@ export const useTrestle = () => {
const moduleSelectionData = useRecoilValue(moduleSelectionDataState) //다음으로 넘어가는 최종 데이터
const { getQuotationItem } = useMasterController()
const currentAngleType = useRecoilValue(currentAngleTypeSelector)
+ const roofSizeSet = useRecoilValue(basicSettingState).roofSizeSet
const apply = () => {
try {
@@ -1787,6 +1789,16 @@ export const useTrestle = () => {
return groups
}
+ // 각도에 따른 길이 반환
+ function getTrestleLength(length, degree) {
+ if (roofSizeSet !== 1) {
+ // 복시도 입력이 아닌경우 그냥 길이 return
+ return length
+ }
+ const radians = (degree * Math.PI) / 180
+ return length * Math.cos(radians)
+ }
+
// 견적서 아이템 조회 api parameter 생성
const getTrestleParams = (surface) => {
const result = calculateForApi(surface)
diff --git a/src/locales/ja.json b/src/locales/ja.json
index 47257675..0514e960 100644
--- a/src/locales/ja.json
+++ b/src/locales/ja.json
@@ -5,11 +5,11 @@
"header.menus.management": "オブジェクトと図面の管理",
"header.menus.management.newStuff": "新規物件登録",
"header.menus.management.detail": "物件詳細",
- "header.menus.management.stuffList": "物件の現状",
+ "header.menus.management.stuffList": "見積状況",
"header.menus.community": "コミュニティ",
"header.menus.community.notice": "お知らせ",
"header.menus.community.faq": "FAQ",
- "header.menus.community.archive": "ドキュメントダウンロード",
+ "header.menus.community.archive": "文書ダウンロード",
"header.logout": "ログアウト",
"header.go": "移動",
"header.online.warranty.system": "オンライン保証システム",
@@ -17,23 +17,23 @@
"plan.menu.plan.drawing": "物件情報",
"plan.menu.placement.surface.initial.setting": "配置面初期設定",
"modal.placement.initial.setting.plan.drawing": "図面の作成方法",
- "modal.placement.initial.setting.plan.drawing.size.stuff": "寸法入力による品目作成",
+ "modal.placement.initial.setting.plan.drawing.size.stuff": "寸法入力による物件作成",
"modal.placement.initial.setting.size": "寸法入力方法",
"modal.placement.initial.setting.size.info": "寸法入力方法案内",
- "modal.placement.initial.setting.size.roof": "複視図入力",
+ "modal.placement.initial.setting.size.roof": "伏図入力",
"modal.placement.initial.setting.size.roof.info": "平面の外壁線と立面の屋根勾配に基づいて作画する場合選択",
"modal.placement.initial.setting.size.actual": "実測値入力",
- "modal.placement.initial.setting.size.actual.info": "現地屋根の外周寸法を入力して作画する場合選択",
- "modal.placement.initial.setting.size.none.pitch": "陸上屋根",
+ "modal.placement.initial.setting.size.actual.info": "屋根の外周寸法を入力して作画する場合選択",
+ "modal.placement.initial.setting.size.none.pitch": "陸屋根",
"modal.placement.initial.setting.size.none.pitch.info": "傾斜のない平面形状の屋根にパネルを配置する場合に選択",
- "modal.placement.initial.setting.roof.angle.setting": "屋根角度設定",
+ "modal.placement.initial.setting.roof.angle.setting": "角度設定",
"modal.placement.initial.setting.roof.pitch": "傾斜",
"modal.placement.initial.setting.roof.angle": "角度",
"modal.placement.initial.setting.roof.material": "屋根材選択(単位mm)",
"modal.placement.initial.setting.roof.material.info": "対応可能な屋根材や足場は限定されますので、必ず事前マニュアルをご確認ください。",
"modal.placement.initial.setting.rafter": "垂木",
"modal.roof.shape.setting": "屋根形状の設定",
- "modal.roof.shape.setting.ridge": "龍丸",
+ "modal.roof.shape.setting.ridge": "棟",
"modal.roof.shape.setting.patten.a": "Aパターン",
"modal.roof.shape.setting.patten.b": "Bパターン",
"modal.roof.shape.setting.side": "別に設定",
@@ -42,14 +42,14 @@
"plan.menu.roof.cover.roof.shape.setting": "屋根形状の設定",
"plan.menu.roof.cover.roof.shape.passivity.setting": "屋根形状の手動設定",
"plan.menu.roof.cover.eaves.kerava.edit": "軒・ケラバ変更",
- "plan.menu.roof.cover.movement.shape.updown": "銅線移動・型上げ下り",
- "modal.movement.flow.line.move": "銅線の移動",
+ "plan.menu.roof.cover.movement.shape.updown": "軒線移動・桁上げ下り",
+ "modal.movement.flow.line.move": "軒線の移動",
"modal.movement.flow.line.move.alert": "移動する数ない。",
- "modal.movement.flow.line.updown": "型上げ・下り",
+ "modal.movement.flow.line.updown": "桁上げ・下り",
"modal.movement.flow.line.updown.info": "桁の異なる辺を選択し、幅を指定します。",
"modal.movement.flow.line.updown.up": "桁を上げる",
"modal.movement.flow.line.updown.down": "桁数を下げる",
- "modal.movement.flow.line.info": "銅線を選択して移動幅を指定します",
+ "modal.movement.flow.line.info": "軒線を選択して移動幅を指定します",
"modal.movement.flow.line.bottom.left": "高さ変更:下、左",
"modal.movement.flow.line.top.right": "高さ変更:上、右",
"plan.menu.roof.cover.outline.edit.offset": "外壁の編集とオフセット",
@@ -59,17 +59,17 @@
"modal.cover.outline.drawing": "外壁線の作成",
"modal.cover.outline": "外壁線",
"modal.cover.outline.right.angle": "直角",
- "modal.cover.outline2": "イ・グベ",
+ "modal.cover.outline2": "異勾配",
"modal.cover.outline.angle": "角度",
"modal.cover.outline.diagonal": "対角線",
"modal.cover.outline.setting": "設定",
"modal.cover.outline.length": "長さ(mm)",
"modal.cover.outline.arrow": "方向(矢印)",
"modal.cover.outline.fix": "外壁線確定",
- "modal.cover.outline.rollback": "一変戦に戻る",
+ "modal.cover.outline.rollback": "前に戻る",
"modal.cover.outline.finish": "設定完了",
"common.setting.finish": "設定完了",
- "common.setting.rollback": "一変戦に戻る",
+ "common.setting.rollback": "前に戻る",
"modal.cover.outline.remove": "外壁の取り外し",
"modal.cover.outline.select.move": "外壁選択の移動",
"plan.menu.placement.surface": "配置面",
@@ -77,29 +77,29 @@
"plan.menu.placement.surface.drawing": "配置面の描画",
"modal.placement.surface.drawing.straight.line": "直線",
"modal.placement.surface.drawing.right.angle": "直角",
- "modal.placement.surface.drawing.double.pitch": "イ・グベ",
+ "modal.placement.surface.drawing.double.pitch": "異勾配",
"modal.placement.surface.drawing.angle": "角度",
"modal.placement.surface.drawing.diagonal": "対角線",
"modal.placement.surface.drawing.fix": "配置面確定",
"plan.menu.placement.surface.arrangement": "面形状の配置",
- "plan.menu.placement.surface.object": "オブジェクトの配置",
+ "plan.menu.placement.surface.object": "モジュール配置",
"plan.menu.placement.surface.all.remove": "配置面全体を削除",
"plan.menu.module.circuit.setting": "モジュール、回路構成",
"plan.menu.module.circuit.setting.default": "モジュール/架台設定",
"modal.module.basic.setting.orientation.setting": "方位設定",
"modal.module.basic.setting.orientation.setting.info": "※シミュレーション計算用方位を指定します。南の方位を設定してください。",
- "modal.module.basic.setting.orientation.setting.angle.passivity": "角度を直接入力",
+ "modal.module.basic.setting.orientation.setting.angle.passivity": "勾配を直接入力",
"modal.module.basic.setting.module.roof.material": "屋根材",
- "modal.module.basic.setting.module.trestle.maker": "カデメーガー",
+ "modal.module.basic.setting.module.trestle.maker": "架台メーカー",
"modal.module.basic.setting.module.rafter.margin": "垂木の間隔",
"modal.module.basic.setting.module.construction.method": "工法",
"modal.module.basic.setting.module.under.roof": "屋根の下",
"modal.module.basic.setting.module.setting": "モジュールの選択",
- "modal.module.basic.setting.module.hajebichi": "マンドンピッチ",
+ "modal.module.basic.setting.module.hajebichi": "ハゼピッチ",
"modal.module.basic.setting.module.setting.info1": "※勾配の範囲には制限があります。屋根傾斜が2.5値未満10値を超える場合は、施工が可能かどうか施工マニュアルを確認してください。",
"modal.module.basic.setting.module.setting.info2": "※モジュール配置時は、施工マニュアルに記載されている<モジュール配置条件>を必ずご確認ください。",
"modal.module.basic.setting.module.stuff.info": "物件情報",
- "modal.module.basic.setting.module.surface.type": "面照度",
+ "modal.module.basic.setting.module.surface.type": "面粗度区分",
"modal.module.basic.setting.module.fitting.height": "設置高さ",
"modal.module.basic.setting.module.standard.wind.speed": "基準風速",
"modal.module.basic.setting.module.standard.snowfall.amount": "積雪量",
@@ -107,33 +107,33 @@
"modal.module.basic.setting.module.enforce.construction": "強化施工",
"modal.module.basic.setting.module.multiple.construction": "多設施工",
"modal.module.basic.setting.module.eaves.bar.fitting": "軒カバーの設置",
- "modal.module.basic.setting.module.blind.metal.fitting": "積雪防止今すぐインストール",
+ "modal.module.basic.setting.module.blind.metal.fitting": "積雪防止金具設置",
"modal.module.basic.setting.module.select": "モジュール/架台選択",
"modal.module.basic.setting.module.placement": "モジュールの配置",
"modal.module.basic.setting.module.placement.select.fitting.type": "設置形態を選択してください。",
- "modal.module.basic.setting.module.placement.waterfowl.arrangement": "水鳥の配置",
+ "modal.module.basic.setting.module.placement.waterfowl.arrangement": "千鳥配置",
"modal.module.basic.setting.module.placement.do": "する",
"modal.module.basic.setting.module.placement.do.not": "しない",
"modal.module.basic.setting.module.placement.arrangement.standard": "配置基準",
"modal.module.basic.setting.module.placement.arrangement.standard.center": "中央",
"modal.module.basic.setting.module.placement.arrangement.standard.eaves": "軒",
- "modal.module.basic.setting.module.placement.arrangement.standard.ridge": "龍丸",
+ "modal.module.basic.setting.module.placement.arrangement.standard.ridge": "棟",
"modal.module.basic.setting.module.placement.maximum": "最大配置",
"modal.module.basic.setting.pitch.module.placement.standard.setting": "配置基準設定",
"modal.module.basic.setting.pitch.module.placement.standard.setting.south": "南向き設置",
- "modal.module.basic.setting.pitch.module.placement.standard.setting.select": "指定した辺りベースでインストール",
+ "modal.module.basic.setting.pitch.module.placement.standard.setting.select": "指定した辺を基準に設置",
"modal.module.basic.setting.pitch.module.allocation.setting": "割り当て設定",
- "modal.module.basic.setting.pitch.module.allocation.setting.info": "※配置パネル種類1種類場合のみ使用する数あります。",
+ "modal.module.basic.setting.pitch.module.allocation.setting.info": "※配置パネルの種類が1種類の場合のみ使用できます。",
"modal.module.basic.setting.pitch.module.row.amount": "単数",
"modal.module.basic.setting.pitch.module.row.margin": "上下間隔",
- "modal.module.basic.setting.pitch.module.column.amount": "熱水",
+ "modal.module.basic.setting.pitch.module.column.amount": "列数",
"modal.module.basic.setting.pitch.module.column.margin": "左右間隔",
- "modal.module.basic.setting.prev": "以前",
+ "modal.module.basic.setting.prev": "移転",
"modal.module.basic.setting.passivity.placement": "手動配置",
"modal.module.basic.setting.auto.placement": "設定値に自動配置",
"plan.menu.module.circuit.setting.circuit.trestle.setting": "回路設定",
"modal.circuit.trestle.setting": "回路設定",
- "modal.circuit.trestle.setting.alloc.trestle": "仮代割当",
+ "modal.circuit.trestle.setting.alloc.trestle": "架台配置",
"modal.circuit.trestle.setting.power.conditional.select": "パワーコンディショナーの選択",
"modal.circuit.trestle.setting.power.conditional.select.cold.region": "寒冷地仕様",
"modal.circuit.trestle.setting.power.conditional.select.name": "名称",
@@ -169,7 +169,7 @@
"modal.roof.alloc.default.roof.material": "基本屋根材",
"modal.roof.alloc.select.roof.material": "屋根材の選択",
"modal.roof.alloc.select.parallel": "並列式",
- "modal.roof.alloc.select.stairs": "カスケード",
+ "modal.roof.alloc.select.stairs": "階段式",
"modal.roof.alloc.apply": "選択した屋根材として割り当て",
"plan.menu.estimate.docDown": "文書のダウンロード",
"plan.menu.estimate.save": "保存",
@@ -191,7 +191,7 @@
"common.vertical": "縦",
"modal.font.setting.display": "見る",
"modal.font.setting.info": "これはOpen Typeフォントです。プリンタや画面でも同じフォントを使用してください。",
- "modal.canvas.setting": "Canvasの設定",
+ "modal.canvas.setting": "作図の設定",
"modal.canvas.setting.display": "ディスプレイ設定",
"modal.canvas.setting.font.plan": "フォントと図面サイズの設定",
"modal.canvas.setting.grid": "グリッド",
@@ -252,7 +252,7 @@
"modal.canvas.setting.first.option.image": "画像表示",
"modal.canvas.setting.first.option.total": "集計表を表示",
"modal.canvas.setting.first.option.dimension": "寸法表示",
- "modal.canvas.setting.first.option.corridor.dimension": "廊下寸法表示",
+ "modal.canvas.setting.first.option.corridor.dimension": "伏せ図寸法表示",
"modal.canvas.setting.first.option.real.dimension": "実寸表示",
"modal.canvas.setting.first.option.none.dimension": "寸法表示なし",
"modal.canvas.setting.first.option.display": "画面表示",
@@ -269,7 +269,7 @@
"modal.wallline.offset.setting": "外壁の編集とオフセット",
"modal.wallline.offset.setting.wallline.edit": "外壁の編集",
"modal.wallline.offset.setting.wallline.edit.info": "辺と始点を選択して長さと方向を指定してください。",
- "modal.wallline.offset.setting.wallline.edit.position": "支店",
+ "modal.wallline.offset.setting.wallline.edit.position": "始点",
"modal.wallline.offset.setting.offset": "オフセット",
"modal.wallline.offset.setting.offset.info": "オフセットしたい外壁線を選択してください。",
"modal.object.setting.type.open.space.placement": "開口部の配置",
@@ -282,7 +282,7 @@
"modal.object.setting.height": "縦長",
"modal.object.setting.area.cross": "エリア交差",
"modal.object.setting.size.setting": "サイズ設定",
- "modal.object.setting.agreement.depth": "同意の深さ",
+ "modal.object.setting.agreement.depth": "棟の長さ・深さ",
"modal.object.setting.offset.depth": "出幅(深さ)",
"modal.object.setting.offset.width": "出幅(幅)",
"modal.object.setting.direction.select": "方向の選択",
@@ -330,7 +330,7 @@
"contextmenu.wallline.remove": "外壁の削除",
"contextmenu.size.edit": "サイズ変更",
"modal.auxiliary.size.edit": "補助線サイズ変更",
- "modal.auxiliary.size.edit.point": "支店",
+ "modal.auxiliary.size.edit.point": "始点",
"contextmenu.auxiliary.move": "補助線の移動",
"modal.auxiliary.move": "補助線の移動",
"modal.auxiliary.move.info": "移動する方向を入力してください。",
@@ -361,12 +361,12 @@
"modal.panel.column.insert.type.left": "左挿入",
"modal.panel.column.insert.type.right": "右挿入",
"modal.image.load.size.rotate": "サイズ変更と回転",
- "contextmenu.row.move": "ただし移動",
- "contextmenu.row.copy": "単コピー",
- "contextmenu.row.remove": "ただし削除",
- "modal.row.remove": "ただし削除",
+ "contextmenu.row.move": "段移動",
+ "contextmenu.row.copy": "段コピー",
+ "contextmenu.row.remove": "段削除",
+ "modal.row.remove": "段削除",
"modal.row.remove.info": "削除ステージをどのようにしますか?",
- "modal.row.remove.type.up": "違足に減る",
+ "modal.row.remove.type.up": "上に減らす",
"modal.row.remove.type.down": "下向きに減らす",
"modal.row.remove.type.side": "両側に減る",
"modal.row.remove.type.none": "減らさない",
@@ -374,7 +374,7 @@
"modal.row.insert": "段挿入",
"modal.row.insert.info": "挿入する方向を選択してください。",
"modal.row.insert.type.up": "上部挿入",
- "modal.row.insert.type.down": "下の挿入",
+ "modal.row.insert.type.down": "下部挿入",
"modal.move.setting": "移動設定",
"modal.move.setting.info": "間隔を設定し、移動方向を選択します。",
"modal.copy.setting": "コピー設定",
@@ -389,7 +389,7 @@
"modal.display.edit.info": "寸法線に表示する数値を入力してください。",
"modal.display.edit.before.length": "既存の長さ",
"modal.display.edit.after.length": "変更の長さ",
- "modal.display.edit.corner.valley": "コーナー・ゴールケース",
+ "modal.display.edit.corner.valley": "隅·谷の場合",
"modal.display.edit.input.slope": "傾きを入力してください。",
"modal.display.edit.input.slope.info": "傾き設定されている場合、入力した数値に傾き計算をした数値が表示されます。",
"modal.distance": "距離測定",
@@ -466,7 +466,7 @@
"common.message.confirm.confirm": "承認しますか?",
"common.message.confirm.request": "承認をリクエストしますか?",
"common.message.confirm.delete": "削除しますか?",
- "common.message.confirm.close": "閉じるか?",
+ "common.message.confirm.close": "閉じますか?",
"common.message.confirm.unclose": "クローズをキャンセルしますか?",
"common.message.confirm.cancel": "キャンセルしますか?",
"common.message.confirm.uncancel": "キャンセルをキャンセルしますか?",
@@ -497,7 +497,7 @@
"common.message.approved ": "承認されました。",
"common.message.errorFieldExist": "エラーフィールドが存在します",
"common.message.storeIdExist ": "すでに使用している販売店IDです。",
- "common.message.userIdExist ": "すでに使用しているユーザーID。",
+ "common.message.userIdExist ": "すでに使用しているユーザーIDです。",
"common.message.noExists ": "削除された投稿です。",
"common.message.emailReqTo": "Email To is required",
"common.message.downloadPeriod": "Please select the download search period within {0} days.",
@@ -506,9 +506,9 @@
"common.message.writeToConfirm": "作成解除を実行しますか?",
"common.message.password.init.success": "パスワード[{0}]に初期化されました。",
"common.message.no.edit.save": "このドキュメントは変更できません。",
- "common.load": "読み込む",
+ "common.load": "読込",
"common.input.file": "ファイルを読み込む",
- "common.input.file.load": "読み込む",
+ "common.input.file.load": "読込",
"common.input.image.load": "画像を読み込む",
"common.input.address.load": "アドレスを読み込む",
"common.require": "必須",
@@ -534,7 +534,7 @@
"color.pink": "ピンク",
"color.gold": "黄金色",
"color.darkblue": "藍色",
- "site.name": "Q.CAST III",
+ "site.name": "HANASYS設計",
"site.sub_name": "太陽光発電システム図面管理サイト",
"site.header.link1": "選択してください。",
"site.header.link2": "オンライン保証システム",
@@ -542,7 +542,7 @@
"board.notice.sub.title": "お知らせ一覧",
"board.faq.title": "FAQ",
"board.faq.sub.title": "FAQリスト",
- "board.archive.title": "素材のダウンロード",
+ "board.archive.title": "資料のダウンロード",
"board.archive.sub.title": "文書一覧",
"board.list.header.rownum": "番号",
"board.list.header.title": "タイトル",
@@ -554,7 +554,7 @@
"board.sub.fileList": "添付ファイル一覧",
"board.sub.updDt": "更新",
"board.sub.btn.close": "閉じる",
- "myinfo.title": "私の情報",
+ "myinfo.title": "社員情報",
"myinfo.info.userId": "ユーザーID",
"myinfo.info.nameKana": "担当者名日本語",
"myinfo.info.name": "担当者名",
@@ -578,7 +578,7 @@
"myinfo.message.password.error": "パスワードが間違っています。",
"login": "ログイン",
"login.auto.page.text": "自動ログイン中です。",
- "login.id.save": "IDセーブ",
+ "login.id.save": "ID保存",
"login.id.placeholder": "IDを入力してください。",
"login.password.placeholder": "パスワードを入力してください。",
"login.guide.text": "当サイトをご利用の際は事前申請が必要です。",
@@ -592,11 +592,11 @@
"login.init_password.complete_message": "パスワードが初期化されました。初期化されたパスワードはIDと同じです。",
"login.init_password.id.placeholder": "IDを入力してください。",
"login.init_password.email.placeholder": "メールを入力してください。",
- "join.title": "Q.CAST3 ログインID発行申請",
+ "join.title": "HANASYS設計ログインID発行申請",
"join.sub1.title": "販売代理店情報",
- "join.sub1.comment": "※登録されるリセラーの会社名を入力してください。 (2次店は「○○販売株式会社(2次店:××設備株式会社)」でご記入ください。)",
+ "join.sub1.comment": "※登録される販売店の会社名を入力してください。 (2次店は「○○販売株式会社(2次店:××設備株式会社)」でご記入ください。)",
"join.sub1.storeQcastNm": "販売代理店名",
- "join.sub1.storeQcastNm_placeholder": "株式会社エネルギーギアソリューションアンサービス(2次点:山口周期販売有限公司)",
+ "join.sub1.storeQcastNm_placeholder": "株式会社エネルギーギアソリューションアンサービス(2次点:山口周期販売有限会社)",
"join.sub1.storeQcastNmKana": "販売代理店名フリガナ",
"join.sub1.storeQcastNmKana_placeholder": "株式会社エネルギーギアソリューション",
"join.sub1.postCd": "郵便番号",
@@ -611,7 +611,7 @@
"join.sub2.title": "担当者情報",
"join.sub2.userNm": "担当者名",
"join.sub2.userNmKana": "担当者名ふりがな",
- "join.sub2.userId": "アプリケーションID",
+ "join.sub2.userId": "申請ID",
"join.sub2.email": "メールアドレス",
"join.sub2.telNo": "電話番号",
"join.sub2.telNo_placeholder": "00-0000-0000",
@@ -620,18 +620,18 @@
"join.sub2.category": "部署名",
"join.btn.login_page": "ログイン画面に移動",
"join.btn.approval_request": "ID承認要求",
- "join.complete.title": "Q.CAST3ログインID発行申請完了",
+ "join.complete.title": "HANASYS設計ログインID発行申請完了",
"join.complete.contents": "※申請したIDが承認されると、担当者情報に入力したEメールアドレスにログイン関連案内メールが送信されます。",
"join.complete.email_comment": "担当者のメールアドレス",
"join.validation.check1": "{0}形式を確認してください。",
- "join.complete.save.confirm": "Hanwha Japanの担当者にID承認が要求された場合、これ以上情報を修正することはできません。本当にお願いしますか?",
+ "join.complete.save.confirm": "ハンファジャパンの担当者にID承認が要求された場合、これ以上情報を修正することはできません。申請しますか?",
"stuff.gridHeader.lastEditDatetime": "更新日時",
- "stuff.gridHeader.objectNo": "品番",
+ "stuff.gridHeader.objectNo": "物件番号",
"stuff.gridHeader.planTotCnt": "プラン数",
"stuff.gridHeader.objectName": "商品名",
"stuff.gridHeader.saleStoreId": "代理店ID",
"stuff.gridHeader.saleStoreName": "代理店名",
- "stuff.gridHeader.address": "商品アドレス",
+ "stuff.gridHeader.address": "物件住所",
"stuff.gridHeader.dispCompanyName": "見積もり",
"stuff.gridHeader.receiveUser": "担当者",
"stuff.gridHeader.specificationConfirmDate": "仕様確認日",
@@ -651,9 +651,9 @@
"stuff.temp.subTitle": "商品情報",
"stuff.temp.subTitle2": "作図",
"stuff.detail.header.notExistObjectNo": "存在しないものです。",
- "stuff.detail.header.successCopy": "商品番号がコピーされました。",
- "stuff.detail.header.failCopy": "商品番号のコピーに失敗しました。",
- "stuff.detail.header.objectNo": "品番",
+ "stuff.detail.header.successCopy": "物件番号がコピーされました。",
+ "stuff.detail.header.failCopy": "物件番号のコピーに失敗しました。",
+ "stuff.detail.header.objectNo": "物件番号",
"stuff.detail.header.specificationConfirmDate": "仕様確認日",
"stuff.detail.header.lastEditDatetime": "更新日時",
"stuff.detail.header.createDatetime": "登録日",
@@ -662,9 +662,9 @@
"stuff.detail.receiveUser": "担当者",
"stuff.detail.objectStatusId": "物品区分/物件名",
"stuff.detail.objectStatus0": "新築",
- "stuff.detail.objectStatus1": "基軸",
+ "stuff.detail.objectStatus1": "既築",
"stuff.detail.objectNameOmit": "敬称",
- "stuff.detail.objectNameKana": "物名フリガナ",
+ "stuff.detail.objectNameKana": "フリガナ",
"stuff.detail.saleStoreId": "一次販売店名/ID",
"stuff.detail.otherSaleStoreId": "二次販売店名/ID",
"stuff.detail.zipNo": "郵便番号",
@@ -676,9 +676,9 @@
"stuff.detail.standardWindSpeedId": "基準風速",
"stuff.detail.standardWindSpeedIdSpan": "m/s以下",
"stuff.detail.btn.windSpeedPop": "風速選択",
- "stuff.detail.verticalSnowCover": "垂直説説",
+ "stuff.detail.verticalSnowCover": "垂直積雪量",
"stuff.detail.coldRegionFlg": "寒冷地対策施行",
- "stuff.detail.surfaceType": "綿調道",
+ "stuff.detail.surfaceType": "面粗度",
"stuff.detail.saltAreaFlg": "塩害地域用アイテムの使用",
"stuff.detail.installHeight": "設置高さ",
"stuff.detail.conType": "契約条件",
@@ -687,7 +687,7 @@
"stuff.detail.remarks": "メモ",
"stuff.detail.tooltip.saleStoreId": "販売代理店または販売代理店IDを1文字以上入力してください",
"stuff.detail.tooltip.surfaceType": "塩害地域の定義は各メーカーの設置マニュアルをご確認ください",
- "stuff.detail.tempSave.message1": "一時保存されました。商品番号を取得するには、必須項目をすべて入力してください。",
+ "stuff.detail.tempSave.message1": "一時保存されました。物件番号を取得するには、必須項目をすべて入力してください。",
"stuff.detail.tempSave.message2": "担当者名は10桁以下で入力してください。",
"stuff.detail.tempSave.message3": "二次販売店を選択してください。",
"stuff.detail.confirm.message1": "販売店情報を変更すると、設計依頼文書番号が削除されます。変更しますか?",
@@ -695,7 +695,7 @@
"stuff.detail.planList.title": "プランリスト",
"stuff.detail.planList.cnt": "全体",
"stuff.detail.planList.help": "ヘルプ",
- "stuff.detail.planList.guide1": "1.発注は同一品番基準1件のみ可能です。",
+ "stuff.detail.planList.guide1": "1.発注は同一物件番号基準1件のみ可能です。",
"stuff.detail.planList.guide2": "2. [Excelダウンロード]は見積書図面シミュレーション結果をExcelファイルとして一度にダウンロードします。",
"stuff.detail.planList.guide3": "3. プラン情報をダブルクリックすると図面作成画面に移動します。",
"stuff.detail.btn.delete": "物の削除",
@@ -705,7 +705,7 @@
"stuff.detail.save": "保存しました",
"stuff.detail.tempSave": "一時保存されました",
"stuff.detail.noChgData": "変更内容はありません",
- "stuff.detail.save.valierror1": "垂直説説は0より大きい値を入力してください",
+ "stuff.detail.save.valierror1": "垂直積雪量は0より大きい値を入力してください",
"stuff.detail.save.valierror2": "設置高さ0より大きい値を入力してください",
"stuff.detail.save.valierror3": "{0} 必須入力項目です。",
"stuff.detail.save.valierror4": "二次販売店名は必須オプションです。",
@@ -739,7 +739,7 @@
"stuff.search.btn.register": "新規物件登録",
"stuff.search.btn.search": "照会",
"stuff.search.btn.reset": "初期化",
- "stuff.search.schObjectNo": "品番",
+ "stuff.search.schObjectNo": "物件番号",
"stuff.search.schSaleStoreName": "販売代理店名",
"stuff.search.schAddress": "商品アドレス",
"stuff.search.schObjectName": "商品名",
@@ -784,7 +784,7 @@
"output": "出力",
"slope": "傾斜",
"eaves.offset": "軒の幅",
- "gable.offset": "ケラバ出爆",
+ "gable.offset": "ケラバ",
"offset": "出幅",
"width": "幅",
"size": "寸法",
@@ -794,9 +794,9 @@
"gable": "ケラバ",
"gable.left": "ケラバ左",
"gable.right": "ケラバ右",
- "ridge": "龍丸",
- "oneside.flow.ridge": "片側の流れ",
- "yosemune": "ヨセムネ",
+ "ridge": "棟",
+ "oneside.flow.ridge": "片流れの棟側",
+ "yosemune": "寄棟",
"valley": "谷",
"l.abandon.valley": "Lの捨て渓谷",
"mansard": "メンサード",
@@ -807,30 +807,30 @@
"wall.merge.flow.left": "壁取り(流れ左)",
"wall.merge.flow.right": "壁取り(流れ右)",
"no.setting": "設定なし",
- "hajebichi": "ハゼビーチ",
+ "hajebichi": "ハゼピッチ",
"straight.line": "直線",
"right.angle": "直角",
- "double.pitch": "イ・グベ",
+ "double.pitch": "異勾配",
"angle": "角度",
"diagonal": "対角線",
- "hipandgable": "八作屋根",
- "hipandgable.width": "八作屋根の幅",
- "jerkinhead": "半折",
+ "hipandgable": "入母屋造",
+ "hipandgable.width": "入母屋造の幅",
+ "jerkinhead": "半切妻",
"shed": "片側の流れ",
"apply": "適用",
"module": "モジュール",
"legend": "凡例",
"has.sleeve": "袖あり",
"has.not.sleeve": "袖なし",
- "jerkinhead.width": "半折先幅",
- "jerkinhead.slope": "半折先傾斜",
+ "jerkinhead.width": "半切妻幅",
+ "jerkinhead.slope": "半切妻傾斜",
"shed.width": "片流幅",
- "windage": "漂流",
- "windage.width": "漂流の出幅",
+ "windage": "片流れ",
+ "windage.width": "片流れの出幅",
"write": "作成",
"main.storeId": "販売店ID",
"main.storeName": "販売店名",
- "main.objectNo": "品番",
+ "main.objectNo": "物件番号",
"main.faq": "FAQ",
"main.content.objectList.noData1": "登録された商品情報はありません。",
"main.content.objectList.noData2": "下のボタンをクリックして商品情報を登録してください。",
@@ -839,7 +839,7 @@
"main.content.download1": "操作マニュアル",
"main.content.download2": "屋根の説明書",
"main.content.noBusiness": "Hanwha Japanにお問い合わせください",
- "main.content.alert.noFile": "資料が準備中です",
+ "main.content.alert.noFile": "資料準備中です",
"main.popup.login.popupTitle": "パスワード変更",
"main.popup.login.newPassword1": "新しいパスワードを入力",
"main.popup.login.newPassword2": "新しいパスワードの再入力",
@@ -860,7 +860,7 @@
"surface.shape.validate.size.3to4": "③長さは④より大きい値を入れてください。",
"surface.shape.validate.size.4to5": "④長さは⑤より大きい値を入れてください。",
"estimate.detail.header.title": "基本情報",
- "estimate.detail.objectNo": "品番",
+ "estimate.detail.objectNo": "物件番号",
"estimate.detail.docNo": "見積書番号",
"estimate.detail.drawingEstimateCreateDate": "登録日",
"estimate.detail.lastEditDatetime": "変更日時",
@@ -877,7 +877,6 @@
"estimate.detail.roofCns": "屋根材・仕様施工",
"estimate.detail.remarks": "備考",
"estimate.detail.fileFlg": "後日資料提出",
- "estimate.detail.dragFileGuide": "(※北面設置の場合、ファイル添付が必須です.)",
"estimate.detail.header.fileList1": "ファイル添付",
"estimate.detail.fileList.btn": "ファイル選択",
"estimate.detail.fileList.extCheck": "画像ファイルのみ添付可能です。",
@@ -905,17 +904,17 @@
"estimate.detail.showPrice.delItem": "製品の削除",
"estimate.detail.itemTableHeader.dispOrder": "No.",
"estimate.detail.itemTableHeader.itemId": "品番",
- "estimate.detail.itemTableHeader.itemNo": "兄弟",
+ "estimate.detail.itemTableHeader.itemNo": "型名",
"estimate.detail.itemTableHeader.amount": "数量",
"estimate.detail.itemTableHeader.unit": "単位",
"estimate.detail.itemTableHeader.salePrice": "単価",
- "estimate.detail.itemTableHeader.saleTotPrice": "金額(税別別)",
- "estimate.detail.docPopup.title": "ドキュメントダウンロードオプションの設定",
+ "estimate.detail.itemTableHeader.saleTotPrice": "金額(税別)",
+ "estimate.detail.docPopup.title": "文章ダウンロードオプションの設定",
"estimate.detail.docPopup.explane": "ダウンロードする文書オプションを選択し、[文書のダウンロード]ボタンをクリックします。",
"estimate.detail.docPopup.schUnitPriceFlg": "ダウンロードファイル",
- "estimate.detail.docPopup.schUnitPriceFlg.excelFlg0": "見積もりExcel",
+ "estimate.detail.docPopup.schUnitPriceFlg.excelFlg0": "仕切用Excel",
"estimate.detail.docPopup.schUnitPriceFlg.excelFlg1": "定価用Excel",
- "estimate.detail.docPopup.schUnitPriceFlg.pdfFlg0": "見積もりPDF",
+ "estimate.detail.docPopup.schUnitPriceFlg.pdfFlg0": "仕切用PDF",
"estimate.detail.docPopup.schUnitPriceFlg.pdfFlg1": "定価用PDF",
"estimate.detail.docPopup.schDisplayFlg": "見積提出書の表示名",
"estimate.detail.docPopup.schDisplayFlg.schDisplayFlg0": "販売店名",
@@ -928,13 +927,13 @@
"estimate.detail.docPopup.schDrawingFlg.schDrawingFlg0": "含まない",
"estimate.detail.docPopup.close": "閉じる",
"estimate.detail.docPopup.docDownload": "文書のダウンロード",
- "estimate.detail.estimateCopyPopup.title": "見積もり",
+ "estimate.detail.estimateCopyPopup.title": "見積コピー",
"estimate.detail.estimateCopyPopup.explane": "見積書をコピーする販売店を設定します。見積書は定価でコピーされます。",
"estimate.detail.estimateCopyPopup.label.saleStoreId": "一次販売店名/ID",
"estimate.detail.estimateCopyPopup.label.otherSaleStoreId": "二次販売店名/ID",
"estimate.detail.estimateCopyPopup.label.receiveUser": "担当者",
"estimate.detail.estimateCopyPopup.close": "閉じる",
- "estimate.detail.estimateCopyPopup.copyBtn": "見積もり",
+ "estimate.detail.estimateCopyPopup.copyBtn": "見積コピー",
"estimate.detail.estimateCopyPopup.copy.alertMessage": "見積書がコピーされました。コピーした商品情報に移動します。",
"estimate.detail.productFeaturesPopup.title": "製品特異事項",
"estimate.detail.productFeaturesPopup.close": "閉じる",
@@ -943,7 +942,6 @@
"estimate.detail.save.alertMsg": "保存されました。見積書で製品を変更すると、図面や回路には反映されません。",
"estimate.detail.copy.alertMsg": "コピーされました。",
"estimate.detail.save.requiredFileUpload": "ファイル添付が必須のアイテムがあります。ファイルを添付するか、後日添付をチェックしてください。",
- "estimate.detail.save.requiredNorthArrangementFileUpload": "北面にモジュールを配置した場合、北面配置許可書を必ず添付する必要があります.",
"estimate.detail.save.requiredItem": "製品は1つ以上登録する必要があります。",
"estimate.detail.save.requiredCharger": "担当者は必須です。",
"estimate.detail.save.requiredObjectName": "案件名は必須です。",
@@ -953,14 +951,14 @@
"estimate.detail.save.requiredAmount": "数量は0より大きい値を入力してください。",
"estimate.detail.save.requiredSalePrice": "単価は0より大きい値を入力してください。",
"estimate.detail.reset.alertMsg": "初期化されました。",
- "estimate.detail.reset.confirmMsg": "手書き変更(保存)した見積情報が初期化され、最近保存された図面情報が反映されます。本当に初期化しますか?",
+ "estimate.detail.reset.confirmMsg": "保存した見積情報が初期化され、最近保存された図面情報が反映されます。本当に初期化しますか?",
"estimate.detail.lock.alertMsg": "見積もりを[ロック]すると変更できません。
見積もりを修正するには、ロックを解除してください。",
"estimate.detail.unlock.alertMsg": "[ロック解除]すると、見積書を編集できます。
解除しますか?",
"estimate.detail.unlock.confirmBtnName": "解放",
"estimate.detail.alert.delFile": "添付ファイルを完全に削除するには、[保存]ボタンをクリックしてください。",
"estimate.detail.alert.selectDelItem": "削除する商品を選択してください。",
"estimate.menu.move.valid1": "回路を分割していないため、見積もりを呼び出すことはできません。",
- "simulator.title.sub1": "品番",
+ "simulator.title.sub1": "物件番号",
"simulator.title.sub2": "作成日",
"simulator.title.sub3": "システム容量",
"simulator.title.sub4": "年間予測発電量",
diff --git a/src/locales/ko.json b/src/locales/ko.json
index 7249b0f5..507f5415 100644
--- a/src/locales/ko.json
+++ b/src/locales/ko.json
@@ -50,8 +50,8 @@
"modal.movement.flow.line.updown.up": "자릿수를 올리다",
"modal.movement.flow.line.updown.down": "자릿수를 낮추다",
"modal.movement.flow.line.info": "동선을 선택하고 이동 폭을 지정하십시오",
- "modal.movement.flow.line.bottom.left": "높이 변경: 아래, 왼쪽",
- "modal.movement.flow.line.top.right": "높이 변경: 위, 오른쪽",
+ "modal.movement.flow.line.bottom.left": "높이변경 : 아래, 왼쪽",
+ "modal.movement.flow.line.top.right": "높이변경 : 위, 오른쪽",
"plan.menu.roof.cover.outline.edit.offset": "외벽선 편집 및 오프셋",
"plan.menu.roof.cover.roof.surface.alloc": "지붕면 할당",
"plan.menu.roof.cover.roof.shape.edit": "지붕형상 편집",
@@ -84,13 +84,13 @@
"plan.menu.placement.surface.arrangement": "면형상 배치",
"plan.menu.placement.surface.object": "오브젝트 배치",
"plan.menu.placement.surface.all.remove": "배치면 전체 삭제",
- "plan.menu.module.circuit.setting": "모듈·회로 구성",
- "plan.menu.module.circuit.setting.default": "모듈·가대설정",
+ "plan.menu.module.circuit.setting": "모듈, 회로 구성",
+ "plan.menu.module.circuit.setting.default": "모듈/가대설정",
"modal.module.basic.setting.orientation.setting": "방위 설정",
"modal.module.basic.setting.orientation.setting.info": "※시뮬레이션 계산용 방위를 지정합니다. 남쪽의 방위를 설정해주세요.",
"modal.module.basic.setting.orientation.setting.angle.passivity": "각도를 직접 입력",
"modal.module.basic.setting.module.roof.material": "지붕재",
- "modal.module.basic.setting.module.trestle.maker": "가대메이커",
+ "modal.module.basic.setting.module.trestle.maker": "가대메이거",
"modal.module.basic.setting.module.rafter.margin": "서까래 간격",
"modal.module.basic.setting.module.construction.method": "공법",
"modal.module.basic.setting.module.under.roof": "지붕밑바탕",
@@ -634,7 +634,7 @@
"stuff.gridHeader.address": "물건주소",
"stuff.gridHeader.dispCompanyName": "견적처",
"stuff.gridHeader.receiveUser": "담당자",
- "stuff.gridHeader.specificationConfirmDate": "사양확정일",
+ "stuff.gridHeader.specificationConfirmDate": "사양확인일",
"stuff.gridHeader.createDatetime": "등록일",
"stuff.gridData.tempObjectNo": "임시저장물건",
"stuff.message.periodError": "최대1년 조회 가능합니다.",
@@ -877,7 +877,6 @@
"estimate.detail.roofCns": "지붕재・사양시공",
"estimate.detail.remarks": "비고",
"estimate.detail.fileFlg": "후일자료제출",
- "estimate.detail.dragFileGuide": "(※ 북면설치인 경우, 파일 첨부가 필수입니다.)",
"estimate.detail.header.fileList1": "파일첨부",
"estimate.detail.fileList.btn": "파일선택",
"estimate.detail.fileList.extCheck": "이미지 파일만 첨부 가능합니다.",
@@ -943,7 +942,6 @@
"estimate.detail.save.alertMsg": "저장되었습니다. 견적서에서 제품을 변경할 경우 도면 및 회로에 반영되지 않습니다.",
"estimate.detail.copy.alertMsg": "복사되었습니다.",
"estimate.detail.save.requiredFileUpload": "파일첨부가 필수인 아이템이 있습니다. 파일을 첨부하거나 후일첨부를 체크해주십시오.",
- "estimate.detail.save.requiredNorthArrangementFileUpload": "북면에 모듈을 배치한 경우, 북면배치허가서를 반드시 첨부해야 합니다.",
"estimate.detail.save.requiredItem": "제품은 1개이상 등록해야 됩니다.",
"estimate.detail.save.requiredCharger": "담당자는 필수값 입니다.",
"estimate.detail.save.requiredObjectName": "안건명은 필수값 입니다.",
diff --git a/src/store/circuitTrestleAtom.js b/src/store/circuitTrestleAtom.js
index ea54835a..d1477e13 100644
--- a/src/store/circuitTrestleAtom.js
+++ b/src/store/circuitTrestleAtom.js
@@ -40,7 +40,10 @@ export const moduleStatisticsState = atom({
{ name: `발전량(kW)`, prop: 'amount' },
],
rows: [],
- footer: ['합계', '0'],
+ footer: [
+ { name: '-', prop: 'name' },
+ { name: 0, prop: 'amount' },
+ ],
},
dangerouslyAllowMutability: true,
})
diff --git a/src/util/canvas-util.js b/src/util/canvas-util.js
index 2204eaec..a0442d9f 100644
--- a/src/util/canvas-util.js
+++ b/src/util/canvas-util.js
@@ -1031,8 +1031,3 @@ export function calculateVisibleModuleHeight(sourceWidth, sourceHeight, angle, d
height: Number(visibleHeight.toFixed(1)), // 소수점 두 자리로 고정
}
}
-
-export function getTrestleLength(length, degree) {
- const radians = (degree * Math.PI) / 180
- return length * Math.cos(radians)
-}