commit merge

This commit is contained in:
2026-02-02 16:59:41 +01:00
15 changed files with 1129 additions and 10 deletions

View File

@ -4,9 +4,10 @@ namespace TecniStamp.Domain;
public class Macchinario : EntitaBase public class Macchinario : EntitaBase
{ {
public string Descrizione { get; set; } public string Nome { get; set; }
public string? Descrizione { get; set; }
public bool Interscambio { get; set; } public bool Interscambio { get; set; }
public string ConfigurazionePercorso { get; set; } public string? ConfigurazionePercorso { get; set; }
public string ConfigurazioneJSON { get; set; } public string? ConfigurazioneJSON { get; set; }
public string CodiceEsterno { get; set; } public string? CodiceEsterno { get; set; }
} }

View File

@ -0,0 +1,834 @@
// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using TecniStamp.Infrastructure.DAL.Context;
#nullable disable
namespace TecniStamp.Infrastructure.Migrations
{
[DbContext(typeof(TecniStampDbContext))]
[Migration("20260202155351_NomeSuMacchinario")]
partial class NomeSuMacchinario
{
/// <inheritdoc />
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "9.0.11")
.HasAnnotation("Relational:MaxIdentifierLength", 128);
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
modelBuilder.Entity("TecniStamp.Domain.Cliente", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("CAP")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Citta")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("ComuneId")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<string>("Email")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("Indirizzo")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Note")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("NumeroCivico")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Paese")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("PartitaIva")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Provincia")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("RagioneSociale")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Telefono")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Via")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("ComuneId");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.ToTable("Cliente");
});
modelBuilder.Entity("TecniStamp.Domain.Commessa", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<int>("AnnoCommessa")
.HasColumnType("int");
b.Property<Guid?>("ClienteId")
.HasColumnType("uniqueidentifier");
b.Property<string>("CodiceCommessa")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("DataConsegna")
.HasColumnType("datetime2");
b.Property<DateTime>("DataConsegnaPrevista")
.HasColumnType("datetime2");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<DateTime>("DataOrdine")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("OrdineNr")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<decimal?>("OreTotali")
.HasColumnType("decimal(18,2)");
b.Property<string>("RiferimentoCliente")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<int>("Stato")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("ClienteId");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.ToTable("Commessa");
});
modelBuilder.Entity("TecniStamp.Domain.ComuneIstat", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("CodFisco")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Comune")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("Istat")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Prefisso")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Provincia")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("ProvinciaIstatId")
.HasColumnType("uniqueidentifier");
b.Property<string>("Regione")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.HasIndex("ProvinciaIstatId");
b.ToTable("ComuneIstat");
});
modelBuilder.Entity("TecniStamp.Domain.Feature", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<string>("Descrizione")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("Nome")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<int>("Ordinamento")
.HasColumnType("int");
b.Property<Guid>("SezioneId")
.HasColumnType("uniqueidentifier");
b.Property<int>("Type")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.HasIndex("SezioneId");
b.ToTable("Feature");
});
modelBuilder.Entity("TecniStamp.Domain.Lavorazione", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("ChiaveEsterna")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Codice")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("CodiceColore")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<float?>("CostoOrario")
.HasColumnType("real");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<string>("Descrizione")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<bool>("Sovrapponibile")
.HasColumnType("bit");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.ToTable("Lavorazione");
});
modelBuilder.Entity("TecniStamp.Domain.Macchinario", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("CodiceEsterno")
.HasColumnType("nvarchar(max)");
b.Property<string>("ConfigurazioneJSON")
.HasColumnType("nvarchar(max)");
b.Property<string>("ConfigurazionePercorso")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<string>("Descrizione")
.HasColumnType("nvarchar(max)");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<bool>("Interscambio")
.HasColumnType("bit");
b.Property<string>("Nome")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.ToTable("Macchinario");
});
modelBuilder.Entity("TecniStamp.Domain.Permission", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid>("IdFeature")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("RuoloId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("IdFeature");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.HasIndex("RuoloId");
b.ToTable("Permission");
});
modelBuilder.Entity("TecniStamp.Domain.ProvinciaIstat", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("Provincia")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Sigla")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.ToTable("ProvinciaIstat");
});
modelBuilder.Entity("TecniStamp.Domain.Ruolo", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("Nome")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.ToTable("Ruolo");
});
modelBuilder.Entity("TecniStamp.Domain.Sezione", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<bool>("Blank")
.HasColumnType("bit");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<string>("Icona")
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("Nome")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<int>("Ordinamento")
.HasColumnType("int");
b.Property<Guid?>("ParentId")
.HasColumnType("uniqueidentifier");
b.Property<string>("Url")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.HasIndex("ParentId");
b.ToTable("Sezione");
});
modelBuilder.Entity("TecniStamp.Domain.Utente", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("Cognome")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<decimal>("Costo")
.HasColumnType("decimal(18,2)");
b.Property<DateTime>("DataCreazione")
.HasColumnType("datetime2");
b.Property<DateTime?>("DataModifica")
.HasColumnType("datetime2");
b.Property<bool>("Eliminato")
.HasColumnType("bit");
b.Property<string>("Email")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("IdUtenteCreazione")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("IdUtenteModifica")
.HasColumnType("uniqueidentifier");
b.Property<string>("Nome")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Password")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("RuoloId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("IdUtenteCreazione");
b.HasIndex("IdUtenteModifica");
b.HasIndex("RuoloId");
b.ToTable("Utente");
});
modelBuilder.Entity("TecniStamp.Domain.Cliente", b =>
{
b.HasOne("TecniStamp.Domain.ComuneIstat", "Comune")
.WithMany()
.HasForeignKey("ComuneId");
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.Navigation("Comune");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Commessa", b =>
{
b.HasOne("TecniStamp.Domain.Cliente", "Cliente")
.WithMany()
.HasForeignKey("ClienteId");
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.Navigation("Cliente");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.ComuneIstat", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.HasOne("TecniStamp.Domain.ProvinciaIstat", "ProvinciaIstat")
.WithMany()
.HasForeignKey("ProvinciaIstatId");
b.Navigation("ProvinciaIstat");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Feature", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.HasOne("TecniStamp.Domain.Sezione", "Sezione")
.WithMany("Features")
.HasForeignKey("SezioneId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Sezione");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Lavorazione", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Macchinario", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Permission", b =>
{
b.HasOne("TecniStamp.Domain.Feature", "Feature")
.WithMany()
.HasForeignKey("IdFeature")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.HasOne("TecniStamp.Domain.Ruolo", "Ruolo")
.WithMany("Permessi")
.HasForeignKey("RuoloId");
b.Navigation("Feature");
b.Navigation("Ruolo");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.ProvinciaIstat", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Ruolo", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Sezione", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.HasOne("TecniStamp.Domain.Sezione", "Parent")
.WithMany()
.HasForeignKey("ParentId");
b.Navigation("Parent");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Utente", b =>
{
b.HasOne("TecniStamp.Domain.Utente", "UtenteCreazione")
.WithMany()
.HasForeignKey("IdUtenteCreazione");
b.HasOne("TecniStamp.Domain.Utente", "UtenteModifica")
.WithMany()
.HasForeignKey("IdUtenteModifica");
b.HasOne("TecniStamp.Domain.Ruolo", "Ruolo")
.WithMany("Utenti")
.HasForeignKey("RuoloId");
b.Navigation("Ruolo");
b.Navigation("UtenteCreazione");
b.Navigation("UtenteModifica");
});
modelBuilder.Entity("TecniStamp.Domain.Ruolo", b =>
{
b.Navigation("Permessi");
b.Navigation("Utenti");
});
modelBuilder.Entity("TecniStamp.Domain.Sezione", b =>
{
b.Navigation("Features");
});
#pragma warning restore 612, 618
}
}
}

