기본설정 모듈배치 팝업 추가

This commit is contained in:
김창수 2024-10-07 16:46:20 +09:00
parent 846a4eae2f
commit 84d33d075d
7 changed files with 423 additions and 14 deletions

View File

@ -85,7 +85,7 @@ export default function CanvasPage() {
{/* <AuxiliarylineOption/> */}
{/* 처마∙케라바 변경 */}
<EvaseKerabaOption/>
{/* <EvaseKerabaOption/> */}
{/* 동선이동∙형 올림 내림 */}
{/* <MovingUpDonw/> */}

View File

@ -5,7 +5,7 @@ import RoofModuleOptionTab02 from "./RoofModuleOptionTab02";
import RoofModuleOptionTab03 from "./RoofModuleOptionTab03";
export default function RoofModuleOption(){
const [tabNum, setTabNum] = useState(1);
const [tabNum, setTabNum] = useState(3);
return(
<WithDraggable isShow={true}>
<div className={`modal-pop-wrap lx-2`}>

View File

@ -8,10 +8,10 @@ export default function RoofModuleOptionTab02({setTabNum}){
return(
<>
<div className="module-table-flex-wrap">
<div className="module-table-flex-wrap mb10">
<div className="module-table-box">
<div className="module-table-inneer">
<div className="outline-form">
<div className="module-table-inner">
<div className="outline-form mb10">
<span className="mr10">モジュールの選択</span>
<div className="grid-select">
<Qselect title={'Search'} option={SelectOption01}/>
@ -31,21 +31,137 @@ export default function RoofModuleOptionTab02({setTabNum}){
<tr>
<td>
<div className="color-wrap">
<span className="color-box"></span>
<span>Re.RISE-G3 440</span>
<span className="color-box" style={{backgroundColor: '#AA6768'}}></span>
<span className="name">Re.RISE-G3 440</span>
</div>
</td>
<td className="al-r">1134</td>
<td>1722</td>
<td>440</td>
<td className="al-r">1722</td>
<td className="al-r">440</td>
</tr>
<tr>
<td>
<div className="color-wrap">
<span className="color-box" style={{backgroundColor: '#67A2AA'}}></span>
<span className="name">Re.RISE MS-G3 290</span>
</div>
</td>
<td className="al-r">1134</td>
<td className="al-r">1722</td>
<td className="al-r">440</td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div className="module-table-box">
<div className="module-table-inneer"></div>
<div className="module-table-box">
<div className="module-box-tab">
<button className="module-btn act">スレート</button>
<button className="module-btn">平板瓦</button>
<button className="module-btn">53A</button>
<button className="module-btn">53A</button>
</div>
<div className="module-table-inner">
<div className="module-table-tit">屋根材:  スレーツ4)</div>
<div className="eaves-keraba-table">
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">
架台メーカー
</div>
<div className="eaves-keraba-td">
<div className="grid-select">
<Qselect title={'屋根技術研究所'} option={SelectOption01}/>
</div>
</div>
</div>
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">
工法
</div>
<div className="eaves-keraba-td">
<div className="grid-select">
<Qselect title={'スレート金具4'} option={SelectOption01}/>
</div>
</div>
</div>
<div className="eaves-keraba-item">
<div className="eaves-keraba-th">
屋根の下
</div>
<div className="eaves-keraba-td">
<div className="grid-select">
<Qselect title={'構造溶合板 12mm以上'} option={SelectOption01}/>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div className="module-table-box mb10">
<div className="module-table-inner">
<div className="module-table-flex-wrap">
<div className="outline-form">
<span className="mr10">綿調道区分</span>
<div className="grid-select">
<Qselect title={'Ⅲ ∙ Ⅳ'} option={SelectOption01}/>
</div>
</div>
<div className="outline-form">
<span className="mr10">設置高さ</span>
<div className="grid-select">
<Qselect title={'13'} option={SelectOption01}/>
</div>
</div>
<div className="outline-form">
<span className="mr10">基準風速</span>
<div className="grid-select">
<Qselect title={'32'} option={SelectOption01}/>
</div>
</div>
<div className="outline-form">
<span className="mr10">基準積雪量</span>
<div className="grid-select">
<Qselect title={'15'} option={SelectOption01}/>
</div>
</div>
</div>
</div>
</div>
<div className="module-table-box mb15">
<div className="warning-guide">
<div className="warning">
勾配の 範囲には制限があります屋根傾斜が2.5値未満10値を超える場合には施工が可能か
施工マニュアルを確認してください<br/>
モジュール配置時は施工マニュアルに記載されているモジュール配置条件を必ず確認してください<br/>
勾配の 範囲には制限があります屋根傾斜が2.5値未満10値を超える場合には施工が可能か
施工マニュアルを確認してください<br/>
モジュール配置時は施工マニュアルに記載されているモジュール配置条件を必ず確認してください<br/>
</div>
</div>
</div>
<div className="modal-btn-wrap mb15">
<button className="btn-frame roof blue">標準施工(1)</button>
<button className="btn-frame roof white">標準施工</button>
<button className="btn-frame roof">強化施工</button>
<button className="btn-frame roof">多設施工</button>
<button className="btn-frame roof blue">多設施工II</button>
</div>
<div className="grid-check-form border">
<div className="d-check-box pop">
<input type="checkbox" id="ch01" />
<label htmlFor="ch01">庇力バーの設置</label>
</div>
<div className="d-check-box pop">
<input type="checkbox" id="ch02" />
<label htmlFor="ch02">目幕金具の設置</label>
</div>
</div>
<div className="grid-btn-wrap">

View File

@ -3,7 +3,113 @@ export default function RoofModuleOptionTab03({setTabNum}){
return(
<>
<div className="module-table-flex-wrap mb10">
<div className="module-table-box">
<div className="module-table-inner">
<div className="roof-module-table">
<table>
<thead>
<tr>
<th style={{width: '70px'}}>
<div className="d-check-box no-text pop">
<input type="checkbox" id="ch01" disabled/>
<label htmlFor="ch01"></label>
</div>
</th>
<th >モジュール</th>
<th style={{width: '70px'}}>出力 (W)</th>
</tr>
</thead>
<tbody>
<tr>
<td className="al-c">
<div className="d-check-box no-text pop">
<input type="checkbox" id="ch02" />
<label htmlFor="ch02"></label>
</div>
</td>
<td>
<div className="color-wrap">
<span className="color-box" style={{backgroundColor: '#AA6768'}}></span>
<span className="name">Re.RISE-G3 440</span>
</div>
</td>
<td className="al-r">430</td>
</tr>
<tr>
<td className="al-c">
<div className="d-check-box no-text pop">
<input type="checkbox" id="ch03" />
<label htmlFor="ch03"></label>
</div>
</td>
<td>
<div className="color-wrap">
<span className="color-box" style={{backgroundColor: '#67A2AA'}}></span>
<span className="name">Re.RISE MS-G3 290</span>
</div>
</td>
<td className="al-r">290</td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div className="module-table-box">
<div className="module-table-inner">
<div className="self-table-tit">設置形態を選択してくださ</div>
<div className="module-self-table">
<div className="self-table-item">
<div className="self-item-th">水鳥の配置</div>
<div className="self-item-td">
<div className="pop-form-radio">
<div className="d-check-radio pop">
<input type="radio" name="radio01" id="ra01" />
<label htmlFor="ra01">する</label>
</div>
<div className="d-check-radio pop">
<input type="radio" name="radio01" id="ra02" />
<label htmlFor="ra02">しない</label>
</div>
</div>
</div>
</div>
<div className="self-table-item">
<div className="self-item-th">配置基準</div>
<div className="self-item-td">
<div className="pop-form-radio">
<div className="d-check-radio pop">
<input type="radio" name="radio02" id="ra03" />
<label htmlFor="ra03">中央配置</label>
</div>
<div className="d-check-radio pop">
<input type="radio" name="radio02" id="ra04" />
<label htmlFor="ra04">軒側</label>
</div>
<div className="d-check-radio pop">
<input type="radio" name="radio02" id="ra05" />
<label htmlFor="ra05">龍丸側</label>
</div>
</div>
</div>
</div>
</div>
<div className="self-table-flx">
<div className="d-check-box pop">
<input type="checkbox" id="ch04" />
<label htmlFor="ch04">最大配置する</label>
</div>
<button className="btn-frame self">北面許可配置登録</button>
</div>
</div>
</div>
</div>
<div className="grid-btn-wrap">
<button className="btn-frame modal mr5" onClick={() => setTabNum(2)}>以前</button>
<button className="btn-frame modal mr5">手動配置</button>

View File

@ -227,6 +227,9 @@ $alert-color: #101010;
align-items: center;
gap: 15px;
padding-bottom: 15px;
&.border{
border-bottom: 1px solid #424242;
}
}
.grid-option-wrap{
.grid-option-box{
@ -1225,17 +1228,123 @@ $alert-color: #101010;
.module-table-flex-wrap{
display: flex;
gap: 10px;
.outline-form{
flex: 1;
}
}
.module-box-tab{
display: flex;
.module-btn{
flex: 1;
border-top: 1px solid #505050;
border-bottom: 1px solid #505050;
border-right: 1px solid #505050;
background-color: #454545;
color: #fff;
height: 30px;
font-size: 12px;
font-weight: 400;
&:first-child{
border-left: 1px solid #505050;
}
&.act{
border-color: #fff;
background-color: #fff;
color: #101010;
}
}
}
.module-table-box{
flex: 1;
background-color: #3D3D3D;
border-radius: 2px;
.module-table-inneer{
.module-table-inner{
padding: 10px;
.outline-form{
span{
width: auto;
}
}
.module-table-tit{
padding: 10px 0;
font-size: 12px;
color: #fff;
border-bottom: 1px solid #4D4D4D;
}
.eaves-keraba-table{
width: 100%;
margin-top: 15px;
.eaves-keraba-th{
width: 72px;
}
.eaves-keraba-th,
.eaves-keraba-td{
padding-bottom: 5px;
}
}
.self-table-tit{
font-size: 12px;
font-weight: 500;
color: #fff;
padding-bottom: 15px;
}
}
.warning-guide{
padding: 20px;
.warning{
color: #FFCACA;
max-height: 55px;
overflow-y: auto;
padding-right: 30px;
&::-webkit-scrollbar {
width: 4px;
background-color: transparent;
}
&::-webkit-scrollbar-thumb {
background-color: #D9D9D9;
}
&::-webkit-scrollbar-track {
background-color: transparent;
}
}
}
}
.module-self-table{
display: table;
border-top: 1px solid #4D4D4D;
border-collapse: collapse;
width: 100%;
.self-table-item{
display: table-row;
.self-item-td,
.self-item-th{
display: table-cell;
vertical-align: middle;
border-bottom: 1px solid #4D4D4D;
}
.self-item-th{
width: 60px;
font-size: 12px;
font-weight: 500;
color: #fff;
}
.self-item-td{
font-size: 12px;
font-weight: 400;
color: #fff;
padding: 15px 20px;
}
}
}
.self-table-flx{
display: flex;
align-items: center;
margin-top: 15px;
button{
margin-left: auto;
}
}

View File

@ -215,6 +215,53 @@ button{
font-weight: 500;
}
}
&.roof{
height: 30px;
padding: 0 10px;
line-height: 28px;
font-family: 'Noto Sans JP', sans-serif;
background-color: transparent;
border: 1px solid #484848;
color: #fff;
&.blue{
background-color: #414E6C;
border: 1px solid #414E6C;
&:hover{
background-color: #414E6C;
border: 1px solid #414E6C;
}
}
&.white{
background-color: #fff;
border: 1px solid #fff;
color: #101010;
&:hover{
background-color: #fff;
border: 1px solid #fff;
color: #101010;
}
}
&:hover{
font-weight: 400;
background-color: transparent;
border: 1px solid #484848;
color: #fff;
}
}
&.self{
height: 30px;
padding: 0 10px;
line-height: 28px;
font-family: 'Noto Sans JP', sans-serif;
background-color: transparent;
border: 1px solid #676767;
color: #AAAAAA;
&:hover{
background-color: #272727;
border-color: #272727;
font-weight: 400;
}
}
&:hover,
&.act{
background-color: #1083E3;
@ -698,6 +745,11 @@ input[type=text]{
input[type=checkbox]:checked + label::after{
border-color: #fff;
}
&.no-text{
label{
padding-left: 0;
}
}
}
}

View File

@ -182,8 +182,9 @@ table{
thead{
th{
height: 40px;
padding: 0 10px;
padding: 0px 10px;
font-size: 12px;
line-height: 1.1;
color: #fff;
font-weight: 500;
border: 1px solid #505050;
@ -191,14 +192,39 @@ table{
background-color: rgba(255, 255, 255, 0.05);
text-align: center;
word-break: keep-all;
.d-check-box{
opacity: 0.5;
}
}
}
tbody{
td{
height: 40px;
vertical-align: middle;
font-size: 12px;
color: #fff;
font-weight: 400;
border: 1px solid #505050;
padding: 0 10px;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
.color-wrap{
display: flex;
align-items: center;
.color-box{
width: 14px;
height: 14px;
margin-right: 8px;
}
.name{
width: 0;
flex: 1;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
}
}
}
}