161 lines
4.2 KiB
C#
161 lines
4.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Newtonsoft.Json;
|
|
using System.Runtime.CompilerServices;
|
|
|
|
// <Auto-Generated>
|
|
// This is here so CodeMaid doesn't reorganize this document
|
|
// </Auto-Generated>
|
|
namespace WebDoorCreator.Data.DbModels
|
|
{
|
|
/// <summary>
|
|
/// Tabella dati Door
|
|
/// </summary>
|
|
[Table("Door")]
|
|
public class DoorModel
|
|
{
|
|
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
|
public int DoorId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Parent element ID
|
|
/// </summary>
|
|
public int ParentId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ordine cui è associata la porta
|
|
/// </summary>
|
|
public int OrderId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Unità di misura
|
|
/// </summary>
|
|
public string MeasureUnit { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// Codice esterno x riferimento (es ERP)
|
|
/// </summary>
|
|
public string DoorExtCode { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// Data inserimento ordine
|
|
/// </summary>
|
|
public DateTime DateIns { get; set; } = DateTime.Now;
|
|
|
|
/// <summary>
|
|
/// Codice utente che ha creato
|
|
/// </summary>
|
|
public string UserIdIns { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// Data (ultima) modifica ordine
|
|
/// </summary>
|
|
public DateTime DateMod { get; set; } = DateTime.Now;
|
|
|
|
/// <summary>
|
|
/// Codice utente che ha creato
|
|
/// </summary>
|
|
public string UserIdMod { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// Descrizione
|
|
/// </summary>
|
|
public string DoorDescript { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// Quantity Ordered
|
|
/// </summary>
|
|
public int Quantity { get; set; } = 1;
|
|
|
|
/// <summary>
|
|
/// Unit cost for the door
|
|
/// </summary>
|
|
public decimal UnitCost { get; set; } = 0;
|
|
|
|
|
|
/// <summary>
|
|
/// Data scadenza Lock
|
|
/// </summary>
|
|
public DateTime DateLockExpiry { get; set; } = DateTime.Now;
|
|
|
|
/// <summary>
|
|
/// Codice utente che ha bloccato record
|
|
/// </summary>
|
|
public string UserIdLock { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// Valore booleano per indicare se è in stato cancellazione logica
|
|
/// </summary>
|
|
public bool isLogicDel { get; set; } = false;
|
|
|
|
[ForeignKey("OrderId")]
|
|
public virtual OrderModel? OrderNav { get; set; }
|
|
|
|
//[ForeignKey("TypeId")]
|
|
// public virtual DoorTypeModel? TypeNav { get; set; }
|
|
|
|
|
|
public DoorModel ObjClone(string userId)
|
|
{
|
|
DateTime adesso = DateTime.Now;
|
|
DoorModel answ = new DoorModel()
|
|
{
|
|
MeasureUnit = MeasureUnit,
|
|
OrderId = OrderId,
|
|
ParentId = ParentId,
|
|
DoorExtCode = DoorExtCode,
|
|
DateIns = adesso,
|
|
UserIdIns = userId,
|
|
DateMod = adesso,
|
|
UserIdMod = userId,
|
|
DoorDescript = DoorDescript,
|
|
Quantity = Quantity,
|
|
UnitCost = UnitCost,
|
|
DateLockExpiry = DateLockExpiry,
|
|
UserIdLock = UserIdLock
|
|
};
|
|
return answ;
|
|
}
|
|
|
|
|
|
public override bool Equals(object? obj)
|
|
{
|
|
if (obj == null)
|
|
return false;
|
|
|
|
if (!(obj is DoorModel item))
|
|
return false;
|
|
|
|
if (Quantity != item.Quantity)
|
|
return false;
|
|
|
|
if (DoorExtCode != item.DoorExtCode)
|
|
return false;
|
|
|
|
if (DoorDescript != item.DoorDescript)
|
|
return false;
|
|
|
|
if (UnitCost != item.UnitCost)
|
|
return false;
|
|
|
|
//if (MeasureUnit != item.MeasureUnit)
|
|
// return false;
|
|
|
|
//if (UnitCost != item.UnitCost)
|
|
// return false;
|
|
|
|
return true;
|
|
}
|
|
|
|
public override int GetHashCode()
|
|
{
|
|
return base.GetHashCode();
|
|
}
|
|
}
|
|
}
|