View File

@ -0,0 +1,101 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace TecniStamp.Infrastructure.Migrations
{
/// <inheritdoc />
public partial class NomeSuMacchinario : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<string>(
name: "Descrizione",
table: "Macchinario",
type: "nvarchar(max)",
nullable: true,
oldClrType: typeof(string),
oldType: "nvarchar(max)");
migrationBuilder.AlterColumn<string>(
name: "ConfigurazionePercorso",
table: "Macchinario",
type: "nvarchar(max)",
nullable: true,
oldClrType: typeof(string),
oldType: "nvarchar(max)");
migrationBuilder.AlterColumn<string>(
name: "ConfigurazioneJSON",
table: "Macchinario",
type: "nvarchar(max)",
nullable: true,
oldClrType: typeof(string),
oldType: "nvarchar(max)");
migrationBuilder.AlterColumn<string>(
name: "CodiceEsterno",
table: "Macchinario",
type: "nvarchar(max)",
nullable: true,
oldClrType: typeof(string),
oldType: "nvarchar(max)");
migrationBuilder.AddColumn<string>(
name: "Nome",
table: "Macchinario",
type: "nvarchar(max)",
nullable: false,
defaultValue: "");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "Nome",
table: "Macchinario");
migrationBuilder.AlterColumn<string>(
name: "Descrizione",
table: "Macchinario",
type: "nvarchar(max)",
nullable: false,
defaultValue: "",
oldClrType: typeof(string),
oldType: "nvarchar(max)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
name: "ConfigurazionePercorso",
table: "Macchinario",
type: "nvarchar(max)",
nullable: false,
defaultValue: "",
oldClrType: typeof(string),
oldType: "nvarchar(max)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
name: "ConfigurazioneJSON",
table: "Macchinario",
type: "nvarchar(max)",
nullable: false,
defaultValue: "",
oldClrType: typeof(string),
oldType: "nvarchar(max)",
oldNullable: true);
migrationBuilder.AlterColumn<string>(
name: "CodiceEsterno",
table: "Macchinario",
type: "nvarchar(max)",
nullable: false,
defaultValue: "",
oldClrType: typeof(string),
oldType: "nvarchar(max)",
oldNullable: true);
}
}
}

