Files
webwindowconfigurator/WebWindowConfigurator/WebWindowMaker.razor
T
Annamaria Sassi 74b4264539 - Gestione aggiunta anta con riempimento
- Gestione BottomRail per Sash
2025-08-06 19:14:48 +02:00

321 lines
22 KiB
Plaintext

<div class="row">
<div class="@mainCss">
<div class="card text-center table-svg">
<div class="card-header" style="background-color: #d5f1f2;">
<div class="row">
<div class="col-6">
<ul class="nav nav-tabs card-header-tabs">
<li class="nav-item">
@if (currStep == CompileStep.Template)
{
<a data-target="#Template" class="nav-link active fw-bold" aria-current="true" @onclick="() => AdvStep(CompileStep.Template)">Template</a>
}
else
{
<a data-target="#Template" class="nav-link text-secondary" @onclick="() => AdvStep(CompileStep.Template)">Template</a>
}
</li>
@if (SelTemplateDTO != null)
{
<li class="nav-item">
<a data-target="#Frame" class="@tabNavCss(CompileStep.Frame)" aria-current="true" @onclick="() => DoSelectAndPreview(CompileStep.Frame)">Frame</a>
</li>
@if ( m_SplitList.Count > 0)
{
<li class="nav-item">
<a data-target="#Split" class="@tabNavCss(CompileStep.Split)" aria-current="true" @onclick="() => DoSelectAndPreview(CompileStep.Split)">Split</a>
</li>
}
@if(m_SashList.Count > 0)
{
<li class="nav-item">
<a data-target="#Sash" class="@tabNavCss(CompileStep.Sash)" aria-current="true" @onclick="() => DoSelectAndPreview(CompileStep.Sash)">Sash</a>
</li>
}
<li class="nav-item">
<a data-target="#Fill" class="@tabNavCss(CompileStep.Fill)" aria-current="true" @onclick="() => DoSelectAndPreview(CompileStep.Fill)">Fill</a>
</li>
}
</ul>
</div>
<div class="col-6 d-grid gap-2 d-md-flex justify-content-md-end">
<button class="btn btn-lg btn-primary btn-sm" @onclick="DoSave">Save</button>
<button class="btn btn-lg btn-primary btn-sm" @onclick="DoPreviewSvg">Preview Svg</button>
<button class="btn btn-lg btn-primary btn-sm" @onclick="DoClose">Close</button>
</div>
</div>
</div>
<div class="card-body bg-transparent">
<div class="alert alert-light text-center display-4">
@if (currStep == CompileStep.Template)
{
<table class="table table-hover align-middle">
<thead class="table-light fs-5">
<tr>
<th scope="col">#</th>
<th scope="col" class="col-4">Image</th>
<th scope="col" class="text-start">Description</th>
</tr>
</thead>
<tbody class="table-group-divider fs-5">
@foreach (var item in IN_TemplateDTOList)
{
string colorClass = "";
@if (SelTemplateDTO != null && item.Index == SelTemplateDTO.Index)
colorClass = "table-success";
else
colorClass = "";
<tr style="height: 150px;" class="@colorClass" @onclick="() => DoSelect(item)">
<td>@item.Index</td>
<td><img class="img-fluid" width="100" src="@item.ImageUrl" /></td>
<td class="text-start">@item.Description</td>
</tr>
}
</tbody>
</table>
@*<button class="btn btn-sm btn-primary" title="Reset selezione" @onclick="DoReset"><i class="fa-solid fa-arrow-rotate-right"></i></button> *@
}
else if (currStep == CompileStep.Frame)
{
<div class="container">
<div class="row">
<div class="alert alert-light text-start p-1 display-4 w-50">
<div class="input-group mb-2">
<label class="input-group-text" for="FrameShape">Shape</label>
<select class="form-select" @bind="@m_Frame.SelShapeIndex">
<option value="0">Rectangle</option>
<option value="1">Right Chamfer</option>
<option value="2">Left Chamfer</option>
<option value="3">Double Chamfer</option>
<option value="4">Arc</option>
<option value="5">Arc Full</option>
<option value="6">Double Arc</option>
<option value="7">Triangle</option>
</select>
</div>
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Dimensioni</h5>
@foreach (FrameDimension dimension in m_Frame.DimensionList)
{
<div class="input-group mb-2">
<span class="input-group-text" id="IndexDimFrame">@dimension.nIndex</span>
<span class="input-group-text" id="NameDimFrame">@dimension.sName</span>
<input type="number" class="form-control" aria-label="@dimension.dValue" @bind="@dimension.dValue">
</div>
}
</div>
</div>
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Giunzioni telaio</h5>
@foreach (Joint joint in m_Frame.JointList)
{
<div class="input-group mb-2">
<label class="input-group-text" for="IndexJoint">@joint.nIndex</label>
<select class="form-select" @bind="@joint.SelJointTypeIndex">
<option value="0">Angled</option>
<option value="1">Full H</option>
<option value="2">Full V</option>
</select>
</div>
}
</div>
</div>
@if (m_SashList.Count == 0)
{
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Bottom rail</h5>
<div class="input-group mb-2">
<span class="input-group-text" id="BottomRailQty">Quantity</span>
<input type="number" class="form-control" aria-label="BottomRailQty" @bind="@m_Frame.BottomRailQty">
</div>
</div>
</div>
}
</div>
</div>
</div>
}
else if (currStep == CompileStep.Split)
{
<div class="container">
<div class="row">
<div class="alert alert-light text-start p-1 display-4 w-50">
@foreach (var item in SplitList)
{
<div class="border mb-2">
<div class="card-body py-2">
<div class="input-group mb-2">
<span class="input-group-text" id="basic-addon1Split">Numero</span>
<input type="number" class="form-control" placeholder="0" aria-label="basic-addon1Split" @bind="@item.nSplitQty">
</div>
<div class="input-group mb-2">
<label class="input-group-text" for="basic-addon2Split">Shape</label>
<select class="form-select" @bind="@item.SelSplitShapeIndex">
<option value="0">Vertical</option>
<option value="1">Horizontal</option>
<option value="2">Grid</option>
<option value="3">Custom</option>
</select>
</div>
@foreach (var dim in item.SplitPositionList)
{
<div class="input-group mb-2">
<span class="input-group-text" id="basic-addon3Split">Altezza area inferiore</span>
<input type="number" class="form-control" aria-label="basic-addon2Split" @bind="@dim.dDimension">
</div>
}
</div>
</div>
}
@* <button class="btn btn-sm btn-primary" title="Reset selezione" @onclick="DoReset"><i class="fa-solid fa-arrow-rotate-right"></i></button> *@
</div>
</div>
</div>
}
else if (currStep == CompileStep.Sash)
{
<div class="container">
<div class="row">
<div class="alert alert-light text-start p-1 display-4 w-50">
@foreach (var item in SashList)
{
<div class="input-group mb-2">
<div class="input-group mb-2">
<span class="input-group-text" id="NumberSash">Numero</span>
<input type="number" class="form-control" aria-label="NumberSash" @bind="@item.nSashQty">
</div>
</div>
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Orientamento</h5>
<div class="form-check fs-5">
<input class="form-check-input" type="radio" name="@item.nAreaId" checked value="@item.bIsSashVertical">
<label class="form-check-label" for="VerticalSash">Vertical</label>
</div>
<div class="form-check fs-5">
<input class="form-check-input" type="radio" name="@item.nAreaId">
<label class="form-check-label" for="HorizontalSash">Horizontal</label>
</div>
</div>
</div>
@foreach (SashDimension sash in item.SashList)
{
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Apertura</h5>
<div class="input-group mb-2">
<label class="input-group-text" for="OpeningSash">Tipologia</label>
<select class="form-select" @bind="@sash.SelOpeningTypeIndex">
<option value="0">A battente sinistra</option>
<option value="1">A battente destra</option>
<option value="2">Ad anta-ribalta sinistra</option>
<option value="3">Ad anta-ribalta destra</option>
<option value="4">5</option>
<option value="5">7</option>
<option value="6">8</option>
<option value="7">9</option>
<option value="8">10</option>
<option value="9">11</option>
<option value="10">12</option>
<option value="11">13</option>
</select>
</div>
<div class="input-group mb-2">
<span class="input-group-text" id="Dimension">Dimensione</span>
<input type="number" class="form-control" aria-label="DimensionSash" @bind="@sash.dDimension">
</div>
<div class="d-flex justify-content-start fs-5 mb-2">
<div class="px-1">
<input class="form-check-input ml-auto" type="checkbox" name="Handle" id="Handle" @bind="@sash.bHasHandle">
</div>
<div class="px-2">
<label class="form-check-label fs-6 text-dark" for="HandleSashLabel">Maniglia</label>
</div>
</div>
</div>
</div>
}
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Giunzioni ante</h5>
@foreach (Joint joint in item.JointList)
{
<div class="input-group mb-2">
<label class="input-group-text" for="IndexJoint">@joint.nIndex</label>
<select class="form-select" @bind="@joint.SelJointTypeIndex">
<option value="0">Angled</option>
<option value="1">Full H</option>
<option value="2">Full V</option>
</select>
</div>
}
</div>
</div>
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Bottom rail</h5>
<div class="input-group mb-2">
<span class="input-group-text" id="BottomRailQty">Quantità</span>
<input type="number" class="form-control" aria-label="BottomRailQty" @bind="@item.SashBottomRailQty">
</div>
</div>
</div>
}
@* <button class="btn btn-sm btn-primary" title="Reset selezione" @onclick="DoReset"><i class="fa-solid fa-arrow-rotate-right"></i></button> *@
</div>
</div>
</div>
}
else if (currStep == CompileStep.Fill)
{
<div class="container">
<div class="row">
<div class="alert alert-light text-start p-1 display-4 w-50">
@foreach (var Fill in FillList)
{
<div class="border mb-2">
<div class="card-body py-2">
<h5 class="card-title">Riempimento</h5>
<div id="RadioButtons" class="col-sm-10">
@* <input type="radio" checked="@(FillList[i].FillType == FillTypes.GLASS)"
name="@i" @onchange="@(() => FillList[i].FillType = FillTypes.GLASS)" />
<label>Glass</label>
<input type="radio" checked="@(FillList[i].FillType == FillTypes.WOOD)"
name="@i" @onchange="@(() => FillList[i].FillType = FillTypes.WOOD)" />
<label>Wood</label>
*@
</div>
</div>
</div>
}
@* <div class="form-check fs-5">
<input class="form-check-input" type="radio" name="@i" id="GlassFill@(i)" checked @bind="@FillList[i].bGlass_IsChecked">
<label class="form-check-label" for="Fill">Glass</label>
</div>
<div class="form-check fs-5">
<input class="form-check-input" type="radio" name="@i" id="WoodFill@(i)" @bind="@FillList[i].bWood_IsChecked">
<label class="form-check-label" for="Fill">Wood</label>
</div> *@
@* <button class="btn btn-sm btn-primary" title="Reset selezione" @onclick="DoReset"><i class="fa-solid fa-arrow-rotate-right"></i></button> *@
</div>
</div>
</div>
}
</div>
</div>
</div>
</div>
@if (SelTemplateDTO != null && currStep != CompileStep.Template)
{
<div class="col-6">
@outSvg
</div>
}
</div>