diff --git a/Resources/ChangeLog.html b/Resources/ChangeLog.html
index d870033..fc34ba9 100644
--- a/Resources/ChangeLog.html
+++ b/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
WebDoorCreator - Egalware
- Version: 0.9.2306.0516
+ Version: 0.9.2306.0610
Release note:
-
diff --git a/Resources/VersNum.txt b/Resources/VersNum.txt
index 5f242d2..3f39e70 100644
--- a/Resources/VersNum.txt
+++ b/Resources/VersNum.txt
@@ -1 +1 @@
-0.9.2306.0516
+0.9.2306.0610
diff --git a/Resources/manifest.xml b/Resources/manifest.xml
index 68bad2e..f374249 100644
--- a/Resources/manifest.xml
+++ b/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 0.9.2306.0516
+ 0.9.2306.0610
http://nexus.steamware.net/repository/SWS/WDC/stable/WDC.UI.zip
http://nexus.steamware.net/repository/SWS/WDC/stable/ChangeLog.html
false
diff --git a/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs b/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs
index e7380ac..07728c3 100644
--- a/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs
+++ b/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs
@@ -698,7 +698,7 @@ namespace WebDoorCreator.Data.Controllers
currRec.Quantity = addEditRec.Quantity;
currRec.DoorExtCode = addEditRec.DoorExtCode;
currRec.DoorDescript = addEditRec.DoorDescript;
- currRec.DoorIdParent = addEditRec.DoorIdParent;
+ currRec.ParentId = addEditRec.ParentId;
localDbCtx.Entry(currRec).State = EntityState.Modified;
}
else //if is null add the record as new in the table
diff --git a/WebDoorCreator.Data/DbModels/DoorModel.cs b/WebDoorCreator.Data/DbModels/DoorModel.cs
index 1e5f472..8c77093 100644
--- a/WebDoorCreator.Data/DbModels/DoorModel.cs
+++ b/WebDoorCreator.Data/DbModels/DoorModel.cs
@@ -22,6 +22,11 @@ namespace WebDoorCreator.Data.DbModels
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int DoorId { get; set; }
+ ///
+ /// Parent element ID
+ ///
+ public int ParentId { get; set; }
+
///
/// Ordine cui è associata la porta
///
@@ -32,11 +37,6 @@ namespace WebDoorCreator.Data.DbModels
///
public string MeasureUnit { get; set; } = "";
- ///
- /// Door's Type
- ///
- public int DoorIdParent { get; set; } = 0;
-
///
/// Codice esterno x riferimento (es ERP)
///
@@ -102,7 +102,7 @@ namespace WebDoorCreator.Data.DbModels
{
MeasureUnit = MeasureUnit,
OrderId = OrderId,
- DoorIdParent = DoorIdParent,
+ ParentId = ParentId,
DoorExtCode = DoorExtCode,
DateIns = adesso,
UserIdIns = userId,
diff --git a/WebDoorCreator.Data/DbModels/DoorOpTypeModel.cs b/WebDoorCreator.Data/DbModels/DoorOpTypeModel.cs
index f9d0081..51bfc41 100644
--- a/WebDoorCreator.Data/DbModels/DoorOpTypeModel.cs
+++ b/WebDoorCreator.Data/DbModels/DoorOpTypeModel.cs
@@ -21,6 +21,11 @@ namespace WebDoorCreator.Data.DbModels
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int DoorOpTypId { get; set; }
+ ///
+ /// Indica Id del parent: se 0 sono root, altrimenti indica il type parent
+ ///
+ public int ParentId { get; set; } = 0;
+
///
/// Codice univoco dell'operazione da svolgere (calcolato, idealmente 4 char da 36 val 0..Z)
///
@@ -67,16 +72,6 @@ namespace WebDoorCreator.Data.DbModels
///
public string FPath { get; set; } = "";
- ///
- /// Idx univoco dell'elemento parent (se 0 = root)
- ///
- public int ParentDoorOpId { get; set; } = 0;
-
- /////
- ///// Idx univoco dell'elemento parent (se 0 = root)
- /////
- //public HierarchyId? DoorOpIdPathFromPatriarch { get; set; }
-
///
/// Unit cost for the door
///
diff --git a/WebDoorCreator.Data/DbModels/OrderStatusViewModel.cs b/WebDoorCreator.Data/DbModels/OrderStatusViewModel.cs
index 7c3fd85..bbb95b4 100644
--- a/WebDoorCreator.Data/DbModels/OrderStatusViewModel.cs
+++ b/WebDoorCreator.Data/DbModels/OrderStatusViewModel.cs
@@ -14,7 +14,6 @@ namespace WebDoorCreator.Data.DbModels
///
/// View to retrieve data from multiple tables
///
- //[Table("v_OrderStatus")]
public class OrderStatusViewModel
{
///
diff --git a/WebDoorCreator.Data/DbModels/PrtRepOrderModel.cs b/WebDoorCreator.Data/DbModels/PrtRepOrderModel.cs
index 0883d47..cf03473 100644
--- a/WebDoorCreator.Data/DbModels/PrtRepOrderModel.cs
+++ b/WebDoorCreator.Data/DbModels/PrtRepOrderModel.cs
@@ -90,12 +90,15 @@ namespace WebDoorCreator.Data.DbModels
///
public string VAT { get; set; } = "";
+ ///
+ /// Current Door ID
+ ///
public int DoorId { get; set; }
///
- /// Door's Type
+ /// Door's parent ID
///
- public int TypeId { get; set; } = 0;
+ public int ParentId { get; set; } = 0;
///
/// Codice esterno x riferimento (es ERP)
diff --git a/WebDoorCreator.Data/Migrations/WDCData/20230606081147_repFixTypeId.Designer.cs b/WebDoorCreator.Data/Migrations/WDCData/20230606081147_repFixTypeId.Designer.cs
new file mode 100644
index 0000000..a0289ed
--- /dev/null
+++ b/WebDoorCreator.Data/Migrations/WDCData/20230606081147_repFixTypeId.Designer.cs
@@ -0,0 +1,1055 @@
+//
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using WebDoorCreator.Data;
+
+#nullable disable
+
+namespace WebDoorCreator.Data.Migrations.WDCData
+{
+ [DbContext(typeof(WDCDataContext))]
+ [Migration("20230606081147_repFixTypeId")]
+ partial class repFixTypeId
+ {
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .UseCollation("Latin1_General_CI_AS")
+ .HasAnnotation("ProductVersion", "6.0.14")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+ SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetRoles", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("ConcurrencyStamp")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("NormalizedName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("AspNetRoles", null, t => t.ExcludeFromMigrations());
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetUserRoles", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("RoleId")
+ .HasColumnType("nvarchar(450)");
+
+ b.HasKey("UserId", "RoleId");
+
+ b.HasIndex("RoleId");
+
+ b.ToTable("AspNetUserRoles", null, t => t.ExcludeFromMigrations());
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetUsers", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("AccessFailedCount")
+ .HasColumnType("int");
+
+ b.Property("ConcurrencyStamp")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("EmailConfirmed")
+ .HasColumnType("bit");
+
+ b.Property("LockoutEnabled")
+ .HasColumnType("bit");
+
+ b.Property("LockoutEnd")
+ .HasColumnType("datetimeoffset");
+
+ b.Property("NormalizedEmail")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("NormalizedUserName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("PasswordHash")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("PhoneNumber")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("PhoneNumberConfirmed")
+ .HasColumnType("bit");
+
+ b.Property("SecurityStamp")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("TwoFactorEnabled")
+ .HasColumnType("bit");
+
+ b.Property("UserName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("AspNetUsers", null, t => t.ExcludeFromMigrations());
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.CompanyModel", b =>
+ {
+ b.Property("CompanyId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("CompanyId"), 1L, 1);
+
+ b.Property("Address")
+ .IsRequired()
+ .HasMaxLength(250)
+ .HasColumnType("nvarchar(250)");
+
+ b.Property("City")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("CompanyExtCode")
+ .IsRequired()
+ .HasMaxLength(250)
+ .HasColumnType("nvarchar(250)");
+
+ b.Property("CompanyName")
+ .IsRequired()
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.Property("CompanyToken")
+ .IsRequired()
+ .HasMaxLength(150)
+ .HasColumnType("nvarchar(150)");
+
+ b.Property("PrivateNote")
+ .IsRequired()
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.Property("State")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("VAT")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("ZipCode")
+ .HasColumnType("int");
+
+ b.HasKey("CompanyId");
+
+ b.ToTable("Company");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.ConfigModel", b =>
+ {
+ b.Property("chiave")
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("note")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("valore")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("valoreStd")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("chiave");
+
+ b.ToTable("Config");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorModel", b =>
+ {
+ b.Property("DoorId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorId"), 1L, 1);
+
+ b.Property("DateIns")
+ .HasColumnType("datetime2");
+
+ b.Property("DateLockExpiry")
+ .HasColumnType("datetime2");
+
+ b.Property("DateMod")
+ .HasColumnType("datetime2");
+
+ b.Property("DoorDescript")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DoorExtCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("MeasureUnit")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("OrderId")
+ .HasColumnType("int");
+
+ b.Property("ParentId")
+ .HasColumnType("int");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.Property("UnitCost")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("UserIdIns")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserIdLock")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserIdMod")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("DoorId");
+
+ b.HasIndex("OrderId");
+
+ b.ToTable("Door");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorOpModel", b =>
+ {
+ b.Property("DoorOpId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorOpId"), 1L, 1);
+
+ b.Property("DateIns")
+ .HasColumnType("datetime2");
+
+ b.Property("DateMod")
+ .HasColumnType("datetime2");
+
+ b.Property("Description")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DoorId")
+ .HasColumnType("int");
+
+ b.Property("DtConfirm")
+ .HasColumnType("datetime2");
+
+ b.Property("JsoncActVal")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("JsoncConfigVal")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ObjectId")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserIdIns")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserIdMod")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("userConfirm")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("DoorOpId");
+
+ b.HasIndex("DoorId");
+
+ b.ToTable("DoorOp");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorOpTypeModel", b =>
+ {
+ b.Property("DoorOpTypId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorOpTypId"), 1L, 1);
+
+ b.Property("Description")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DisplayUrl")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ExtDescript")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ExtOpCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("FPath")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("HasHw")
+ .HasColumnType("bit");
+
+ b.Property("HwCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("HwDescription")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("IsConcrete")
+ .HasColumnType("bit");
+
+ b.Property("IsDefault")
+ .HasColumnType("bit");
+
+ b.Property("MaxAllowed")
+ .HasColumnType("int");
+
+ b.Property("OpCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ParentId")
+ .HasColumnType("int");
+
+ b.Property("Rev")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UnitCost")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("ValidFrom")
+ .HasColumnType("datetime2");
+
+ b.Property("ValidUntil")
+ .HasColumnType("datetime2");
+
+ b.HasKey("DoorOpTypId");
+
+ b.ToTable("DoorOpType");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorOpTypeTempModel", b =>
+ {
+ b.Property("DoorOpTypId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorOpTypId"), 1L, 1);
+
+ b.Property("Description")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DisplayUrl")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ExtDescript")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ExtOpCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("FPath")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("HasHw")
+ .HasColumnType("bit");
+
+ b.Property("HwCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("HwDescription")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("IsConcrete")
+ .HasColumnType("bit");
+
+ b.Property("IsDefault")
+ .HasColumnType("bit");
+
+ b.Property("MaxAllowed")
+ .HasColumnType("int");
+
+ b.Property("OpCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ParentDoorOpId")
+ .HasColumnType("int");
+
+ b.Property("Rev")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UnitCost")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("ValidFrom")
+ .HasColumnType("datetime2");
+
+ b.Property("ValidUntil")
+ .HasColumnType("datetime2");
+
+ b.HasKey("DoorOpTypId");
+
+ b.ToTable("DoorOpTypeTemp");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.GraphicParamsModel", b =>
+ {
+ b.Property("GraphicParamId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("GraphicParamId"), 1L, 1);
+
+ b.Property("compoId")
+ .HasColumnType("int");
+
+ b.Property("graphicParamAlias")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("graphicParamDefaultVal")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("graphicParamKey")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("graphicParamName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("graphicParamType")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("graphicParamsN")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("GraphicParamId");
+
+ b.ToTable("GraphicParams");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.HardwareModel", b =>
+ {
+ b.Property("HardwareId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("HardwareId"), 1L, 1);
+
+ b.Property("compoAlias")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("compoLayerName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("compoName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("compoTemplateIsActive")
+ .HasColumnType("bit");
+
+ b.HasKey("HardwareId");
+
+ b.ToTable("Hardware");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.LanguageModel", b =>
+ {
+ b.Property("CodLingua")
+ .HasMaxLength(5)
+ .HasColumnType("nvarchar(5)");
+
+ b.Property("DescrizioneLingua")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.HasKey("CodLingua");
+
+ b.ToTable("Languages");
+
+ b.HasData(
+ new
+ {
+ CodLingua = "EN",
+ DescrizioneLingua = "English"
+ },
+ new
+ {
+ CodLingua = "IT",
+ DescrizioneLingua = "Italiano"
+ });
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.ListValuesModel", b =>
+ {
+ b.Property("TableName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("FieldName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Value")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("DefaultVal")
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("InputType")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Label")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Ordinal")
+ .HasColumnType("int");
+
+ b.Property("isSerializable")
+ .HasMaxLength(5)
+ .HasColumnType("bit");
+
+ b.HasKey("TableName", "FieldName", "Value");
+
+ b.ToTable("ListValues");
+
+ b.HasData(
+ new
+ {
+ TableName = "Opening",
+ FieldName = "Swing",
+ Value = "LH",
+ Label = "Left Handed",
+ Ordinal = 1,
+ isSerializable = false
+ },
+ new
+ {
+ TableName = "Opening",
+ FieldName = "Swing",
+ Value = "RH",
+ Label = "Right Handed",
+ Ordinal = 2,
+ isSerializable = false
+ },
+ new
+ {
+ TableName = "Opening",
+ FieldName = "Swing",
+ Value = "LHR",
+ Label = "Left Handed Reverse",
+ Ordinal = 3,
+ isSerializable = false
+ },
+ new
+ {
+ TableName = "Opening",
+ FieldName = "Swing",
+ Value = "RHR",
+ Label = "Right Handed Reverse",
+ Ordinal = 4,
+ isSerializable = false
+ },
+ new
+ {
+ TableName = "Edges",
+ FieldName = "EdgeType",
+ Value = "BV",
+ Label = "Bevel",
+ Ordinal = 1,
+ isSerializable = false
+ },
+ new
+ {
+ TableName = "Edges",
+ FieldName = "EdgeType",
+ Value = "SQ",
+ Label = "Squared",
+ Ordinal = 2,
+ isSerializable = false
+ },
+ new
+ {
+ TableName = "Edges",
+ FieldName = "EdgeType",
+ Value = "1B",
+ Label = "Bull Nose 1",
+ Ordinal = 3,
+ isSerializable = false
+ });
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.ListValuesTempModel", b =>
+ {
+ b.Property("TableName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("FieldName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Value")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("DefaultVal")
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("InputType")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Label")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Ordinal")
+ .HasColumnType("int");
+
+ b.Property("isSerializable")
+ .HasMaxLength(5)
+ .HasColumnType("bit");
+
+ b.HasKey("TableName", "FieldName", "Value");
+
+ b.ToTable("ListValuesTemp");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.OrderModel", b =>
+ {
+ b.Property("OrderId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("OrderId"), 1L, 1);
+
+ b.Property("CompanyId")
+ .HasColumnType("int");
+
+ b.Property("DateDelivery")
+ .HasColumnType("datetime2");
+
+ b.Property("DateIns")
+ .HasColumnType("datetime2");
+
+ b.Property("DateMod")
+ .HasColumnType("datetime2");
+
+ b.Property("Discount")
+ .HasColumnType("float");
+
+ b.Property("OrderDescript")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("OrderExtCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Status")
+ .HasColumnType("int");
+
+ b.Property("UserIdIns")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserIdMod")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("OrderId");
+
+ b.HasIndex("CompanyId");
+
+ b.ToTable("Order");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.OrderStatusViewModel", b =>
+ {
+ b.Property("OrderId")
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("OrderId"), 1L, 1);
+
+ b.Property("CompanyId")
+ .HasColumnType("int");
+
+ b.Property("DateDelivery")
+ .HasColumnType("datetime2");
+
+ b.Property("DateIns")
+ .HasColumnType("datetime2");
+
+ b.Property("Discount")
+ .HasColumnType("float");
+
+ b.Property("NumDoors")
+ .HasColumnType("int");
+
+ b.Property("NumType")
+ .HasColumnType("int");
+
+ b.Property("OrderDescript")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("OrderExtCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("OrderStatus")
+ .HasColumnType("int");
+
+ b.Property("TotCost")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("UserIdIns")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserIdMod")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("OrderId");
+
+ b.ToView("v_OrderStatus");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.PrtRepOrderModel", b =>
+ {
+ b.Property("OrderId")
+ .HasColumnType("int");
+
+ b.Property("DoorId")
+ .HasColumnType("int");
+
+ b.Property("ObjectKey")
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("Address")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("City")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("CompanyExtCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("CompanyId")
+ .HasColumnType("int");
+
+ b.Property("CompanyName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DateIns")
+ .HasColumnType("datetime2");
+
+ b.Property("DateMod")
+ .HasColumnType("datetime2");
+
+ b.Property("DoorDescript")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DoorExtCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("MeasureUnit")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ObjectQty")
+ .HasColumnType("int");
+
+ b.Property("ObjectType")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ObjectVal")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("OrderDescript")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("OrderExtCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ParentId")
+ .HasColumnType("int");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.Property("State")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Status")
+ .HasColumnType("int");
+
+ b.Property("UnitCost")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("UserIdIns")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserIdMod")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("VAT")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ZipCode")
+ .HasColumnType("int");
+
+ b.HasKey("OrderId", "DoorId", "ObjectKey");
+
+ b.ToView("v_PrtReport");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.SerializedDoorsModel", b =>
+ {
+ b.Property("DoorTmpId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorTmpId"), 1L, 1);
+
+ b.Property("DoorSerVal")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Lock")
+ .HasColumnType("bit");
+
+ b.HasKey("DoorTmpId");
+
+ b.ToTable("SerializedDoors");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.UsersViewModel", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("RoleId")
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("ClaimId")
+ .HasColumnType("int");
+
+ b.Property("ClaimType")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ClaimValue")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("RoleName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("UserId", "RoleId", "ClaimId");
+
+ b.ToView("v_UserRolesClaims");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.VocabularyModel", b =>
+ {
+ b.Property("Lingua")
+ .HasMaxLength(5)
+ .HasColumnType("nvarchar(5)");
+
+ b.Property("Lemma")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Traduzione")
+ .IsRequired()
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.HasKey("Lingua", "Lemma");
+
+ b.ToTable("Vocabulary");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.VocabularyTempModel", b =>
+ {
+ b.Property("Lingua")
+ .HasMaxLength(5)
+ .HasColumnType("nvarchar(5)");
+
+ b.Property("Lemma")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Traduzione")
+ .IsRequired()
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.HasKey("Lingua", "Lemma");
+
+ b.ToTable("VocabularyTemp");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetUserRoles", b =>
+ {
+ b.HasOne("WebDoorCreator.Data.DbModels.AspNetRoles", "RolesNav")
+ .WithMany()
+ .HasForeignKey("RoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("WebDoorCreator.Data.DbModels.AspNetUsers", "UsersNav")
+ .WithMany()
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("RolesNav");
+
+ b.Navigation("UsersNav");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorModel", b =>
+ {
+ b.HasOne("WebDoorCreator.Data.DbModels.OrderModel", "OrderNav")
+ .WithMany()
+ .HasForeignKey("OrderId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("OrderNav");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorOpModel", b =>
+ {
+ b.HasOne("WebDoorCreator.Data.DbModels.DoorModel", "DoorNav")
+ .WithMany()
+ .HasForeignKey("DoorId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("DoorNav");
+ });
+
+ modelBuilder.Entity("WebDoorCreator.Data.DbModels.OrderModel", b =>
+ {
+ b.HasOne("WebDoorCreator.Data.DbModels.CompanyModel", "CompanyNav")
+ .WithMany()
+ .HasForeignKey("CompanyId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("CompanyNav");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/WebDoorCreator.Data/Migrations/WDCData/20230606081147_repFixTypeId.cs b/WebDoorCreator.Data/Migrations/WDCData/20230606081147_repFixTypeId.cs
new file mode 100644
index 0000000..fb215e8
--- /dev/null
+++ b/WebDoorCreator.Data/Migrations/WDCData/20230606081147_repFixTypeId.cs
@@ -0,0 +1,76 @@
+using System;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace WebDoorCreator.Data.Migrations.WDCData
+{
+ public partial class repFixTypeId : Migration
+ {
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropTable(
+ name: "DbSetPrtRepOrder");
+
+ migrationBuilder.RenameColumn(
+ name: "ParentDoorOpId",
+ table: "DoorOpType",
+ newName: "ParentId");
+
+ migrationBuilder.RenameColumn(
+ name: "DoorIdParent",
+ table: "Door",
+ newName: "ParentId");
+ }
+
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.RenameColumn(
+ name: "ParentId",
+ table: "DoorOpType",
+ newName: "ParentDoorOpId");
+
+ migrationBuilder.RenameColumn(
+ name: "ParentId",
+ table: "Door",
+ newName: "DoorIdParent");
+
+ migrationBuilder.CreateTable(
+ name: "DbSetPrtRepOrder",
+ columns: table => new
+ {
+ OrderId = table.Column(type: "int", nullable: false),
+ DoorId = table.Column(type: "int", nullable: false),
+ ObjectKey = table.Column(type: "nvarchar(450)", nullable: false),
+ Address = table.Column(type: "nvarchar(max)", nullable: false),
+ City = table.Column(type: "nvarchar(max)", nullable: false),
+ CompanyExtCode = table.Column(type: "nvarchar(max)", nullable: false),
+ CompanyId = table.Column(type: "int", nullable: false),
+ CompanyName = table.Column(type: "nvarchar(max)", nullable: false),
+ DateIns = table.Column(type: "datetime2", nullable: false),
+ DateMod = table.Column(type: "datetime2", nullable: false),
+ DoorDescript = table.Column(type: "nvarchar(max)", nullable: false),
+ DoorExtCode = table.Column(type: "nvarchar(max)", nullable: false),
+ MeasureUnit = table.Column(type: "nvarchar(max)", nullable: false),
+ ObjectQty = table.Column(type: "int", nullable: false),
+ ObjectType = table.Column(type: "nvarchar(max)", nullable: false),
+ ObjectVal = table.Column(type: "nvarchar(max)", nullable: false),
+ OrderDescript = table.Column(type: "nvarchar(max)", nullable: false),
+ OrderExtCode = table.Column(type: "nvarchar(max)", nullable: false),
+ Quantity = table.Column(type: "int", nullable: false),
+ State = table.Column(type: "nvarchar(max)", nullable: false),
+ Status = table.Column(type: "int", nullable: false),
+ TypeId = table.Column(type: "int", nullable: false),
+ UnitCost = table.Column(type: "decimal(18,2)", nullable: false),
+ UserIdIns = table.Column(type: "nvarchar(max)", nullable: false),
+ UserIdMod = table.Column(type: "nvarchar(max)", nullable: false),
+ VAT = table.Column(type: "nvarchar(max)", nullable: false),
+ ZipCode = table.Column(type: "int", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_DbSetPrtRepOrder", x => new { x.OrderId, x.DoorId, x.ObjectKey });
+ });
+ }
+ }
+}
diff --git a/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs b/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs
index 501fe3c..a5e540e 100644
--- a/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs
+++ b/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs
@@ -224,9 +224,6 @@ namespace WebDoorCreator.Data.Migrations.WDCData
.IsRequired()
.HasColumnType("nvarchar(max)");
- b.Property("DoorIdParent")
- .HasColumnType("int");
-
b.Property("MeasureUnit")
.IsRequired()
.HasColumnType("nvarchar(max)");
@@ -234,6 +231,9 @@ namespace WebDoorCreator.Data.Migrations.WDCData
b.Property("OrderId")
.HasColumnType("int");
+ b.Property("ParentId")
+ .HasColumnType("int");
+
b.Property("Quantity")
.HasColumnType("int");
@@ -366,7 +366,7 @@ namespace WebDoorCreator.Data.Migrations.WDCData
.IsRequired()
.HasColumnType("nvarchar(max)");
- b.Property("ParentDoorOpId")
+ b.Property("ParentId")
.HasColumnType("int");
b.Property("Rev")
@@ -865,6 +865,9 @@ namespace WebDoorCreator.Data.Migrations.WDCData
.IsRequired()
.HasColumnType("nvarchar(max)");
+ b.Property("ParentId")
+ .HasColumnType("int");
+
b.Property("Quantity")
.HasColumnType("int");
@@ -875,9 +878,6 @@ namespace WebDoorCreator.Data.Migrations.WDCData
b.Property("Status")
.HasColumnType("int");
- b.Property("TypeId")
- .HasColumnType("int");
-
b.Property("UnitCost")
.HasColumnType("decimal(18,2)");
@@ -898,7 +898,7 @@ namespace WebDoorCreator.Data.Migrations.WDCData
b.HasKey("OrderId", "DoorId", "ObjectKey");
- b.ToTable("DbSetPrtRepOrder");
+ b.ToView("v_PrtReport");
});
modelBuilder.Entity("WebDoorCreator.Data.DbModels.SerializedDoorsModel", b =>
diff --git a/WebDoorCreator.Data/Services/WebDoorCreatorService.cs b/WebDoorCreator.Data/Services/WebDoorCreatorService.cs
index 471444f..85e7837 100644
--- a/WebDoorCreator.Data/Services/WebDoorCreatorService.cs
+++ b/WebDoorCreator.Data/Services/WebDoorCreatorService.cs
@@ -648,7 +648,7 @@ namespace WebDoorCreator.Data.Services
DoorExtCode = $"ORD {idOrd} | Ext Code --",
Quantity = 1,
UnitCost = 0,
- DoorIdParent = 1
+ ParentId = 1
};
// chiamo metodo x insert...
var doorId = await DoorInsert(newDoor);
@@ -995,7 +995,7 @@ namespace WebDoorCreator.Data.Services
var doorToAdd = CurrDoor.ObjClone(userName);
// imposto dati per la porta...
doorToAdd.OrderId = orderId;
- doorToAdd.DoorIdParent = isClone ? CurrDoor.DoorId : 1;
+ doorToAdd.ParentId = isClone ? CurrDoor.DoorId : 1;
doorToAdd.Quantity = 1;
doorToAdd.DoorExtCode = doorCode;
doorToAdd.DoorDescript = doorDescr;
diff --git a/WebDoorCreator.Data/SqlScripts/Stored/stp_prt_OrderReportExpl.sql b/WebDoorCreator.Data/SqlScripts/Stored/stp_prt_OrderReportExpl.sql
index a8e568a..bdaadad 100644
--- a/WebDoorCreator.Data/SqlScripts/Stored/stp_prt_OrderReportExpl.sql
+++ b/WebDoorCreator.Data/SqlScripts/Stored/stp_prt_OrderReportExpl.sql
@@ -1,14 +1,14 @@
SET ANSI_NULLS ON
GO
-
SET QUOTED_IDENTIFIER ON
GO
+
-- =============================================
-- Author: S.E.L.
-- Description: Door Order Report data exploded by OrderId
-- Create date: 2023.05.22
-- =============================================
-CREATE PROCEDURE [dbo].[stp_prt_OrderReportExpl]
+ALTER PROCEDURE [dbo].[stp_prt_OrderReportExpl]
(
@OrderId INT = 0
)
@@ -18,58 +18,61 @@ BEGIN
SET NOCOUNT ON;
-- Insert statements for procedure here
- SELECT
- ORD.OrderId,
- ORD.CompanyId,
- ORD.OrderExtCode,
- ORD.DateIns,
- ORD.UserIdIns,
- ORD.DateMod,
- ORD.UserIdMod,
- ORD.Status,
- ORD.OrderDescript,
- COM.CompanyExtCode,
- COM.CompanyName,
- COM.Address,
- COM.ZipCode,
- COM.City,
- COM.State,
- COM.VAT,
- DOR.DoorId,
- ROW_NUMBER() OVER ( PARTITION BY DOR.DoorId ORDER BY DOR.DoorId) AS RowDoor, -- mi serve per i totoali sul report
- DOR.TypeId,
- DOR.DoorExtCode,
- DOR.DoorDescript,
- DOR.Quantity,
- DOR.UnitCost,
- DOR.MeasureUnit,
- CASE
- WHEN DOP.ObjectId IN ('Profiles','Size','Swing') THEN 'INFO'
- WHEN DOP.ObjectId IN ('Properties','Finishing') THEN 'OPTIONS'
- --WHEN CHARINDEX('template', DOP.JsoncActVal) > 0 THEN 'HARDWARE'
- ELSE 'HARDWARE' END AS ObjectType,
- DOP.ObjectId as ObjectKey,
+ -- spostato in vista x poter gestire meglio creazione e indicizzazione in EFCore
+ SELECT *
+ FROM v_PrtReport
+ WHERE OrderId = @OrderId
+
+ --SELECT
+ -- ORD.OrderId,
+ -- ORD.CompanyId,
+ -- ORD.OrderExtCode,
+ -- ORD.DateIns,
+ -- ORD.UserIdIns,
+ -- ORD.DateMod,
+ -- ORD.UserIdMod,
+ -- ORD.Status,
+ -- ORD.OrderDescript,
+ -- COM.CompanyExtCode,
+ -- COM.CompanyName,
+ -- COM.Address,
+ -- COM.ZipCode,
+ -- COM.City,
+ -- COM.State,
+ -- COM.VAT,
+ -- DOR.DoorId,
+ -- ROW_NUMBER() OVER ( PARTITION BY DOR.DoorId ORDER BY DOR.DoorId) AS RowDoor, -- mi serve per i totoali sul report
+ -- DOR.DoorIdParent,
+ -- DOR.DoorExtCode,
+ -- DOR.DoorDescript,
+ -- DOR.Quantity,
+ -- DOR.UnitCost,
+ -- DOR.MeasureUnit,
+ -- CASE
+ -- WHEN DOP.ObjectId IN ('Profiles','Size','Swing') THEN 'INFO'
+ -- WHEN DOP.ObjectId IN ('Properties','Finishing') THEN 'OPTIONS'
+ -- --WHEN CHARINDEX('template', DOP.JsoncActVal) > 0 THEN 'HARDWARE'
+ -- ELSE 'HARDWARE' END AS ObjectType,
+ -- DOP.ObjectId as ObjectKey,
- CASE
- WHEN DOP.ObjectId = 'Properties' THEN JSON_VALUE(JsoncActVal,'$.Properties.Properties')
- WHEN DOP.ObjectId = 'Finishing' THEN JSON_VALUE(JsoncActVal,'$.Finishing.Finishing')
- WHEN DOP.ObjectId = 'Size' THEN JSON_QUERY(JsoncActVal,'$.Size')
- WHEN DOP.ObjectId = 'Swing' THEN JSON_VALUE(JsoncActVal,'$.Swing.Swing')
- --WHEN DOP.ObjectId = 'Profiles' THEN JSON_QUERY(JsoncActVal,'$.Profiles')
- --WHEN CHARINDEX('template', DOP.JsoncActVal) > 0 THEN 'HARDWARE'
- ELSE DOP.JsoncActVal END AS ObjectVal,
- --DOP.JsoncActVal as ObjectVal,
- 1 as ObjectQty
- FROM
- [Order] AS ORD
- INNER JOIN Company AS COM ON ORD.CompanyId = COM.CompanyId
- INNER JOIN Door AS DOR ON ORD.OrderId = DOR.OrderId
- INNER JOIN DoorOp AS DOP ON DOR.DoorId = DOP.DoorId
- WHERE
- ORD.OrderId = @OrderId
+ -- CASE
+ -- WHEN DOP.ObjectId = 'Properties' THEN JSON_VALUE(JsoncActVal,'$.Properties.Properties')
+ -- WHEN DOP.ObjectId = 'Finishing' THEN JSON_VALUE(JsoncActVal,'$.Finishing.Finishing')
+ -- WHEN DOP.ObjectId = 'Size' THEN JSON_QUERY(JsoncActVal,'$.Size')
+ -- WHEN DOP.ObjectId = 'Swing' THEN JSON_VALUE(JsoncActVal,'$.Swing.Swing')
+ -- --WHEN DOP.ObjectId = 'Profiles' THEN JSON_QUERY(JsoncActVal,'$.Profiles')
+ -- --WHEN CHARINDEX('template', DOP.JsoncActVal) > 0 THEN 'HARDWARE'
+ -- ELSE DOP.JsoncActVal END AS ObjectVal,
+ -- --DOP.JsoncActVal as ObjectVal,
+ -- 1 as ObjectQty
+ --FROM
+ -- [Order] AS ORD
+ -- INNER JOIN Company AS COM ON ORD.CompanyId = COM.CompanyId
+ -- INNER JOIN Door AS DOR ON ORD.OrderId = DOR.OrderId
+ -- INNER JOIN DoorOp AS DOP ON DOR.DoorId = DOP.DoorId
+ --WHERE
+ -- ORD.OrderId = @OrderId
END
-GO
-
diff --git a/WebDoorCreator.Data/SqlScripts/View/PrtReport.sql b/WebDoorCreator.Data/SqlScripts/View/PrtReport.sql
new file mode 100644
index 0000000..61ec5e0
--- /dev/null
+++ b/WebDoorCreator.Data/SqlScripts/View/PrtReport.sql
@@ -0,0 +1,58 @@
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+
+ALTER VIEW [dbo].[v_PrtReport]
+AS
+SELECT
+ ORD.OrderId,
+ ORD.CompanyId,
+ ORD.OrderExtCode,
+ ORD.DateIns,
+ ORD.UserIdIns,
+ ORD.DateMod,
+ ORD.UserIdMod,
+ ORD.Status,
+ ORD.OrderDescript,
+ COM.CompanyExtCode,
+ COM.CompanyName,
+ COM.Address,
+ COM.ZipCode,
+ COM.City,
+ COM.State,
+ COM.VAT,
+ DOR.DoorId,
+ ROW_NUMBER() OVER ( PARTITION BY DOR.DoorId ORDER BY DOR.DoorId) AS RowDoor, -- mi serve per i totoali sul report
+ DOR.DoorIdParent,
+ DOR.DoorExtCode,
+ DOR.DoorDescript,
+ DOR.Quantity,
+ DOR.UnitCost,
+ DOR.MeasureUnit,
+ CASE
+ WHEN DOP.ObjectId IN ('Profiles','Size','Swing') THEN 'INFO'
+ WHEN DOP.ObjectId IN ('Properties','Finishing') THEN 'OPTIONS'
+ --WHEN CHARINDEX('template', DOP.JsoncActVal) > 0 THEN 'HARDWARE'
+ ELSE 'HARDWARE' END AS ObjectType,
+ DOP.ObjectId as ObjectKey,
+
+ CASE
+ WHEN DOP.ObjectId = 'Properties' THEN JSON_VALUE(JsoncActVal,'$.Properties.Properties')
+ WHEN DOP.ObjectId = 'Finishing' THEN JSON_VALUE(JsoncActVal,'$.Finishing.Finishing')
+ WHEN DOP.ObjectId = 'Size' THEN JSON_QUERY(JsoncActVal,'$.Size')
+ WHEN DOP.ObjectId = 'Swing' THEN JSON_VALUE(JsoncActVal,'$.Swing.Swing')
+ --WHEN DOP.ObjectId = 'Profiles' THEN JSON_QUERY(JsoncActVal,'$.Profiles')
+ --WHEN CHARINDEX('template', DOP.JsoncActVal) > 0 THEN 'HARDWARE'
+ ELSE DOP.JsoncActVal END AS ObjectVal,
+ --DOP.JsoncActVal as ObjectVal,
+ 1 as ObjectQty
+ FROM
+ [Order] AS ORD
+ INNER JOIN Company AS COM ON ORD.CompanyId = COM.CompanyId
+ INNER JOIN Door AS DOR ON ORD.OrderId = DOR.OrderId
+ INNER JOIN DoorOp AS DOP ON DOR.DoorId = DOP.DoorId
+GO
+
+
diff --git a/WebDoorCreator.Data/SqlScripts/View/UserView.sql b/WebDoorCreator.Data/SqlScripts/View/UserView - Copy.sql
similarity index 100%
rename from WebDoorCreator.Data/SqlScripts/View/UserView.sql
rename to WebDoorCreator.Data/SqlScripts/View/UserView - Copy.sql
diff --git a/WebDoorCreator.Data/WDCDataContext.cs b/WebDoorCreator.Data/WDCDataContext.cs
index 84a6410..26c9b71 100644
--- a/WebDoorCreator.Data/WDCDataContext.cs
+++ b/WebDoorCreator.Data/WDCDataContext.cs
@@ -135,6 +135,7 @@ namespace WebDoorCreator.Data
// Creazione viste migrate
modelBuilder.Entity().ToView("v_UserRolesClaims");
modelBuilder.Entity().ToView("v_OrderStatus");
+ modelBuilder.Entity().ToView("v_PrtReport");
//modelBuilder.Entity