View File

@ -337,15 +337,12 @@ namespace TecniStamp.Infrastructure.Migrations
.HasColumnType("uniqueidentifier"); .HasColumnType("uniqueidentifier");
b.Property<string>("CodiceEsterno") b.Property<string>("CodiceEsterno")
.IsRequired()
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(max)");
b.Property<string>("ConfigurazioneJSON") b.Property<string>("ConfigurazioneJSON")
.IsRequired()
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(max)");
b.Property<string>("ConfigurazionePercorso") b.Property<string>("ConfigurazionePercorso")
.IsRequired()
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(max)");
b.Property<DateTime>("DataCreazione") b.Property<DateTime>("DataCreazione")
@ -355,7 +352,6 @@ namespace TecniStamp.Infrastructure.Migrations
.HasColumnType("datetime2"); .HasColumnType("datetime2");
b.Property<string>("Descrizione") b.Property<string>("Descrizione")
.IsRequired()
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(max)");
b.Property<bool>("Eliminato") b.Property<bool>("Eliminato")
@ -370,6 +366,10 @@ namespace TecniStamp.Infrastructure.Migrations
b.Property<bool>("Interscambio") b.Property<bool>("Interscambio")
.HasColumnType("bit"); .HasColumnType("bit");
b.Property<string>("Nome")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id"); b.HasKey("Id");
b.HasIndex("IdUtenteCreazione"); b.HasIndex("IdUtenteCreazione");

View File

