Spostamento progetto NKC Data
This commit is contained in:
@@ -0,0 +1,295 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using NKC.Data.DbModels;
|
||||
using NKC.Data.DTO;
|
||||
using NLog;
|
||||
|
||||
namespace NKC.Data.Controllers
|
||||
{
|
||||
public class NKCController : IDisposable
|
||||
{
|
||||
#region Private Fields
|
||||
|
||||
private static IConfiguration _configuration = null!;
|
||||
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
|
||||
|
||||
#endregion Private Fields
|
||||
|
||||
#region Public Constructors
|
||||
|
||||
public NKCController(IConfiguration configuration)
|
||||
{
|
||||
_configuration = configuration;
|
||||
}
|
||||
|
||||
#endregion Public Constructors
|
||||
|
||||
#region Public Methods
|
||||
|
||||
public bool DbForceMigrate()
|
||||
{
|
||||
bool answ = false;
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
try
|
||||
{
|
||||
localDbCtx.DbForceMigrate();
|
||||
answ = true;
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Log.Error($"Eccezione in DbForceMigrate{Environment.NewLine}{exc}");
|
||||
}
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
Log.Info("Dispose di NKCController");
|
||||
}
|
||||
|
||||
public List<MaterialDTO> MaterialsGetAll()
|
||||
{
|
||||
List<MaterialDTO> dbResult = new List<MaterialDTO>();
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
dbResult = localDbCtx
|
||||
.DbSetMaterials
|
||||
.Where(x => x.MatID > 0)
|
||||
.Select(x => new MaterialDTO()
|
||||
{
|
||||
MatID = x.MatID,
|
||||
MatExtCode = x.MatExtCode,
|
||||
MatDesc = x.MatDesc,
|
||||
LMm = x.LMm,
|
||||
WMm = x.WMm,
|
||||
TMm = x.TMm,
|
||||
ApprovUser = x.ApprovUser,
|
||||
ApprovDate = x.ApprovDate,
|
||||
NumSize = x.RemnantNav== null?0: x.RemnantNav.Count,
|
||||
TotQty = x.RemnantNav == null ? 0 : x.RemnantNav.Sum(r => r.QtyAvail)
|
||||
}
|
||||
)
|
||||
.ToList();
|
||||
}
|
||||
return dbResult;
|
||||
}
|
||||
|
||||
public List<MovMagModel> MovMagGetFilt(int RemnId, int numShow)
|
||||
{
|
||||
List<MovMagModel> dbResult = new List<MovMagModel>();
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
dbResult = localDbCtx
|
||||
.DbSetMovMag
|
||||
.Where(x => x.RemnID == RemnId)
|
||||
.OrderByDescending(o => o.DtRec)
|
||||
//.Include(m => m.RemnantNav)
|
||||
.Take(numShow)
|
||||
.ToList();
|
||||
}
|
||||
return dbResult;
|
||||
}
|
||||
|
||||
public bool AddPrintJob(string tipoReport, string keyParam, string prtName)
|
||||
{
|
||||
bool done = false;
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
try
|
||||
{
|
||||
DateTime adesso = DateTime.Now;
|
||||
PrintJobQueue newRec = new PrintJobQueue()
|
||||
{
|
||||
TipoReport = tipoReport,
|
||||
KeyParam = keyParam,
|
||||
PrtName = prtName,
|
||||
Stato = 0,
|
||||
DtStart = adesso,
|
||||
DtLastTry = adesso
|
||||
};
|
||||
|
||||
localDbCtx.DbSetPrintJobQueues.Add(newRec);
|
||||
|
||||
localDbCtx.SaveChanges();
|
||||
done = true;
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Log.Error($"Eccezione in AddPrintJob:{Environment.NewLine}{exc}");
|
||||
}
|
||||
}
|
||||
return done;
|
||||
}
|
||||
|
||||
public List<RemnantsModel> RemnantsGetAll()
|
||||
{
|
||||
List<RemnantsModel> dbResult = new List<RemnantsModel>();
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
dbResult = localDbCtx
|
||||
.DbSetRemnants
|
||||
.ToList();
|
||||
}
|
||||
return dbResult;
|
||||
}
|
||||
public RemnantsModel RemnantGetByid(int RemnId)
|
||||
{
|
||||
RemnantsModel? dbResult = new RemnantsModel();
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
dbResult = localDbCtx
|
||||
.DbSetRemnants
|
||||
.Where(x => x.RemnID == RemnId)
|
||||
.Include(m => m.MaterialNav)
|
||||
.FirstOrDefault();
|
||||
}
|
||||
if (dbResult == null)
|
||||
{
|
||||
dbResult = new RemnantsModel();
|
||||
}
|
||||
return dbResult;
|
||||
}
|
||||
|
||||
public List<RemnantsModel> RemnantsGetFilt(int matId, int minQty)
|
||||
{
|
||||
List<RemnantsModel> dbResult = new List<RemnantsModel>();
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
dbResult = localDbCtx
|
||||
.DbSetRemnants
|
||||
.Where(x => (x.MatID == matId || matId == 0) && (x.QtyAvail >= minQty || minQty == 0))
|
||||
//.OrderBy(o => o.Area)
|
||||
.Include(m => m.MaterialNav)
|
||||
.ToList();
|
||||
}
|
||||
return dbResult;
|
||||
}
|
||||
|
||||
public RemnantsModel RemnantGetByQr(string QrCode)
|
||||
{
|
||||
RemnantsModel? dbResult = new RemnantsModel();
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
var rawList = localDbCtx
|
||||
.DbSetRemnants
|
||||
.Include(m => m.MaterialNav)
|
||||
.ToList();
|
||||
|
||||
dbResult = rawList
|
||||
.Where(x => x.RemDtmx == QrCode)
|
||||
.FirstOrDefault();
|
||||
}
|
||||
if (dbResult == null)
|
||||
{
|
||||
dbResult = new RemnantsModel();
|
||||
}
|
||||
return dbResult;
|
||||
}
|
||||
|
||||
public bool RemnantsUpsert(RemnantsModel updItem, string userId)
|
||||
{
|
||||
bool done = false;
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
RemnantsModel? currData = localDbCtx
|
||||
.DbSetRemnants
|
||||
.Where(x => x.RemnID == updItem.RemnID)
|
||||
.FirstOrDefault();
|
||||
if (currData != null)
|
||||
{
|
||||
// aggiungo record variazione quantità...
|
||||
int delta = updItem.QtyAvail - currData.QtyAvail;
|
||||
if (delta != 0)
|
||||
{
|
||||
MovMagModel recMovMag = new MovMagModel()
|
||||
{
|
||||
DtRec = DateTime.Now,
|
||||
RemnID = updItem.RemnID,
|
||||
QtyRec = delta,
|
||||
UserId = userId
|
||||
};
|
||||
localDbCtx.DbSetMovMag.Add(recMovMag);
|
||||
}
|
||||
|
||||
// aggiorno valori
|
||||
currData.MatID = updItem.MatID;
|
||||
currData.DtMod = updItem.DtMod;
|
||||
currData.Location = updItem.Location;
|
||||
currData.Note = updItem.Note;
|
||||
currData.QtyAvail = updItem.QtyAvail;
|
||||
currData.LMm = updItem.LMm;
|
||||
currData.WMm = updItem.WMm;
|
||||
currData.TMm = updItem.TMm;
|
||||
localDbCtx.Entry(currData).State = EntityState.Modified;
|
||||
}
|
||||
else
|
||||
{
|
||||
// aggiungo record variazione quantità...
|
||||
MovMagModel recMovMag = new MovMagModel()
|
||||
{
|
||||
DtRec = DateTime.Now,
|
||||
RemnID = updItem.RemnID,
|
||||
QtyRec = updItem.QtyAvail
|
||||
};
|
||||
localDbCtx.DbSetMovMag.Add(recMovMag);
|
||||
|
||||
// aggiungo record puntuale
|
||||
currData = new RemnantsModel()
|
||||
{
|
||||
MatID = updItem.MatID,
|
||||
DtMod = updItem.DtMod,
|
||||
Location = updItem.Location,
|
||||
Note = updItem.Note,
|
||||
QtyAvail = updItem.QtyAvail,
|
||||
LMm = updItem.LMm,
|
||||
WMm = updItem.WMm,
|
||||
TMm = updItem.TMm
|
||||
};
|
||||
localDbCtx
|
||||
.DbSetRemnants
|
||||
.Add(currData);
|
||||
}
|
||||
localDbCtx.SaveChanges();
|
||||
done = true;
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Log.Error($"Eccezione in PlantUpdate:{Environment.NewLine}{exc}");
|
||||
}
|
||||
}
|
||||
return done;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Annulla modifiche su una specifica entity (cancel update)
|
||||
/// </summary>
|
||||
/// <param name="item"></param>
|
||||
/// <returns></returns>
|
||||
public bool rollBackEntity(object item)
|
||||
{
|
||||
bool answ = false;
|
||||
using (NKCContext localDbCtx = new NKCContext(_configuration))
|
||||
{
|
||||
try
|
||||
{
|
||||
if (localDbCtx.Entry(item).State == EntityState.Deleted || localDbCtx.Entry(item).State == EntityState.Modified)
|
||||
{
|
||||
localDbCtx.Entry(item).Reload();
|
||||
}
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Log.Error($"Eccezione in rollBackEntity{Environment.NewLine}{exc}");
|
||||
}
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace NKC.Data.DTO
|
||||
{
|
||||
|
||||
// <Auto-Generated>
|
||||
// This is here so CodeMaid doesn't reorganize this document
|
||||
// </Auto-Generated>
|
||||
public class MaterialDTO
|
||||
|
||||
{
|
||||
public int MatID { get; set; }
|
||||
|
||||
public int MatExtCode { get; set; } = 0;
|
||||
public string MatDesc { get; set; } = "";
|
||||
public DateTime ApprovDate { get; set; } = DateTime.Now.AddYears(10);
|
||||
public string ApprovUser { get; set; } = "";
|
||||
public decimal LMm { get; set; } = 0;
|
||||
public decimal WMm { get; set; } = 0;
|
||||
public decimal TMm { get; set; } = 0;
|
||||
|
||||
public string MatDtmx
|
||||
{
|
||||
get => $"MT{MatExtCode:00000000}";
|
||||
}
|
||||
|
||||
public decimal LIn
|
||||
{
|
||||
get => Math.Round(LMm / (decimal)25.4, 3);
|
||||
}
|
||||
public decimal WIn
|
||||
{
|
||||
get => Math.Round(WMm / (decimal)25.4, 3);
|
||||
}
|
||||
public decimal TIn
|
||||
{
|
||||
get => Math.Round(TMm / (decimal)25.4, 3);
|
||||
}
|
||||
|
||||
public int NumSize { get; set; } = 0;
|
||||
public int TotQty { get; set; } = 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace NKC.Data.DTO
|
||||
{
|
||||
public class RemnantDTO
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace NKC.Data.DbModels
|
||||
{
|
||||
// <Auto-Generated>
|
||||
// This is here so CodeMaid doesn't reorganize this document
|
||||
// </Auto-Generated>
|
||||
[Table("Materials")]
|
||||
public partial class MaterialModel
|
||||
{
|
||||
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int MatID { get; set; }
|
||||
|
||||
public int MatExtCode { get; set; } = 0;
|
||||
public string MatDesc { get; set; } = "";
|
||||
public DateTime ApprovDate { get; set; } = DateTime.Now.AddYears(10);
|
||||
public string ApprovUser { get; set; } = "";
|
||||
public decimal LMm { get; set; } = 0;
|
||||
public decimal WMm { get; set; }=0;
|
||||
public decimal TMm { get; set; }=0;
|
||||
|
||||
[NotMapped]
|
||||
public string MatDtmx {
|
||||
get => $"MT{MatExtCode:00000000}";
|
||||
}
|
||||
|
||||
|
||||
public virtual ICollection<RemnantsModel>? RemnantNav { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace NKC.Data.DbModels
|
||||
{
|
||||
// <Auto-Generated>
|
||||
// This is here so CodeMaid doesn't reorganize this document
|
||||
// </Auto-Generated>
|
||||
//[Index(nameof(Installazione), nameof(Active), nameof(DiskStatus))]
|
||||
[Table("MovMag")]
|
||||
public partial class MovMagModel
|
||||
{
|
||||
/// <summary>
|
||||
/// Primary Key AUTO
|
||||
/// </summary>
|
||||
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int MovID { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// DateTime record
|
||||
/// </summary>
|
||||
public DateTime DtRec { get; set; } = DateTime.Now;
|
||||
|
||||
/// <summary>
|
||||
/// Ext ref for Remnants
|
||||
/// </summary>
|
||||
public int RemnID { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Qty recorded (delta +/-)
|
||||
/// </summary>
|
||||
public int QtyRec { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// User modificatore
|
||||
/// </summary>
|
||||
public string UserId { get; set; } = "";
|
||||
|
||||
/// <summary>
|
||||
/// Navigation property to Remnant
|
||||
/// </summary>
|
||||
[ForeignKey("RemnID")]
|
||||
public virtual RemnantsModel? RemnantNav { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace NKC.Data.DbModels
|
||||
{
|
||||
|
||||
// <Auto-Generated>
|
||||
// This is here so CodeMaid doesn't reorganize this document
|
||||
// </Auto-Generated>
|
||||
[Table("PrintJobQueue")]
|
||||
public partial class PrintJobQueue
|
||||
{
|
||||
public int IdxPrintJob { get; set; }
|
||||
public string TipoReport { get; set; } = null!;
|
||||
public string KeyParam { get; set; } = null!;
|
||||
public string PrtName { get; set; } = null!;
|
||||
public DateTime DtStart { get; set; }
|
||||
public DateTime? DtEnd { get; set; }
|
||||
public int Stato { get; set; }
|
||||
public DateTime? DtLastTry { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace NKC.Data.DbModels
|
||||
{
|
||||
// <Auto-Generated>
|
||||
// This is here so CodeMaid doesn't reorganize this document
|
||||
// </Auto-Generated>
|
||||
//[Index(nameof(Installazione), nameof(Active), nameof(DiskStatus))]
|
||||
[Table("RemnantsList")]
|
||||
public partial class RemnantsModel
|
||||
{
|
||||
/// <summary>
|
||||
/// Primary Key AUTO
|
||||
/// </summary>
|
||||
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int RemnID { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Ext ref for Material
|
||||
/// </summary>
|
||||
public int MatID { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Location
|
||||
/// </summary>
|
||||
public string Location { get; set; } = "";
|
||||
/// <summary>
|
||||
/// Qty available on wharehouse
|
||||
/// </summary>
|
||||
public int QtyAvail { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// DateTime last modification
|
||||
/// </summary>
|
||||
public DateTime DtMod { get; set; } = DateTime.Now.AddYears(10);
|
||||
|
||||
/// <summary>
|
||||
/// Remnant's Lenght
|
||||
/// </summary>
|
||||
public decimal LMm { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Remnant's Width
|
||||
/// </summary>
|
||||
public decimal WMm { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Remnant's Thikness
|
||||
/// </summary>
|
||||
public decimal TMm { get; set; } = 0;
|
||||
|
||||
[NotMapped]
|
||||
public decimal LIn
|
||||
{
|
||||
get => Math.Round(LMm / (decimal)25.4, 3);
|
||||
}
|
||||
[NotMapped]
|
||||
public decimal WIn
|
||||
{
|
||||
get => Math.Round(WMm / (decimal)25.4, 3);
|
||||
}
|
||||
[NotMapped]
|
||||
public decimal TIn
|
||||
{
|
||||
get => Math.Round(TMm / (decimal)25.4, 3);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Note (optional)
|
||||
/// </summary>
|
||||
public string Note { get; set; } = "";
|
||||
|
||||
[NotMapped]
|
||||
public decimal Area
|
||||
{
|
||||
get => LMm * WMm;
|
||||
}
|
||||
|
||||
|
||||
[NotMapped]
|
||||
public string RemDtmx
|
||||
{
|
||||
get
|
||||
{
|
||||
string answ = $"MT99999999-{LMm * 1000:00000000}";
|
||||
if (MaterialNav != null)
|
||||
{
|
||||
answ = $"MT{MaterialNav.MatExtCode:00000000}-{LMm * 1000:00000000}";
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Navigation property to Material
|
||||
/// </summary>
|
||||
[ForeignKey("MatID")]
|
||||
public virtual MaterialModel MaterialNav { get; set; } = null!;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace NKC.Data
|
||||
{
|
||||
public class Enum
|
||||
{
|
||||
#region Public Enums
|
||||
|
||||
public enum RemnState
|
||||
{
|
||||
/// <summary>
|
||||
/// Non definito
|
||||
/// </summary>
|
||||
ND = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Selezionato x operazioni (veto interfaccia ad altri usi)
|
||||
/// </summary>
|
||||
Selected
|
||||
}
|
||||
|
||||
#endregion Public Enums
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
// <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 NKC.Data;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
[DbContext(typeof(NKCContext))]
|
||||
[Migration("20211118172800_InitDb")]
|
||||
partial class InitDb
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "6.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
||||
|
||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Property<int>("MatID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MatID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("ApprovDate")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("datetime")
|
||||
.HasDefaultValueSql("(getdate())");
|
||||
|
||||
b.Property<string>("ApprovUser")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(50)
|
||||
.HasColumnType("nvarchar(50)")
|
||||
.HasDefaultValueSql("('')");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("L_mm");
|
||||
|
||||
b.Property<string>("MatDesc")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(500)
|
||||
.HasColumnType("nvarchar(500)")
|
||||
.HasDefaultValueSql("('')")
|
||||
.HasComment("Description");
|
||||
|
||||
b.Property<int>("MatExtCode")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("T_mm");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("W_mm");
|
||||
|
||||
b.HasKey("MatID");
|
||||
|
||||
b.HasIndex(new[] { "MatExtCode" }, "Idx_Materials_MatExtCode_Unique")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("Materials");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
public partial class InitDb : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "Materials",
|
||||
columns: table => new
|
||||
{
|
||||
MatID = table.Column<int>(type: "int", nullable: false)
|
||||
.Annotation("SqlServer:Identity", "1, 1"),
|
||||
MatExtCode = table.Column<int>(type: "int", nullable: false),
|
||||
MatDesc = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: false, defaultValueSql: "('')", comment: "Description"),
|
||||
ApprovDate = table.Column<DateTime>(type: "datetime", nullable: false, defaultValueSql: "(getdate())"),
|
||||
ApprovUser = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false, defaultValueSql: "('')"),
|
||||
L_mm = table.Column<decimal>(type: "decimal(18,3)", nullable: false),
|
||||
W_mm = table.Column<decimal>(type: "decimal(18,3)", nullable: false),
|
||||
T_mm = table.Column<decimal>(type: "decimal(18,3)", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_Materials", x => x.MatID);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "Idx_Materials_MatExtCode_Unique",
|
||||
table: "Materials",
|
||||
column: "MatExtCode",
|
||||
unique: true);
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "Materials");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
// <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 NKC.Data;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
[DbContext(typeof(NKCContext))]
|
||||
[Migration("20211118173720_AddRemnantsTable")]
|
||||
partial class AddRemnantsTable
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "6.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
||||
|
||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Property<int>("MatID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MatID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("ApprovDate")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("datetime")
|
||||
.HasDefaultValueSql("(getdate())");
|
||||
|
||||
b.Property<string>("ApprovUser")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(50)
|
||||
.HasColumnType("nvarchar(50)")
|
||||
.HasDefaultValueSql("('')");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("L_mm");
|
||||
|
||||
b.Property<string>("MatDesc")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(500)
|
||||
.HasColumnType("nvarchar(500)")
|
||||
.HasDefaultValueSql("('')")
|
||||
.HasComment("Description");
|
||||
|
||||
b.Property<int>("MatExtCode")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("T_mm");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("W_mm");
|
||||
|
||||
b.HasKey("MatID");
|
||||
|
||||
b.HasIndex(new[] { "MatExtCode" }, "Idx_Materials_MatExtCode_Unique")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("Materials");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.Property<int>("RemnID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("RemnID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("DtMod")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("MatID")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("Note")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("QtyAvail")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.HasKey("RemnID");
|
||||
|
||||
b.HasIndex("MatID");
|
||||
|
||||
b.ToTable("RemnantsList");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.HasOne("NKC.Data.DbModels.MaterialModel", "MaterialNav")
|
||||
.WithMany()
|
||||
.HasForeignKey("MatID")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("MaterialNav");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
public partial class AddRemnantsTable : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "RemnantsList",
|
||||
columns: table => new
|
||||
{
|
||||
RemnID = table.Column<int>(type: "int", nullable: false)
|
||||
.Annotation("SqlServer:Identity", "1, 1"),
|
||||
MatID = table.Column<int>(type: "int", nullable: false),
|
||||
Location = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||
QtyAvail = table.Column<int>(type: "int", nullable: false),
|
||||
DtMod = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||
LMm = table.Column<decimal>(type: "decimal(18,3)", nullable: false),
|
||||
WMm = table.Column<decimal>(type: "decimal(18,3)", nullable: false),
|
||||
TMm = table.Column<decimal>(type: "decimal(18,3)", nullable: false),
|
||||
Note = table.Column<string>(type: "nvarchar(max)", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_RemnantsList", x => x.RemnID);
|
||||
table.ForeignKey(
|
||||
name: "FK_RemnantsList_Materials_MatID",
|
||||
column: x => x.MatID,
|
||||
principalTable: "Materials",
|
||||
principalColumn: "MatID",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_RemnantsList_MatID",
|
||||
table: "RemnantsList",
|
||||
column: "MatID");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "RemnantsList");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,172 @@
|
||||
// <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 NKC.Data;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
[DbContext(typeof(NKCContext))]
|
||||
[Migration("20211119182450_AddMovMagTable")]
|
||||
partial class AddMovMagTable
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "6.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
||||
|
||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Property<int>("MatID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MatID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("ApprovDate")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("datetime")
|
||||
.HasDefaultValueSql("(getdate())");
|
||||
|
||||
b.Property<string>("ApprovUser")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(50)
|
||||
.HasColumnType("nvarchar(50)")
|
||||
.HasDefaultValueSql("('')");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("L_mm");
|
||||
|
||||
b.Property<string>("MatDesc")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(500)
|
||||
.HasColumnType("nvarchar(500)")
|
||||
.HasDefaultValueSql("('')")
|
||||
.HasComment("Description");
|
||||
|
||||
b.Property<int>("MatExtCode")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("T_mm");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("W_mm");
|
||||
|
||||
b.HasKey("MatID");
|
||||
|
||||
b.HasIndex(new[] { "MatExtCode" }, "Idx_Materials_MatExtCode_Unique")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("Materials");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MovMagModel", b =>
|
||||
{
|
||||
b.Property<int>("MovID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MovID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("DtRec")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<int>("QtyRec")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<int>("RemnID")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.HasKey("MovID");
|
||||
|
||||
b.HasIndex("RemnID");
|
||||
|
||||
b.ToTable("MovMag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.Property<int>("RemnID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("RemnID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("DtMod")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("MatID")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("Note")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("QtyAvail")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.HasKey("RemnID");
|
||||
|
||||
b.HasIndex("MatID");
|
||||
|
||||
b.ToTable("RemnantsList");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MovMagModel", b =>
|
||||
{
|
||||
b.HasOne("NKC.Data.DbModels.RemnantsModel", "RemnantNav")
|
||||
.WithMany()
|
||||
.HasForeignKey("RemnID")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("RemnantNav");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.HasOne("NKC.Data.DbModels.MaterialModel", "MaterialNav")
|
||||
.WithMany("RemnantNav")
|
||||
.HasForeignKey("MatID")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("MaterialNav");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Navigation("RemnantNav");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
public partial class AddMovMagTable : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "MovMag",
|
||||
columns: table => new
|
||||
{
|
||||
MovID = table.Column<int>(type: "int", nullable: false)
|
||||
.Annotation("SqlServer:Identity", "1, 1"),
|
||||
DtRec = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||
RemnID = table.Column<int>(type: "int", nullable: false),
|
||||
QtyRec = table.Column<int>(type: "int", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_MovMag", x => x.MovID);
|
||||
table.ForeignKey(
|
||||
name: "FK_MovMag_RemnantsList_RemnID",
|
||||
column: x => x.RemnID,
|
||||
principalTable: "RemnantsList",
|
||||
principalColumn: "RemnID",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_MovMag_RemnID",
|
||||
table: "MovMag",
|
||||
column: "RemnID");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "MovMag");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,176 @@
|
||||
// <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 NKC.Data;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
[DbContext(typeof(NKCContext))]
|
||||
[Migration("20211120074650_MovMagAddUserId")]
|
||||
partial class MovMagAddUserId
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "6.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
||||
|
||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Property<int>("MatID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MatID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("ApprovDate")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("datetime")
|
||||
.HasDefaultValueSql("(getdate())");
|
||||
|
||||
b.Property<string>("ApprovUser")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(50)
|
||||
.HasColumnType("nvarchar(50)")
|
||||
.HasDefaultValueSql("('')");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("L_mm");
|
||||
|
||||
b.Property<string>("MatDesc")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(500)
|
||||
.HasColumnType("nvarchar(500)")
|
||||
.HasDefaultValueSql("('')")
|
||||
.HasComment("Description");
|
||||
|
||||
b.Property<int>("MatExtCode")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("T_mm");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("W_mm");
|
||||
|
||||
b.HasKey("MatID");
|
||||
|
||||
b.HasIndex(new[] { "MatExtCode" }, "Idx_Materials_MatExtCode_Unique")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("Materials");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MovMagModel", b =>
|
||||
{
|
||||
b.Property<int>("MovID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MovID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("DtRec")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<int>("QtyRec")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<int>("RemnID")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.HasKey("MovID");
|
||||
|
||||
b.HasIndex("RemnID");
|
||||
|
||||
b.ToTable("MovMag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.Property<int>("RemnID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("RemnID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("DtMod")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("MatID")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("Note")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("QtyAvail")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.HasKey("RemnID");
|
||||
|
||||
b.HasIndex("MatID");
|
||||
|
||||
b.ToTable("RemnantsList");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MovMagModel", b =>
|
||||
{
|
||||
b.HasOne("NKC.Data.DbModels.RemnantsModel", "RemnantNav")
|
||||
.WithMany()
|
||||
.HasForeignKey("RemnID")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("RemnantNav");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.HasOne("NKC.Data.DbModels.MaterialModel", "MaterialNav")
|
||||
.WithMany("RemnantNav")
|
||||
.HasForeignKey("MatID")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("MaterialNav");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Navigation("RemnantNav");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
public partial class MovMagAddUserId : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "UserId",
|
||||
table: "MovMag",
|
||||
type: "nvarchar(max)",
|
||||
nullable: false,
|
||||
defaultValue: "");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "UserId",
|
||||
table: "MovMag");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,174 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using NKC.Data;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace NKC.Data.Migrations
|
||||
{
|
||||
[DbContext(typeof(NKCContext))]
|
||||
partial class NKCContextModelSnapshot : ModelSnapshot
|
||||
{
|
||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "6.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
||||
|
||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Property<int>("MatID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MatID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("ApprovDate")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("datetime")
|
||||
.HasDefaultValueSql("(getdate())");
|
||||
|
||||
b.Property<string>("ApprovUser")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(50)
|
||||
.HasColumnType("nvarchar(50)")
|
||||
.HasDefaultValueSql("('')");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("L_mm");
|
||||
|
||||
b.Property<string>("MatDesc")
|
||||
.IsRequired()
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasMaxLength(500)
|
||||
.HasColumnType("nvarchar(500)")
|
||||
.HasDefaultValueSql("('')")
|
||||
.HasComment("Description");
|
||||
|
||||
b.Property<int>("MatExtCode")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("T_mm");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)")
|
||||
.HasColumnName("W_mm");
|
||||
|
||||
b.HasKey("MatID");
|
||||
|
||||
b.HasIndex(new[] { "MatExtCode" }, "Idx_Materials_MatExtCode_Unique")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("Materials");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MovMagModel", b =>
|
||||
{
|
||||
b.Property<int>("MovID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("MovID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("DtRec")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<int>("QtyRec")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<int>("RemnID")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.HasKey("MovID");
|
||||
|
||||
b.HasIndex("RemnID");
|
||||
|
||||
b.ToTable("MovMag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.Property<int>("RemnID")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("RemnID"), 1L, 1);
|
||||
|
||||
b.Property<DateTime>("DtMod")
|
||||
.HasColumnType("datetime2");
|
||||
|
||||
b.Property<decimal>("LMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("MatID")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<string>("Note")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<int>("QtyAvail")
|
||||
.HasColumnType("int");
|
||||
|
||||
b.Property<decimal>("TMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.Property<decimal>("WMm")
|
||||
.HasColumnType("decimal(18,3)");
|
||||
|
||||
b.HasKey("RemnID");
|
||||
|
||||
b.HasIndex("MatID");
|
||||
|
||||
b.ToTable("RemnantsList");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MovMagModel", b =>
|
||||
{
|
||||
b.HasOne("NKC.Data.DbModels.RemnantsModel", "RemnantNav")
|
||||
.WithMany()
|
||||
.HasForeignKey("RemnID")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("RemnantNav");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.RemnantsModel", b =>
|
||||
{
|
||||
b.HasOne("NKC.Data.DbModels.MaterialModel", "MaterialNav")
|
||||
.WithMany("RemnantNav")
|
||||
.HasForeignKey("MatID")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("MaterialNav");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("NKC.Data.DbModels.MaterialModel", b =>
|
||||
{
|
||||
b.Navigation("RemnantNav");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Migrations\" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.0" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="6.0.0" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.0" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="NLog" Version="4.7.12" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -0,0 +1,164 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using NKC.Data.DbModels;
|
||||
using NLog;
|
||||
|
||||
namespace NKC.Data
|
||||
{
|
||||
public partial class NKCContext : DbContext
|
||||
{
|
||||
#region Private Fields
|
||||
|
||||
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
|
||||
|
||||
private IConfiguration _configuration = null!;
|
||||
|
||||
#endregion Private Fields
|
||||
|
||||
#region Public Constructors
|
||||
|
||||
[Obsolete("This constructor should never be used directly, and is only needed to generate entityframework stuff. Connection string can be adapted as pleased.")]
|
||||
public NKCContext()
|
||||
{
|
||||
}
|
||||
|
||||
public NKCContext(IConfiguration configuration)
|
||||
{
|
||||
_configuration = configuration;
|
||||
}
|
||||
|
||||
public NKCContext(DbContextOptions<NKCContext> options) : base(options)
|
||||
{
|
||||
try
|
||||
{
|
||||
// se non ci fosse... crea o migra!
|
||||
Database.Migrate();
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Log.Error(exc, "Exception during context initialization 02");
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Public Constructors
|
||||
|
||||
#region Public Properties
|
||||
|
||||
public virtual DbSet<MaterialModel> DbSetMaterials { get; set; } = null!;
|
||||
public virtual DbSet<RemnantsModel> DbSetRemnants { get; set; } = null!;
|
||||
public virtual DbSet<MovMagModel> DbSetMovMag { get; set; } = null!;
|
||||
public virtual DbSet<PrintJobQueue> DbSetPrintJobQueues { get; set; } = null!;
|
||||
|
||||
#endregion Public Properties
|
||||
|
||||
#region Private Methods
|
||||
|
||||
partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
|
||||
|
||||
#endregion Private Methods
|
||||
|
||||
#region Protected Methods
|
||||
|
||||
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
||||
{
|
||||
if (!optionsBuilder.IsConfigured)
|
||||
{
|
||||
string connString = _configuration.GetConnectionString("NKC.DB");
|
||||
if (!string.IsNullOrEmpty(connString))
|
||||
{
|
||||
optionsBuilder.UseSqlServer(connString);
|
||||
}
|
||||
else
|
||||
{
|
||||
optionsBuilder.UseSqlServer("Server=SQL2016DEV;Database=Sauder_NKC;Trusted_Connection=True;");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder.Entity<MaterialModel>(entity =>
|
||||
{
|
||||
|
||||
entity.HasIndex(e => e.MatExtCode, "Idx_Materials_MatExtCode_Unique")
|
||||
.IsUnique();
|
||||
|
||||
entity.Property(e => e.ApprovDate)
|
||||
.HasColumnType("datetime")
|
||||
.HasDefaultValueSql("(getdate())");
|
||||
|
||||
entity.Property(e => e.ApprovUser)
|
||||
.HasMaxLength(50)
|
||||
.HasDefaultValueSql("('')");
|
||||
|
||||
entity.Property(e => e.LMm)
|
||||
.HasColumnType("decimal(18, 3)")
|
||||
.HasColumnName("L_mm");
|
||||
|
||||
entity.Property(e => e.MatDesc)
|
||||
.HasMaxLength(500)
|
||||
.HasDefaultValueSql("('')")
|
||||
.HasComment("Description");
|
||||
|
||||
entity.Property(e => e.TMm)
|
||||
.HasColumnType("decimal(18, 3)")
|
||||
.HasColumnName("T_mm");
|
||||
|
||||
entity.Property(e => e.WMm)
|
||||
.HasColumnType("decimal(18, 3)")
|
||||
.HasColumnName("W_mm");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<PrintJobQueue>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.IdxPrintJob);
|
||||
|
||||
entity.ToTable("PrintJobQueue");
|
||||
|
||||
entity.Property(e => e.DtEnd)
|
||||
.HasColumnType("datetime")
|
||||
.HasColumnName("dtEnd");
|
||||
|
||||
entity.Property(e => e.DtLastTry)
|
||||
.HasColumnType("datetime")
|
||||
.HasColumnName("dtLastTry");
|
||||
|
||||
entity.Property(e => e.DtStart)
|
||||
.HasColumnType("datetime")
|
||||
.HasColumnName("dtStart");
|
||||
|
||||
entity.Property(e => e.KeyParam).HasMaxLength(50);
|
||||
|
||||
entity.Property(e => e.PrtName)
|
||||
.HasMaxLength(500)
|
||||
.HasColumnName("prtName");
|
||||
|
||||
entity.Property(e => e.Stato).HasColumnName("stato");
|
||||
|
||||
entity.Property(e => e.TipoReport).HasMaxLength(250);
|
||||
});
|
||||
|
||||
OnModelCreatingPartial(modelBuilder);
|
||||
}
|
||||
|
||||
#endregion Protected Methods
|
||||
|
||||
#region Public Methods
|
||||
|
||||
public void DbForceMigrate()
|
||||
{
|
||||
try
|
||||
{
|
||||
// se non ci fosse... crea o migra!
|
||||
Database.Migrate();
|
||||
Log.Info("DbForceMigrate: done!");
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Log.Error(exc, "DbForceMigrate: Exception during context initialization 01");
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user