update parziale gestione tempo ciclo
This commit is contained in:
@@ -129,7 +129,7 @@
|
||||
</div>
|
||||
}
|
||||
|
||||
<div class="col-6">
|
||||
<div class="col-12 col-sm-6">
|
||||
<div class="input-group input-group-lg">
|
||||
<input type="text" class="form-control w-25" placeholder="Cerca" aria-label="Cerca">
|
||||
<select class="form-select w-50" @bind="IdxOdlSel">
|
||||
@@ -146,7 +146,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="col-12 col-sm-6">
|
||||
@if (idxOdlSel > 0)
|
||||
{
|
||||
<button class="btn btn-lg btn-primary w-100"><i class="fa-solid fa-check me-1"></i> INIZIO Attrezzaggio</button>
|
||||
@@ -158,12 +158,12 @@
|
||||
</div>
|
||||
@if (idxOdlSel > 0)
|
||||
{
|
||||
<div class="col-6">
|
||||
<div class="col-12 col-sm-6">
|
||||
<label class="form-label">note Attrezzaggio</label>
|
||||
<textarea class="form-control" rows="3" @bind="@noteAttr"></textarea>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<SelTempoMSMC TempoMC="@tcRichAttr"></SelTempoMSMC>
|
||||
<div class="col-12 col-sm-6">
|
||||
<SelTempoMSMC TempoMC="@tcRichAttr" modoControllo="SelTempoMSMC.timeControlMode.selettori"></SelTempoMSMC>
|
||||
</div>
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
<p>
|
||||
Selettore TC MM:SS / M.CC
|
||||
</p>
|
||||
|
||||
<i>implementare come altro con selettori tendina, testo libero, switch MC/MS...</i>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-8">
|
||||
@if (modoControllo == timeControlMode.testo)
|
||||
{
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">Tempo</span>
|
||||
<input type="text" class="form-control" @bind="@txtTempo">
|
||||
</div>
|
||||
}
|
||||
else
|
||||
{
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text">@labelTempoIN</span>
|
||||
<input type="time" class="form-control" @bind="@selTempoMS" step="1">
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
<div class="col-4">
|
||||
@lblTempo
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,31 +1,217 @@
|
||||
using global::System;
|
||||
using global::System.Collections.Generic;
|
||||
using global::System.Linq;
|
||||
using global::System.Threading.Tasks;
|
||||
using global::Microsoft.AspNetCore.Components;
|
||||
using System.Net.Http;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Components.Authorization;
|
||||
using Microsoft.AspNetCore.Components.Forms;
|
||||
using Microsoft.AspNetCore.Components.Routing;
|
||||
using Microsoft.AspNetCore.Components.Web;
|
||||
using Microsoft.AspNetCore.Components.Web.Virtualization;
|
||||
using Microsoft.JSInterop;
|
||||
using MP_TAB_SERV;
|
||||
using MP_TAB_SERV.Shared;
|
||||
using MP_TAB_SERV.Components;
|
||||
using MP.Data;
|
||||
using MP.Data.DatabaseModels;
|
||||
using MP.Data.DTO;
|
||||
using MP.Data.Services;
|
||||
using Newtonsoft.Json;
|
||||
using NLog;
|
||||
|
||||
namespace MP_TAB_SERV.Components
|
||||
{
|
||||
public partial class SelTempoMSMC
|
||||
{
|
||||
#region Public Enums
|
||||
|
||||
/// <summary>
|
||||
/// modalità di visualizzazione ed interazione controllo tempo
|
||||
/// </summary>
|
||||
public enum timeControlMode
|
||||
{
|
||||
/// <summary>
|
||||
/// controllo textbox
|
||||
/// </summary>
|
||||
testo = 0,
|
||||
|
||||
/// <summary>
|
||||
/// selettori dropdown list
|
||||
/// </summary>
|
||||
selettori = 1
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// modalità tempo principale (Minuti Secondi o Minuti Centesimali=
|
||||
/// </summary>
|
||||
public enum timeMode
|
||||
{
|
||||
/// <summary>
|
||||
/// Minuti Secondi
|
||||
/// </summary>
|
||||
MS = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Minuti Centesimali
|
||||
/// </summary>
|
||||
MC = 1
|
||||
}
|
||||
|
||||
#endregion Public Enums
|
||||
|
||||
#region Public Properties
|
||||
|
||||
/// <summary>
|
||||
/// modalità rendering controllo
|
||||
/// </summary>
|
||||
[Parameter]
|
||||
public double TempoMC { get; set; } = 1;
|
||||
public timeControlMode modoControllo { get; set; } = timeControlMode.testo;
|
||||
|
||||
/// <summary>
|
||||
/// modalità controllo tempo
|
||||
/// </summary>
|
||||
[Parameter]
|
||||
public timeMode modoTempo { get; set; } = timeMode.MC;
|
||||
|
||||
/// <summary>
|
||||
/// Valore tempo (centesimale)
|
||||
/// </summary>
|
||||
[Parameter]
|
||||
public double TempoMC
|
||||
{
|
||||
get => _tempoMC;
|
||||
set
|
||||
{
|
||||
_tempoMC = value;
|
||||
_tempoMS = minCent2Sec(value);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Public Properties
|
||||
|
||||
#region Protected Properties
|
||||
|
||||
/// <summary>
|
||||
/// tempo min.cent
|
||||
/// </summary>
|
||||
protected double _tempoMC { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// tempo selezionato in formato Minuti Secondi
|
||||
/// </summary>
|
||||
protected DateTime selTempoMS
|
||||
{
|
||||
get => DateTime.Today.Add(TempoMS);
|
||||
set => TempoMS = value.Subtract(value.Date);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// tempo selezionato in formato Minuti Secondi
|
||||
/// </summary>
|
||||
protected TimeSpan TempoMS
|
||||
{
|
||||
get
|
||||
{
|
||||
return _tempoMS;
|
||||
}
|
||||
set
|
||||
{
|
||||
_tempoMS = value;
|
||||
_tempoMC = minSec2Cent(value);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Protected Properties
|
||||
|
||||
#region Protected Methods
|
||||
|
||||
/// <summary>
|
||||
/// conversione da tempo minuti centesimali a minuti/secondi
|
||||
/// </summary>
|
||||
/// <param name="valore"></param>
|
||||
/// <returns></returns>
|
||||
protected TimeSpan minCent2Sec(double valore)
|
||||
{
|
||||
TimeSpan answ = TimeSpan.FromMinutes(valore);
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// conversione da tempo minuti/secondi a minuti centesimali
|
||||
/// </summary>
|
||||
/// <param name="valore"></param>
|
||||
/// <returns></returns>
|
||||
protected double minSec2Cent(TimeSpan valore)
|
||||
{
|
||||
double answ = Math.Round(valore.TotalMinutes, 3);
|
||||
return answ;
|
||||
}
|
||||
|
||||
protected override void OnParametersSet()
|
||||
{
|
||||
showControls();
|
||||
}
|
||||
|
||||
#endregion Protected Methods
|
||||
|
||||
#region Private Fields
|
||||
|
||||
private string lblTempo = "";
|
||||
private string txtTempo = "";
|
||||
|
||||
#endregion Private Fields
|
||||
|
||||
#region Private Properties
|
||||
|
||||
/// <summary>
|
||||
/// tempo min:sec
|
||||
/// </summary>
|
||||
private TimeSpan _tempoMS { get; set; } = TimeSpan.FromSeconds(1);
|
||||
|
||||
/// <summary>
|
||||
/// INdica il formato del tempo IN INGRESSO (selezionato)
|
||||
/// </summary>
|
||||
private string labelTempoIN
|
||||
{
|
||||
get
|
||||
{
|
||||
string answ = "";
|
||||
if (modoTempo == timeMode.MC)
|
||||
{
|
||||
answ = "min.cent";
|
||||
}
|
||||
else
|
||||
{
|
||||
answ = "min:sec";
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Private Properties
|
||||
|
||||
#region Private Methods
|
||||
|
||||
/// <summary>
|
||||
/// mostra i controlli secondo richiesta
|
||||
/// </summary>
|
||||
private void showControls()
|
||||
{
|
||||
if (modoControllo == timeControlMode.testo)
|
||||
{
|
||||
if (modoTempo == timeMode.MC)
|
||||
{
|
||||
txtTempo = $"{TempoMC:0.000}";
|
||||
}
|
||||
else
|
||||
{
|
||||
txtTempo = $"{TempoMS:mm}:{TempoMS:ss}";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//ddlMinuti.SelectedValue = TempoMS.Minutes.ToString();
|
||||
//if (modoTempo == timeMode.MC)
|
||||
//{
|
||||
// ddlSecondi.SelectedValue = Convert.ToInt32((tempoMC - Math.Floor(tempoMC)) * 100).ToString();
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// ddlSecondi.SelectedValue = TempoMS.Seconds.ToString();
|
||||
//}
|
||||
}
|
||||
// fix label...
|
||||
if (modoTempo == timeMode.MC)
|
||||
{
|
||||
lblTempo = $"--> {TempoMS:mm}:{TempoMS:ss} (min:sec)";
|
||||
}
|
||||
else
|
||||
{
|
||||
lblTempo = $"--> {TempoMC:0.000} (min.cent)";
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Private Methods
|
||||
}
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<Nullable>enable</Nullable>
|
||||
<Version>6.16.2311.620</Version>
|
||||
<Version>6.16.2311.708</Version>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<RootNamespace>MP_TAB_SERV</RootNamespace>
|
||||
</PropertyGroup>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<body>
|
||||
<i>Modulo MAPOSPEC </i>
|
||||
<h4>Versione: 6.16.2311.620</h4>
|
||||
<h4>Versione: 6.16.2311.708</h4>
|
||||
<br /> Note di rilascio:
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
@@ -1 +1 @@
|
||||
6.16.2311.620
|
||||
6.16.2311.708
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<item>
|
||||
<version>6.16.2311.620</version>
|
||||
<version>6.16.2311.708</version>
|
||||
<url>https://nexus.steamware.net/repository/SWS/MP-TAB-SERV/stable/LAST/MP-TAB-SERV.zip</url>
|
||||
<changelog>https://nexus.steamware.net/repository/SWS/MP-TAB-SERV/stable/LAST/ChangeLog.html</changelog>
|
||||
<mandatory>false</mandatory>
|
||||
|
||||
Reference in New Issue
Block a user