Merge branch 'develop' of https://gitlab.steamware.net/egalware/webdoorcreator into develop
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<div>
|
||||
@if (B_doorOpUpd || true)
|
||||
{
|
||||
<button class="btn btn-success" @onclick="() => doSave()"><i class="fa-solid fa-floppy-disk"></i></button>
|
||||
<button class="btn btn-success" @onclick="() => doSave()"><i class="fa-solid fa-rotate-right"></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)
|
||||
{
|
||||
@@ -10,7 +10,7 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
<button class="btn btn-secondary"><i class="fa-solid fa-floppy-disk"></i></button>
|
||||
<button class="btn btn-secondary"><i class="fa-solid fa-rotate-right"></i></button>
|
||||
<button class="btn btn-secondary"><i class="fa-solid fa-cube"></i></button>
|
||||
}
|
||||
@*<button class="btn btn-success" @onclick="() => toOrderPage()">Return to Order <b>@idOrd</b></button>*@
|
||||
|
||||
@@ -37,11 +37,11 @@
|
||||
<button class="btn btn-primary w-100" type="button" @onclick="()=>doClone()">Clone door</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pb-1">
|
||||
@*<div class="pb-1">
|
||||
<div class="input-group mb-3">
|
||||
<button class="btn btn-info w-100" type="button">Save as template</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>*@
|
||||
<div class="pb-1">
|
||||
<div class="input-group mb-3">
|
||||
<button class="btn btn-danger w-100" type="button" @onclick="()=>deleteRecord()">Delete door</button>
|
||||
|
||||
@@ -3,8 +3,10 @@ using Microsoft.CodeAnalysis.Text;
|
||||
using Microsoft.JSInterop;
|
||||
using WebDoorCreator.Data;
|
||||
using WebDoorCreator.Data.DbModels;
|
||||
using WebDoorCreator.Data.DTO;
|
||||
using WebDoorCreator.Data.Services;
|
||||
using WebDoorCreator.UI.Data;
|
||||
using static Org.BouncyCastle.Math.EC.ECCurve;
|
||||
using static System.Runtime.CompilerServices.RuntimeHelpers;
|
||||
|
||||
namespace WebDoorCreator.UI.Components.DoorMan
|
||||
@@ -34,8 +36,16 @@ namespace WebDoorCreator.UI.Components.DoorMan
|
||||
protected async override Task OnInitializedAsync()
|
||||
{
|
||||
await Task.Delay(1);
|
||||
string vers = config.GetValue<string>("ConfDDF:VersNumber");
|
||||
bool remDoorOp = config.GetValue<bool>("ConfDDF:RemoveDoorOps");
|
||||
var headRows = config.GetSection("ConfDDF:Header").Get<List<string>>();
|
||||
var footRows = config.GetSection("ConfDDF:Footer").Get<List<string>>();
|
||||
currDdfConv = new WebDoorCreator.Data.DDF.Converter(vers, remDoorOp, headRows, footRows);
|
||||
}
|
||||
|
||||
protected WebDoorCreator.Data.DDF.Converter currDdfConv { get; set; } = null!;
|
||||
[Inject]
|
||||
protected IConfiguration config { get; set; } = null!;
|
||||
protected DDFDto CurrentConf { get; set; } = new DDFDto();
|
||||
protected async Task closeModal()
|
||||
{
|
||||
await Task.Delay(1);
|
||||
@@ -90,6 +100,8 @@ namespace WebDoorCreator.UI.Components.DoorMan
|
||||
}
|
||||
}
|
||||
|
||||
protected int newDoorId { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Clona la porta selezionata con annesse door operations
|
||||
/// </summary>
|
||||
@@ -107,7 +119,7 @@ namespace WebDoorCreator.UI.Components.DoorMan
|
||||
{
|
||||
var doorToAdd = door2Clone.ObjClone(userId);
|
||||
// salvo!
|
||||
var newDoorId = await WDService.DoorInsert(doorToAdd);
|
||||
newDoorId = await WDService.DoorInsert(doorToAdd);
|
||||
if (newDoorId != 0 && doorOps2Clone != null)
|
||||
{
|
||||
foreach (var item in doorOps2Clone)
|
||||
@@ -120,6 +132,7 @@ namespace WebDoorCreator.UI.Components.DoorMan
|
||||
var done = await WDService.DoorOpInsert(newDoorId, doorOps2Add);
|
||||
if (done)
|
||||
{
|
||||
await doSave();
|
||||
await closeModal();
|
||||
}
|
||||
}
|
||||
@@ -127,6 +140,49 @@ namespace WebDoorCreator.UI.Components.DoorMan
|
||||
}
|
||||
}
|
||||
|
||||
protected List<string> ordListVal { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// Effettua salvataggio record e generazione DDF
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
protected async Task doSave()
|
||||
{
|
||||
List<DoorOpModel>? listOpAll = await WDService.DoorOpGetByDoorId(newDoorId);
|
||||
if (listOpAll != null)
|
||||
{
|
||||
List<DoorOpModel> listOp = listOpAll.Where(x => x.userConfirm != "" && x.DtConfirm != null).ToList();
|
||||
if (listOp != null)
|
||||
{
|
||||
// chiamo metodo x avewre DDF serializzato
|
||||
//var list2Ord = ;
|
||||
var CurrentCompoOrder = await WDService.ListValuesGetAll("*", "Hardware");
|
||||
if (CurrentCompoOrder != null)
|
||||
{
|
||||
foreach (var item in CurrentCompoOrder.OrderBy(x => x.Ordinal).ToList())
|
||||
{
|
||||
ordListVal.Add(item.TableName);
|
||||
}
|
||||
}
|
||||
|
||||
listOp = listOp.OrderBy(d => ordListVal.IndexOf(d.ObjectId)).ToList();
|
||||
|
||||
string currDdf = currDdfConv.GetSerialized(listOp);
|
||||
// FIXME TODO: si potrebbe eliminare in futuro che va su REDIS
|
||||
//await SaveYaml(currDdf);
|
||||
// versione corrente del DDF generato
|
||||
int currVers = await QDataServ.SendCalcReq(newDoorId, currDdf);
|
||||
|
||||
if (currVers > 0)
|
||||
{
|
||||
IsErr = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Path del servizio di recupero SVG delle porte
|
||||
/// </summary>
|
||||
|
||||
@@ -156,6 +156,7 @@ namespace WebDoorCreator.UI.Components.Hardware
|
||||
protected async Task doCancel()
|
||||
{
|
||||
await FullReloadData();
|
||||
await InvokeAsync(StateHasChanged);
|
||||
}
|
||||
|
||||
protected async Task doClone()
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
border: 5px solid #00838F;
|
||||
z-index: 99999;
|
||||
background: #F1C40F;
|
||||
transform: translate(16rem, 1rem);
|
||||
transform: translate(20.3rem, 1rem);
|
||||
}
|
||||
.btnHighlight {
|
||||
border-radius: 50%;
|
||||
@@ -48,7 +48,7 @@
|
||||
border: 5px solid #00838F;
|
||||
z-index: 99999;
|
||||
background: #03A9F4;
|
||||
transform: translate(17.6rem, -8rem);
|
||||
transform: translate(10.3rem, -8rem);
|
||||
}
|
||||
.btnCancel {
|
||||
border-radius: 50%;
|
||||
@@ -57,7 +57,7 @@
|
||||
border: 5px solid #00838F;
|
||||
z-index: 99999;
|
||||
background: var(--colorCode);
|
||||
transform: translate(-2rem, 1rem);
|
||||
transform: translate(-7rem, 1rem);
|
||||
}
|
||||
.btnSave {
|
||||
border-radius: 50%;
|
||||
@@ -66,7 +66,7 @@
|
||||
border: 5px solid #00838F;
|
||||
z-index: 99999;
|
||||
background: var(--colorCode);
|
||||
transform: translate(-2.6rem, 1rem);
|
||||
transform: translate(-7.5rem, 1rem);
|
||||
}
|
||||
.btnHeadTail {
|
||||
width: 100%;
|
||||
|
||||
@@ -30,23 +30,23 @@
|
||||
.btnPDFPending {
|
||||
.btnGen;
|
||||
background: #F1C40F;
|
||||
transform: translate(16rem, @yDelta);
|
||||
transform: translate(20.3rem, 1rem);
|
||||
}
|
||||
|
||||
.btnHighlight {
|
||||
.btnGen;
|
||||
background: #03A9F4;
|
||||
transform: translate(17.6rem, -8rem);
|
||||
transform: translate(10.3rem, -8rem);
|
||||
}
|
||||
.btnCancel {
|
||||
.btnGen;
|
||||
background: var(--colorCode);
|
||||
transform: translate(-2rem, 1rem);
|
||||
transform: translate(-7rem, 1rem);
|
||||
}
|
||||
.btnSave {
|
||||
.btnGen;
|
||||
background: var(--colorCode);
|
||||
transform: translate(-2.6rem, 1rem);
|
||||
transform: translate(-7.5rem, 1rem);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
.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;transform:translate(25px,-1rem);}.btnClone{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#fff;transform:translate(1.6rem,-1rem);}.btnPDFSuccess{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#8e44ad;transform:translate(1rem,1rem);}.btnPDFPending{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#f1c40f;transform:translate(16rem,1rem);}.btnHighlight{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#03a9f4;transform:translate(17.6rem,-8rem);}.btnCancel{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:var(--colorCode);transform:translate(-2rem,1rem);}.btnSave{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:var(--colorCode);transform:translate(-2.6rem,1rem);}.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;}
|
||||
.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;transform:translate(25px,-1rem);}.btnClone{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#fff;transform:translate(1.6rem,-1rem);}.btnPDFSuccess{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#8e44ad;transform:translate(1rem,1rem);}.btnPDFPending{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:#f1c40f;transform:translate(20.3rem,1rem);}.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);transform:translate(-7rem,1rem);}.btnSave{border-radius:50%;width:3.5rem;height:3.5rem;border:5px solid #00838f;z-index:99999;background:var(--colorCode);transform:translate(-7.5rem,1rem);}.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;}
|
||||
@@ -8,15 +8,15 @@
|
||||
</div>*@
|
||||
<div class="row">
|
||||
<div class="col-12 px-0">
|
||||
<CascadingValue Value="@idDoor">
|
||||
<CascadingValue Value="B_doorOpUpd">
|
||||
<CascadingValue Value="IsErr">
|
||||
<CascadingValue Value="ErrCode">
|
||||
@*<DoorDefOrderTopRow currOrderStatus="@orderStatus" bgColor="#AFCFD1"></DoorDefOrderTopRow>*@
|
||||
</CascadingValue>
|
||||
</CascadingValue>
|
||||
</CascadingValue>
|
||||
@*<CascadingValue Value="@idDoor">
|
||||
<CascadingValue Value="B_doorOpUpd">
|
||||
<CascadingValue Value="IsErr">
|
||||
<CascadingValue Value="ErrCode">
|
||||
@*<DoorDefOrderTopRow currOrderStatus="@orderStatus" bgColor="#AFCFD1"></DoorDefOrderTopRow>
|
||||
</CascadingValue>
|
||||
</CascadingValue>
|
||||
</CascadingValue>
|
||||
</CascadingValue>*@
|
||||
</div>
|
||||
<div class="col-8 pe-0">
|
||||
<div class="mb-3 ps-1 pe-0">
|
||||
@@ -24,23 +24,36 @@
|
||||
</div>
|
||||
<div class="px-2">
|
||||
<CascadingValue Value="@WDCUService.userId">
|
||||
@if (currDefStep == 10)
|
||||
{
|
||||
@if (ListBaseDoorOp != null)
|
||||
{
|
||||
<CascadingValue Value="@idDoor">
|
||||
<CascadingValue Value="B_doorOpUpd">
|
||||
<CascadingValue Value="IsErr">
|
||||
<CascadingValue Value="ErrCode">
|
||||
@*<DoorDefOrderTopRow currOrderStatus="@orderStatus" bgColor="#AFCFD1"></DoorDefOrderTopRow>*@
|
||||
@if (orderStatus != null)
|
||||
{
|
||||
<ButtonsDoorDef idOrd="@orderStatus.OrderId"></ButtonsDoorDef>
|
||||
}
|
||||
@if (currDefStep == 10)
|
||||
{
|
||||
@if (ListBaseDoorOp != null)
|
||||
{
|
||||
|
||||
<BaseParamList CurrBaseDoorOp="@ListBaseDoorOp" E_DoorOpReqRel="doReload"></BaseParamList>
|
||||
}
|
||||
@*<DoorSizingStep E_paramChanged="catchParamChange" DoorId="@idDoor"></DoorSizingStep>*@
|
||||
}
|
||||
else if (currDefStep == 20)
|
||||
{
|
||||
<HardwareList isHwStep="@setHwToNull" DoorId="@idDoor" Lingua="@userLang"></HardwareList>
|
||||
}
|
||||
else if (currDefStep == 30)
|
||||
{
|
||||
<ReportList doorId="@idDoor" Lingua="@userLang"></ReportList>
|
||||
}
|
||||
<BaseParamList CurrBaseDoorOp="@ListBaseDoorOp" E_DoorOpReqRel="doReload"></BaseParamList>
|
||||
}
|
||||
@*<DoorSizingStep E_paramChanged="catchParamChange" DoorId="@idDoor"></DoorSizingStep>*@
|
||||
}
|
||||
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>
|
||||
</CascadingValue>
|
||||
</CascadingValue>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user