fix ricalcolo porta post save

This commit is contained in:
zaccaria.majid
2023-05-25 13:02:33 +02:00
parent 57d3f9433d
commit cc3b32f1d9
14 changed files with 138 additions and 103 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
<body>
<i>WebDoorCreator - Egalware</i>
<h4>Version: 0.9.2305.2508</h4>
<h4>Version: 0.9.2305.2512</h4>
<br /> Release note:
<ul>
<li>
+1 -1
View File
@@ -1 +1 @@
0.9.2305.2508
0.9.2305.2512
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<item>
<version>0.9.2305.2508</version>
<version>0.9.2305.2512</version>
<url>http://nexus.steamware.net/repository/SWS/WDC/stable/WDC.UI.zip</url>
<changelog>http://nexus.steamware.net/repository/SWS/WDC/stable/ChangeLog.html</changelog>
<mandatory>false</mandatory>
@@ -1,8 +1,8 @@
<div>
@if (B_doorOpUpd || true)
{
<button class="btn btn-success" @onclick="() => doSave()"><i class="fa-solid fa-rotate-right"></i></button>
<button class="btn btn-info" @onclick="() => doRecalcAll()"><i class="fa-solid fa-window-restore"></i></button>
@*<button class="btn btn-success" @onclick="() => doSave()"><i class="fa-solid fa-rotate-right"></i></button>
<button class="btn btn-info" @onclick="() => doRecalcAll()"><i class="fa-solid fa-window-restore"></i></button>*@
<a class="btn btn-warning" href="https://iis01.egalware.com/Test3D/Doors041122/EXB_0267100040/EXB_0267100040.html" target="_blank"><i class="fa-solid fa-cube"></i></a>
@if (IsErr)
{
@@ -17,15 +17,15 @@
</div>
<!-- Modal Order -->
<div class="modal fade" id="errListModal" tabindex="-1" aria-labelledby="errListModalLabel" aria-hidden="true">
<div class="modal-dialog" style=" overflow-y: initial ">
<div class="modal" id="errListModal" tabindex="-1" aria-hidden="true">
<div class="modal-dialog modal-dialog-scrollable">
<div class="modal-content">
<div class="modal-header d-flex justify-content-between">
<div class="modal-header">
<h1 class="modal-title fs-5" id="errListModalLabel">Current error</h1>
<i class="fa-solid fa-triangle-exclamation text-danger fs-5"></i>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body" style="max-height: 80vh; overflow-y: auto;">
<div class="modal-body" style="max-height: 80vh">
<div class="w-100 text-start">
@ErrCode
</div>
@@ -38,7 +38,7 @@
</div>
<!-- Modal Order -->
<div class="modal fade" id="errListModal" tabindex="-1" aria-labelledby="errListModalLabel" aria-hidden="true">
@*<div class="modal" id="errListModal" tabindex="-1" aria-hidden="true">
<div class="modal-dialog" style=" overflow-y: initial ">
<div class="modal-content">
<div class="modal-header d-flex justify-content-between">
@@ -55,4 +55,4 @@
</div>
</div>
</div>
</div>
</div>*@
@@ -4,7 +4,8 @@
}
else
{
<div class="row">
<div class="row me-2">
<div class="row mb-1">
<div class="col-4">
@if (DoorOp2Save != null)
@@ -14,7 +15,7 @@ else
</div>
<div class="col-4">
@*<ButtonsDoorDef></ButtonsDoorDef>*@
</div>
</div>
@if (paramsChanged)
{
@@ -43,20 +44,22 @@ else
</div>
}
</div>
@foreach (var item in CurrBaseDoorOp)
{
@if (item.ObjectId == "Size" || item.ObjectId == "Swing" || item.ObjectId == "Finishing" || item.ObjectId == "Properties")
<div class="d-flex justify-content-between flex-wrap">
@foreach (var item in CurrBaseDoorOp)
{
<div class="col-6 text-start border">
<DoorDataBlock E_doorOp2Save="doSetDoorOp2Save" BlockDoorOp="@item"></DoorDataBlock>
</div>
@if (item.ObjectId == "Size" || item.ObjectId == "Swing" || item.ObjectId == "Finishing" || item.ObjectId == "Properties")
{
<div class="col-2 m-2 small p-2 mt-2" style="border: 2px solid black; border-radius: 15px;">
<DoorDataBlock paramsChanged=@paramsChanged E_doorOp2Save="doSetDoorOp2Save" BlockDoorOp="@item"></DoorDataBlock>
</div>
}
else
{
<div class="col-12 small p-2 mt-2 text-start" style="border: 2px solid black; border-radius: 15px;">
<DoorDataBlock paramsChanged=@paramsChanged E_doorOp2Save="doSetDoorOp2Save" BlockDoorOp="@item"></DoorDataBlock>
</div>
}
}
else
{
<div class="col-12 text-start border">
<DoorDataBlock E_doorOp2Save="doSetDoorOp2Save" BlockDoorOp="@item"></DoorDataBlock>
</div>
}
}
</div>
</div>
}
@@ -17,6 +17,9 @@ namespace WebDoorCreator.UI.Components.DoorDef
[Parameter]
public EventCallback<bool> E_DoorOpReqRel { get; set; }
[Parameter]
public int doorId { get; set; } = 0;
#endregion Public Properties
#region Protected Properties
@@ -32,11 +35,14 @@ namespace WebDoorCreator.UI.Components.DoorDef
[Inject]
protected WebDoorCreatorService WDService { get; set; } = null!;
[Inject]
protected QueueDataService QDataServ { get; set; } = null!;
#endregion Protected Properties
#region Protected Methods
protected async Task doSaveDoorOp()
{
if (DoorOp2Save != null)
@@ -44,6 +50,9 @@ namespace WebDoorCreator.UI.Components.DoorDef
var done = await WDService.DoorOpUpdate(DoorOp2Save);
if (done)
{
string currDdf = await WDService.DoorOpGetDDF(doorId) ?? "";
int currVers = await QDataServ.SendCalcReq(doorId, currDdf);
DoorOp2Save = new List<DoorOpModel>();
paramsChanged = false;
await Task.Delay(50);
@@ -7,8 +7,11 @@ else
<div class="d-flex justify-content-between small">
<div style="width: 90%">
<div style="width: 90%;">
<div class="row my-1">
<b>@HwCode</b>
<div class="row my-1 @doCheckVal()">
@if (HwCode == "lockedge" || HwCode == "hingeedge" || HwCode == "top" || HwCode == "bottom")
{
<b>@HwCode</b>
}
</div>
@foreach (var item in currVal)
{
@@ -10,29 +10,25 @@
<CascadingValue Value="@WDCUService.userId">
<CascadingValue Value="@idDoor">
<CascadingValue Value="B_doorOpUpd">
<CascadingValue Value="IsErr">
<CascadingValue Value="ErrCode">
@if (orderStatus != null)
{
}
@if (currDefStep == 10)
{
@if (ListBaseDoorOp != null)
{
@if (orderStatus != null)
{
}
@if (currDefStep == 10)
{
@if (ListBaseDoorOp != null)
{
<BaseParamList CurrBaseDoorOp="@ListBaseDoorOp" E_DoorOpReqRel="doReload"></BaseParamList>
}
}
else if (currDefStep == 20)
{
<HardwareList isHwStep="@setHwToNull" DoorId="@idDoor" Lingua="@userLang"></HardwareList>
}
else if (currDefStep == 30)
{
<ReportList doorId="@idDoor" Lingua="@userLang"></ReportList>
}
</CascadingValue>
</CascadingValue>
<BaseParamList doorId=@idDoor CurrBaseDoorOp="@ListBaseDoorOp" E_DoorOpReqRel="doReload"></BaseParamList>
}
}
else if (currDefStep == 20)
{
<HardwareList isHwStep="@setHwToNull" DoorId="@idDoor" Lingua="@userLang"></HardwareList>
}
else if (currDefStep == 30)
{
<ReportList doorId="@idDoor" Lingua="@userLang"></ReportList>
}
</CascadingValue>
</CascadingValue>
</CascadingValue>
@@ -40,7 +36,11 @@
</div>
<div class="col-4 p-0">
<CascadingValue Value="@idDoor">
<DoorPreview doorW="50%" SvgContent="@DoorSvgContent"></DoorPreview>
<CascadingValue Value="IsErr">
<CascadingValue Value="ErrCode">
<DoorPreview doorW="50%" SvgContent="@DoorSvgContent"></DoorPreview>
</CascadingValue>
</CascadingValue>
</CascadingValue>
</div>
</div>
@@ -225,41 +225,47 @@ else
}
</div>
<div class="mb-3">
@foreach (var item in currVal)
@if (DoorOpInst.userConfirm != "" && DoorOpInst.DtConfirm != null)
{
@if (item.Key != "Folder" && item.Key != "template" && item.Key != "shape")
@foreach (var item in currVal)
{
@if (isCombo(item.Key))
{
<div class="row my-1">
<div class="col-4 d-flex flex-wrap align-items-center">
<span>@translate(item.Key)</span>
</div>
<select class="col-7" @bind="@currVal[item.Key]">
@foreach (var param in comboSet(item.Key))
{
<option value="@param.Split("/")[0]">
@(translate(@param.Split("/")[1]))
</option>
}
</select>
</div>
}
else
@if (item.Key != "Folder" && item.Key != "template" && item.Key != "shape")
{
<div class="row my-1">
<div class="col-4 d-flex flex-wrap align-items-center">
<span>@translate(item.Key)</span>
</div>
@if (isCombo(item.Key))
{
<div class="row my-1">
<div class="col-4 d-flex flex-wrap align-items-center">
<span>@translate(item.Key)</span>
</div>
<input type="text" class="col-7" @bind="@currVal[item.Key]" />
</div>
<select class="col-7" @bind="@currVal[item.Key]">
@foreach (var param in comboSet(item.Key))
{
<option value="@param.Split("/")[0]">
@(translate(@param.Split("/")[1]))
</option>
}
</select>
</div>
}
else
{
<div class="row my-1">
<div class="col-4 d-flex flex-wrap align-items-center">
<span>@translate(item.Key)</span>
</div>
<input type="text" class="col-7" @bind="@currVal[item.Key]" />
</div>
}
}
}
}
else
{
}
</div>
<hr />
<div class="row">
@@ -267,28 +273,42 @@ else
<button class="btnDelete" @onclick="() => doDeleteInst()">
<i class="fa-solid fa-xmark"></i>
</button>
<button class="btnClone" @onclick="() => doClone()">
<i class="fa-solid fa-copy"></i>
</button>
@if (DoorOpInst.userConfirm != "" && DoorOpInst.DtConfirm != null)
{
<button class="btnClone" @onclick="() => doClone()">
<i class="fa-solid fa-copy"></i>
</button>
}
</div>
<div class="col-6 text-end">
@if (isChangedVal())
@if (DoorOpInst.userConfirm != "" && DoorOpInst.DtConfirm != null)
{
<button class="btnCancel" style="cursor: pointer; --colorCode:#E67E22;" @onclick="() => doCancel()">
<i class="fa-solid fa-rotate"></i>
</button>
<button class="btnSave" style="cursor: pointer; --colorCode:#27AE60;" @onclick="() => doSave()">
<i class="fa-solid fa-cloud-arrow-up"></i>
</button>
@if (isChangedVal())
{
<button class="btnCancel" style="cursor: pointer; --colorCode:#E67E22;" @onclick="() => doCancel()">
<i class="fa-solid fa-rotate"></i>
</button>
<button class="btnSave" style="cursor: pointer; --colorCode:#27AE60;" @onclick="() => doSave()">
<i class="fa-solid fa-cloud-arrow-up"></i>
</button>
}
else
{
<button class="btnCancel" style="cursor: pointer; --colorCode:#7F8C8D;" @onclick="() => doCancel()">
<i class="fa-solid fa-rotate"></i>
</button>
<button class="btnSave" style="cursor: pointer; --colorCode:#7F8C8D;" @onclick="() => doSave()">
<i class="fa-solid fa-cloud-arrow-up"></i>
</button>
}
}
else
{
<button class="btnCancel" style="cursor: pointer; --colorCode:#7F8C8D;" @onclick="() => doCancel()">
<i class="fa-solid fa-rotate"></i>
</button>
<button class="btnSave" style="cursor: pointer; --colorCode:#7F8C8D;" @onclick="() => doSave()">
<i class="fa-solid fa-cloud-arrow-up"></i>
</button>
<NavLink href="@pathFinder(DoorOpInst.DoorOpId)" target="_blank">
<button class="btnPDFPending">
<i class="fa-solid fa-file-pdf"></i>
</button>
</NavLink>
}
</div>
</div>
@@ -40,9 +40,9 @@
}
.btnPDFPending {
border-radius: 50%;
width: 1.5rem;
height: 1.5rem;
border: 2px solid #00838F;
width: 3.5rem;
height: 3.5rem;
border: 5px solid #00838F;
z-index: 99999;
background: #F1C40F;
}
@@ -35,7 +35,7 @@
}
.btnPDFPending {
.btnPDF;
.btnGen;
background: #F1C40F;
//transform: translate(20.3rem, 1rem);
}
@@ -1 +1 @@
.btnPDF{border-radius:50%;width:1.5rem;height:1.5rem;border:2px solid #00838f;z-index:99999;}.btnGen{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;}.btnDelete{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#b71c1c;}.btnClone{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#fff;}.btnPDFSuccess{border-radius:50%;width:1.5rem;height:1.5rem;border:2px solid #00838f;z-index:99999;background:#8e44ad;}.btnPDFPending{border-radius:50%;width:1.5rem;height:1.5rem;border:2px solid #00838f;z-index:99999;background:#f1c40f;}.btnPDFSuccess>i{font-size:.8rem;}.btnHighlight{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#03a9f4;transform:translate(10.3rem,-8rem);}.btnCancel{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:var(--colorCode);}.btnSave{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:var(--colorCode);}.btnHeadTail{width:100%;padding:.8rem 0 .8rem 0;background:none;border:0;}.btnConfirm{width:100%;padding:.8rem 0 .8rem 0;background:none;border:0;border-bottom:3px solid #000;}.btnHead{width:100%;padding:.8rem 0 .8rem 0;background:none;border:0;}.borderTop{border-top:7px solid #00838f;}.borderBottom{border-bottom:7px solid #00838f;width:100%;}.modal-dialog{overflow-y:initial!important;}.modal-body{height:18.75rem;overflow-y:auto;}.testata{width:100%;}select,input{border:0;border-bottom:2px solid #000;background:none;height:2rem;}i{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;font-size:1.1rem;}.blue{background:#3652d9;}.grey{background:#7f8c8d;opacity:50%;}.circle{width:1rem;height:1rem;border-radius:50%;box-shadow:0 0 1px 1px #0000001a;}.pulse{animation:pulse-animation 2s infinite;}@keyframes pulse-animation{0%{box-shadow:0 0 0 0 rgba(0,0,0,.2);}100%{box-shadow:0 0 0 20px rgba(0,0,0,0);}}
.btnPDF{border-radius:50%;width:1.5rem;height:1.5rem;border:2px solid #00838f;z-index:99999;}.btnGen{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;}.btnDelete{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#b71c1c;}.btnClone{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#fff;}.btnPDFSuccess{border-radius:50%;width:1.5rem;height:1.5rem;border:2px solid #00838f;z-index:99999;background:#8e44ad;}.btnPDFPending{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#f1c40f;}.btnPDFSuccess>i{font-size:.8rem;}.btnHighlight{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#03a9f4;transform:translate(10.3rem,-8rem);}.btnCancel{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:var(--colorCode);}.btnSave{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:var(--colorCode);}.btnHeadTail{width:100%;padding:.8rem 0 .8rem 0;background:none;border:0;}.btnConfirm{width:100%;padding:.8rem 0 .8rem 0;background:none;border:0;border-bottom:3px solid #000;}.btnHead{width:100%;padding:.8rem 0 .8rem 0;background:none;border:0;}.borderTop{border-top:7px solid #00838f;}.borderBottom{border-bottom:7px solid #00838f;width:100%;}.modal-dialog{overflow-y:initial!important;}.modal-body{height:18.75rem;overflow-y:auto;}.testata{width:100%;}select,input{border:0;border-bottom:2px solid #000;background:none;height:2rem;}i{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;font-size:1.1rem;}.blue{background:#3652d9;}.grey{background:#7f8c8d;opacity:50%;}.circle{width:1rem;height:1rem;border-radius:50%;box-shadow:0 0 1px 1px #0000001a;}.pulse{animation:pulse-animation 2s infinite;}@keyframes pulse-animation{0%{box-shadow:0 0 0 0 rgba(0,0,0,.2);}100%{box-shadow:0 0 0 20px rgba(0,0,0,0);}}
@@ -24,7 +24,7 @@ else
<tr>
<td>
<button class="btn btn-sm btn-primary" @onclick="()=>setOrd2Show(item.OrderId)" title="Order detail"><i class="fa-solid fa-magnifying-glass"></i></button>
<a class="btn btn-sm btn-info" target="_blank" href="@reportUrl(item.OrderId)" title="Download pdf report"><i class="fa-regular fa-file-pdf"></i></a>
@*<a class="btn btn-sm btn-info" target="_blank" href="@reportUrl(item.OrderId)" title="Download pdf report"><i class="fa-regular fa-file-pdf"></i></a>*@
</td>
<td>@item.DateIns</td>
<td>@item.OrderExtCode</td>
+1 -1
View File
@@ -3,7 +3,7 @@
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
<Version>0.9.2305.2508</Version>
<Version>0.9.2305.2512</Version>
<ImplicitUsings>enable</ImplicitUsings>
<UserSecretsId>aspnet-WebDoorCreator.UI-dfe95fed-1398-4144-bd43-8b3a765d6608</UserSecretsId>
</PropertyGroup>