@ -0,0 +1,13 @@
using OAService.Service.Servizi.Implementazioni;
using TecniStamp.Domain;
using TecniStamp.Service.Interfaces;
using TecniStamp.Service.Repository;
namespace TecniStamp.Service;
public class CommessaService : TService<Commessa>, ICommessaService
{
public CommessaService(ITecniStampUnitOfWork unitOfWork) : base(unitOfWork)
{
}
}

View File

@ -0,0 +1,8 @@
using OAService.Service.Servizi.Interfacce;
using TecniStamp.Domain;
namespace TecniStamp.Service.Interfaces;
public interface ICommessaService : ITService<Commessa>
{
}

View File

@ -2,6 +2,7 @@
public interface IManagerService public interface IManagerService
{ {
ICommessaService CommessaService { get; set; }
IFeatureService FeatureService { get; set; } IFeatureService FeatureService { get; set; }
IPermissionService PermissionService { get; set; } IPermissionService PermissionService { get; set; }
IRuoloService RuoloService{ get; set; } IRuoloService RuoloService{ get; set; }

View File

@ -1,4 +1,3 @@
using OAService.Service.Repository;
using OAService.Service.Servizi.Interfacce; using OAService.Service.Servizi.Interfacce;
using TecniStamp.Domain; using TecniStamp.Domain;

View File

@ -12,8 +12,10 @@ public class ManagerService : IManagerService
RuoloService = ruoloService; RuoloService = ruoloService;
FeatureService = featureService; FeatureService = featureService;
MacchinarioService = macchinarioService; MacchinarioService = macchinarioService;
CommessaService = commessaService;
} }
public ICommessaService CommessaService { get; set; }
public IFeatureService FeatureService { get; set; } public IFeatureService FeatureService { get; set; }
public IPermissionService PermissionService { get; set; } public IPermissionService PermissionService { get; set; }
public IRuoloService RuoloService { get; set; } public IRuoloService RuoloService { get; set; }

View File

@ -1,5 +1,6 @@
@page "/commesse" @page "/commesse"
@using Microsoft.EntityFrameworkCore @using Microsoft.EntityFrameworkCore
@using TecniStamp.Model.Commesse
@using TecniStamp.Model.Common @using TecniStamp.Model.Common
@using TecniStamp.Utils @using TecniStamp.Utils
@ -8,11 +9,15 @@
@code { @code {
public List<BreadcrumbViewModel> BreadcrumbList { get; set; } = new(); public List<BreadcrumbViewModel> BreadcrumbList { get; set; } = new();
public List<CommessaViewModel> CommesseList { get; set; } = new();
protected override async Task OnInitializedAsync() protected override async Task OnInitializedAsync()
{ {
await base.OnInitializedAsync(); await base.OnInitializedAsync();
BreadcrumbList = await BreadcrumbUtils.BuildBreadcrumbByFeature(_managerService, "Commesse_Info"); BreadcrumbList = await BreadcrumbUtils.BuildBreadcrumbByFeature(_managerService, "Commesse_Info");
CommesseList = (await _managerService.CommessaService.RicercaQueryable(x => x.Eliminato == false))
.Select(x => (CommessaViewModel)x).ToList();
} }
} }

View File

@ -4,7 +4,7 @@
<a class="stretched-link text-decoration-none text-dark" href="@Model.Url" @(Model.Blank ? "target=\"_blank\"" : "") ></a> <a class="stretched-link text-decoration-none text-dark" href="@Model.Url" @(Model.Blank ? "target=\"_blank\"" : "") ></a>
<div class="card-body"> <div class="card-body">
<h1 class="text-center mb-2"> <h1 class="text-center mb-2">
<i class="@Model.Icon" style="font-size:65px;"></i> <RadzenIcon Icon="@Model.Icon" />
</h1> </h1>
<h1 class="mb-0 text-center"> <h1 class="mb-0 text-center">
@Model.Text @Model.Text

View File

