91 lines
3.0 KiB
C#
91 lines
3.0 KiB
C#
using CMS_CORE_Library.Models;
|
|
using Newtonsoft.Json;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using System.Runtime.Serialization;
|
|
|
|
namespace Step.Model.DatabaseModels
|
|
{
|
|
[Table("tool")]
|
|
public class DbNcToolModel
|
|
{
|
|
[Key]
|
|
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
|
[Column("id")]
|
|
public short ToolId { get; set; }
|
|
|
|
[Column("offset_length")]
|
|
public short OffsetLength { get; set; }
|
|
|
|
[Column("residual_life")]
|
|
public int ResidualLife { get; set; }
|
|
|
|
[Column("residual_revive")]
|
|
public int ResidualRevive { get; set; }
|
|
|
|
[Column("status")]
|
|
public byte Status { get; set; }
|
|
|
|
// Foreign keys
|
|
[Column("family_id")]
|
|
[ForeignKey("Family")]
|
|
public short FamilyId { get; set; }
|
|
|
|
[Column("shank_id")]
|
|
[DatabaseGenerated(DatabaseGeneratedOption.None)]
|
|
|
|
[ForeignKey("Shank")]
|
|
public short? ShankId { get; set; }
|
|
|
|
[Column("offsetId1")]
|
|
public short? OffsetId1 { get; set; }
|
|
|
|
[Column("offsetId2")]
|
|
public short? OffsetId2 { get; set; }
|
|
|
|
[Column("offsetId3")]
|
|
public short? OffsetId3 { get; set; }
|
|
|
|
[JsonIgnore]
|
|
[IgnoreDataMember]
|
|
public virtual DbNcFamilyModel Family { get; set; }
|
|
|
|
[JsonIgnore]
|
|
[IgnoreDataMember]
|
|
public virtual DbNcShankModel Shank { get; set; }
|
|
|
|
public static explicit operator NcToolModel(DbNcToolModel obj)
|
|
{
|
|
return new NcToolModel()
|
|
{
|
|
ToolId = obj.ToolId,
|
|
FamilyId = obj.FamilyId,
|
|
OffsetLength = obj.OffsetLength,
|
|
ResidualLife = (ushort)obj.ResidualLife,
|
|
Status = obj.Status,
|
|
ResidualRevive = (ushort)obj.ResidualRevive,
|
|
ShankId = (short)(obj.ShankId == null ? 0 : obj.ShankId.Value),
|
|
OffsetId1 = (ushort)(obj.OffsetId1 == null ? 0 : obj.OffsetId1.Value),
|
|
OffsetId2 = (ushort)(obj.OffsetId2 == null ? 0 : obj.OffsetId2.Value),
|
|
OffsetId3 = (ushort)(obj.OffsetId3 == null ? 0 : obj.OffsetId3.Value)
|
|
};
|
|
}
|
|
|
|
public static explicit operator DbNcToolModel(NcToolModel obj)
|
|
{
|
|
return new DbNcToolModel()
|
|
{
|
|
ToolId = obj.ToolId,
|
|
FamilyId = obj.FamilyId,
|
|
OffsetLength = obj.OffsetLength,
|
|
ResidualLife = (ushort)obj.ResidualLife,
|
|
Status = obj.Status,
|
|
ResidualRevive = (ushort)obj.ResidualRevive,
|
|
ShankId = obj.ShankId == 0 ? null : (short?)obj.ShankId,
|
|
OffsetId1 = obj.OffsetId1 == 0 ? null : (short?)obj.OffsetId1,
|
|
OffsetId2 = obj.OffsetId2 == 0 ? null : (short?)obj.OffsetId2,
|
|
OffsetId3 = obj.OffsetId3 == 0 ? null : (short?)obj.OffsetId3
|
|
};
|
|
}
|
|
}
|
|
} |