@ -0,0 +1,50 @@
using TecniStamp.Domain;
namespace TecniStamp.Model.Commesse;
public class ClienteViewModel : BaseViewModel
{
public string RagioneSociale { get; set; }
public string PartitaIva { get; set; }
public string Paese { get; set; }
public string Telefono { get; set; }
public string Email { get; set; }
public string Indirizzo { get; set; }
public string CAP { get; set; }
public string Citta { get; set; }
public string NumeroCivico { get; set; }
public string Via { get; set; }
public string Provincia { get; set; }
public string Note { get; set; }
public Guid? ComuneId { get; set; }
public ComuneIstatViewModel Comune { get; set; }
public override void Validate()
{
}
public static implicit operator ClienteViewModel(Cliente model)
{
return model == null
? null
: new ClienteViewModel()
{
RagioneSociale = model.RagioneSociale,
PartitaIva = model.PartitaIva,
Paese = model.Paese,
Telefono = model.Telefono,
Email = model.Email,
Indirizzo = model.Indirizzo,
CAP = model.CAP,
Citta = model.Citta,
NumeroCivico = model.NumeroCivico,
Via = model.Via,
Provincia = model.Provincia,
Note = model.Note,
ComuneId = model.ComuneId,
Comune = model.Comune,
Id = model.Id
};
}
}

View File

@ -0,0 +1,44 @@
using TecniStamp.Domain;
namespace TecniStamp.Model.Commesse;
public class CommessaViewModel : BaseViewModel
{
public string CodiceCommessa { get; set; }
public int AnnoCommessa { get; set; }
public Guid? ClienteId { get; set; }
public ClienteViewModel Cliente { get; set; }
public string RiferimentoCliente { get; set; }
public string OrdineNr { get; set; }
public decimal? OreTotali { get; set; }
public DateTime DataOrdine { get; set; }
public DateTime DataConsegnaPrevista { get; set; }
public DateTime DataConsegna { get; set; }
public CommessaStato Stato { get; set; }
public override void Validate()
{
}
public static implicit operator CommessaViewModel(Commessa model)
{
return model == null
? null
: new CommessaViewModel()
{
Stato = model.Stato,
CodiceCommessa = model.CodiceCommessa,
AnnoCommessa = model.AnnoCommessa,
ClienteId = model.ClienteId,
Cliente = model.Cliente,
RiferimentoCliente = model.RiferimentoCliente,
OrdineNr = model.OrdineNr,
OreTotali = model.OreTotali,
DataOrdine = model.DataOrdine,
DataConsegnaPrevista = model.DataConsegnaPrevista,
DataConsegna = model.DataConsegna,
Id = model.Id
};
}
}

View File

@ -0,0 +1,35 @@
using TecniStamp.Domain;
namespace TecniStamp.Model.Commesse;
public class ComuneIstatViewModel : BaseViewModel
{
public string Istat { get; set; }
public string Comune { get; set; }
public string Regione { get; set; }
public string Provincia { get; set; }
public string Prefisso { get; set; }
public string CodFisco { get; set; }
public ProvinciaIstatViewModel ProvinciaIstat { get; set; }
public override void Validate()
{
}
public static implicit operator ComuneIstatViewModel(ComuneIstat model)
{
return model == null
? null
: new ComuneIstatViewModel()
{
Provincia = model.Provincia,
CodFisco = model.CodFisco,
Prefisso = model.Prefisso,
Regione = model.Regione,
Istat = model.Istat,
Comune = model.Comune,
ProvinciaIstat = model.ProvinciaIstat,
Id = model.Id
};
}
}

View File

@ -0,0 +1,26 @@
using TecniStamp.Domain;
namespace TecniStamp.Model.Commesse;
public class ProvinciaIstatViewModel : BaseViewModel
{
public string Sigla { get; set; }
public string Provincia { get; set; }
public override void Validate()
{
}
public static implicit operator ProvinciaIstatViewModel(ProvinciaIstat model)
{
return model == null
? null
: new ProvinciaIstatViewModel()
{
Provincia = model.Provincia,
Sigla = model.Sigla,
Id = model.Id
};
}
}