Merge branch 'feature/Osai_ToolTable' into develop

# Conflicts:
#	Libs/CMS_CORE_Library.dll
#	Step.Core/ThreadsFunctions.cs
#	Step.Core/ThreadsHandler.cs
#	Step.Database/DatabaseContext.cs
#	Step.Database/Migrations/201806220920193_InitMigration.Designer.cs
#	Step.Database/Migrations/201806220920193_InitMigration.cs
#	Step.Database/Migrations/201807120908403_InitMigration.Designer.cs
#	Step.Database/Migrations/201807120908403_InitMigration.cs
#	Step.Database/Migrations/201807120908403_InitMigration.resx
#	Step.Database/Migrations/201807251330036_InitMigration.Designer.cs
#	Step.Database/Migrations/201807251330036_InitMigration.cs
#	Step.Database/Step.Database.csproj
#	Step.Model/Constants.cs
#	Step.NC/NcHandler.cs
#	Step/Listeners/ListenersHandler.cs
#	Step/Step.csproj
This commit is contained in:
Lucio Maranta
2018-08-03 12:59:14 +02:00
46 changed files with 3431 additions and 787 deletions
@@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Step.Model.ConfigModels
{
public class ToolManagerConfigModel
{
public bool FamilyOptIsActive { get; set; }
public bool ShankOptIsActive { get; set; }
public bool MagPositionIsActive { get; set; }
public bool OffsetOptIsActive { get; set; }
public bool ReviveOptIsActive { get; set; }
public bool GammaOptIsActive { get; set; }
public bool LifeOptIsActive { get; set; }
public bool TcpOptIsActive { get; set; }
public bool CoolingOptIsActive { get; set; }
public bool MultidimensionalShankOptIsActive { get; set; }
public bool SelfAdaptivePathOptIsActive { get; set; }
public bool DynamicCompensationOptIsActive { get; set; }
}
}
@@ -1,15 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Step.Model.ConfigModels
{
public class ToolTableConfigModel
{
public bool FamilyOption;
public bool MultiToolOption;
public bool MagazinePosition;
}
}
+13
View File
@@ -126,6 +126,9 @@ namespace Step.Model
public const string NC_SOFTKEYS_CONFIG_SCHEMA_PATH = CONFIG_DIRECTORY + "ncSoftKeyConfigValidator.xsd";
public const string NC_SOFTKEYS_CONFIG_PATH = CONFIG_DIRECTORY + "ncSoftKeyConfig.xml";
public const string TOOL_MANAGER_CONFIG_SCHEMA_PATH = CONFIG_DIRECTORY + "toolManagerConfigValidator.xsd";
public const string TOOL_MANAGER_CONFIG_PATH = CONFIG_DIRECTORY + "toolManagerConfig.xml";
public static string WEBSITE_DIRECTORY = Path.Combine(BASE_PATH, "..", "wwwroot");
public static string LANGUAGE_PACK_DIRECTORY = BASE_PATH + "\\languages\\";
public static string LANGUAGE_SCHEMA_PATH = BASE_PATH + "\\LanguageValidator.xsd";
@@ -136,6 +139,7 @@ namespace Step.Model
public const string SEND_NC_STATUS = "NC_STATUS";
public const string SEND_THREADS_STATUS = "THREAD_STATUS";
public const string SHOW_MSG_UI = "SHOW_MSG_UI";
public const string SEND_ERROR_TO_UI = "SEND_ERROR_TO_UI";
// MVVM Messages to signalR tasks
public const string SEND_ALARMS = "SEND_ALARMS";
@@ -151,6 +155,7 @@ namespace Step.Model
public const string SEND_AXIS_NAMES_DATA = "SEND_AXIS_NAMES_DATA";
public const string SEND_MAGAZINES_STATUS = "SEND_MAGAZINES_STATUS";
public const string SEND_ACTIVE_PROGRAM_DATA = "SEND_ACTIVE_PROGRAM_DATA";
public const string UPDATE_TOOLS_DATA = "UPDATE_TOOLS_DATA";
public const string BROADCAST_DATA = "BROADCAST_DATA";
@@ -175,5 +180,13 @@ namespace Step.Model
public const string TOOL_MANAGER = "toolManager";
public const string MAINTENANCE = "maintenance";
}
public static class API_ERROR_KEYS
{
public const string INCORRECT_PARAMETERS = "error_incorrect_parameters";
public const string MAGAZINE_POSITION_OCCUPIED = "error_magazine_position_occupied";
public const string TOOL_IS_MOUNTED = "error_tool_mounted";
public const string OPTION_NOT_ACTIVE = "error_option_not_active";
}
}
}
+20
View File
@@ -44,6 +44,11 @@
return true;
}
public override int GetHashCode()
{
return base.GetHashCode();
}
}
public class DTOSpindleModel : DTOHeadModel
@@ -73,6 +78,11 @@
// Call Parent equals
return base.Equals(item);
}
public override int GetHashCode()
{
return base.GetHashCode();
}
}
public class DTOAbrasiveWaterJet : DTOHeadModel
@@ -102,6 +112,11 @@
// Call Parent equals
return base.Equals(item);
}
public override int GetHashCode()
{
return base.GetHashCode();
}
}
public class DTOWaterJet : DTOHeadModel
@@ -123,5 +138,10 @@
// Call Parent equals
return base.Equals(item);
}
public override int GetHashCode()
{
return base.GetHashCode();
}
}
}
@@ -0,0 +1,242 @@
using Step.Model.DatabaseModels;
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Step.Model.DTOModels.ToolModels
{
public class DTONewNcFamilyModel
{
[Required]
public string Name { get; set; }
[Required]
public byte Type { get; set; }
[Required]
public byte RightSize { get; set; }
[Required]
public byte LeftSize { get; set; }
[Required]
public byte TcpTable { get; set; }
[Required]
public byte Gamma { get; set; }
[Required]
public byte RotationType { get; set; }
[Required]
public bool Cooling { get; set; }
[Required]
public bool Cooling1 { get; set; }
[Required]
public bool Cooling2 { get; set; }
[Required]
public bool Cooling3 { get; set; }
[Required]
public bool Cooling4 { get; set; }
[Required]
public bool Cooling5 { get; set; }
[Required]
public bool Cooling6 { get; set; }
[Required]
public bool Cooling7 { get; set; }
[Required]
public int MaxSpeed { get; set; }
[Required]
public byte MaxLoad { get; set; }
[Required]
public byte MinLoadPctAutoload { get; set; }
[Required]
public byte MaxLoadPctAutoload { get; set; }
[Required]
public byte DynamicCompensation { get; set; }
[Required]
public byte MinLoadDynamicCompensation { get; set; }
[Required]
public byte MaxLoadDynamicCompensation { get; set; }
[Required]
public byte LifeType { get; set; }
[Required]
public int NominalLife { get; set; }
[Required]
public int ReviveDelta { get; set; }
public static explicit operator DTONewNcFamilyModel(DbNcFamilyModel obj)
{
// Get bit values
BitArray coolingByte = new BitArray(new byte[] { obj.CoolingByte });
bool[] bits = new bool[8];
coolingByte.CopyTo(bits, 0);
return new DTONcFamilyModel()
{
Id = obj.FamilyId,
Name = obj.Name,
Type = obj.Type,
RightSize = obj.RightSize,
LeftSize = obj.LeftSize,
TcpTable = obj.TcpTable,
Gamma = obj.Gamma,
RotationType = obj.RotationType,
Cooling = bits[0],
Cooling1 = bits[1],
Cooling2 = bits[2],
Cooling3 = bits[3],
Cooling4 = bits[4],
Cooling5 = bits[5],
Cooling6 = bits[6],
Cooling7 = bits[7],
MaxSpeed = obj.MaxSpeed,
MaxLoad = obj.MaxLoad,
MinLoadDynamicCompensation = obj.MinLoadDynamicCompensation,
MaxLoadDynamicCompensation = obj.MaxLoadDynamicCompensation,
MaxLoadPctAutoload = obj.MaxLoadPctAutoload,
MinLoadPctAutoload = obj.MinLoadPctAutoload,
DynamicCompensation = obj.DynamicCompensation,
LifeType = obj.LifeType,
NominalLife = obj.NominalLife,
ReviveDelta = obj.ReviveDelta
};
}
public static explicit operator DbNcFamilyModel(DTONewNcFamilyModel obj)
{
// Prepare status byte
bool[] result = new bool[8] { obj.Cooling, obj.Cooling1, obj.Cooling2, obj.Cooling3, obj.Cooling4, obj.Cooling5, obj.Cooling6, obj.Cooling7 };
byte coolingByte = ConvertArrayToByte(result);
return new DbNcFamilyModel()
{
Name = obj.Name,
Type = obj.Type,
RightSize = obj.RightSize,
LeftSize = obj.LeftSize,
TcpTable = obj.TcpTable,
Gamma = obj.Gamma,
RotationType = obj.RotationType,
CoolingByte = coolingByte,
MaxSpeed = obj.MaxSpeed,
MaxLoad = obj.MaxLoad,
MinLoadDynamicCompensation = obj.MinLoadDynamicCompensation,
MaxLoadDynamicCompensation = obj.MaxLoadDynamicCompensation,
MaxLoadPctAutoload = obj.MaxLoadPctAutoload,
MinLoadPctAutoload = obj.MinLoadPctAutoload,
DynamicCompensation = obj.DynamicCompensation,
LifeType = obj.LifeType,
NominalLife = obj.NominalLife,
ReviveDelta = obj.ReviveDelta,
};
}
protected static byte ConvertArrayToByte(bool[] bits)
{
BitArray bitField = new BitArray(bits); //BitArray takes a bool[]
byte[] bytes = new byte[1];
bitField.CopyTo(bytes, 0);
return bytes[0];
}
}
public class DTONcFamilyModel : DTONewNcFamilyModel
{
public int Id { get; set; }
public List<DTONcToolModel> Tools { get; set; }
public static explicit operator DTONcFamilyModel(DbNcFamilyModel obj)
{
List<DTONcToolModel> tools = new List<DTONcToolModel>();
if (obj.Tools != null)
foreach (var tool in obj.Tools)
{
tools.Add((DTONcToolModel)tool);
}
// Get bit values
BitArray coolingByte = new BitArray(new byte[] { obj.CoolingByte });
bool[] bits = new bool[8];
coolingByte.CopyTo(bits, 0);
return new DTONcFamilyModel()
{
Id = obj.FamilyId,
Name = obj.Name,
Type = obj.Type,
RightSize = obj.RightSize,
LeftSize = obj.LeftSize,
TcpTable = obj.TcpTable,
Gamma = obj.Gamma,
RotationType = obj.RotationType,
Cooling = bits[0],
Cooling1 = bits[1],
Cooling2 = bits[2],
Cooling3 = bits[3],
Cooling4 = bits[4],
Cooling5 = bits[5],
Cooling6 = bits[6],
Cooling7 = bits[7],
MaxSpeed = obj.MaxSpeed,
MaxLoad = obj.MaxLoad,
MinLoadDynamicCompensation = obj.MinLoadDynamicCompensation,
MaxLoadDynamicCompensation = obj.MaxLoadDynamicCompensation,
MaxLoadPctAutoload = obj.MaxLoadPctAutoload,
MinLoadPctAutoload = obj.MinLoadPctAutoload,
DynamicCompensation = obj.DynamicCompensation,
LifeType = obj.LifeType,
NominalLife = obj.NominalLife,
ReviveDelta = obj.ReviveDelta,
Tools = tools
};
}
public static explicit operator DbNcFamilyModel(DTONcFamilyModel obj)
{
// Prepare status byte
bool[] result = new bool[8] { obj.Cooling, obj.Cooling1, obj.Cooling2, obj.Cooling3, obj.Cooling4, obj.Cooling5, obj.Cooling6, obj.Cooling7 };
byte coolingByte = ConvertArrayToByte(result);
return new DbNcFamilyModel()
{
FamilyId = obj.Id,
Name = obj.Name,
Type = obj.Type,
RightSize = obj.RightSize,
LeftSize = obj.LeftSize,
TcpTable = obj.TcpTable,
Gamma = obj.Gamma,
RotationType = obj.RotationType,
CoolingByte = coolingByte,
MaxSpeed = obj.MaxSpeed,
MaxLoad = obj.MaxLoad,
MinLoadDynamicCompensation = obj.MinLoadDynamicCompensation,
MaxLoadDynamicCompensation = obj.MaxLoadDynamicCompensation,
MaxLoadPctAutoload = obj.MaxLoadPctAutoload,
MinLoadPctAutoload = obj.MinLoadPctAutoload,
DynamicCompensation = obj.DynamicCompensation,
LifeType = obj.LifeType,
NominalLife = obj.NominalLife,
ReviveDelta = obj.ReviveDelta,
};
}
}
}
@@ -0,0 +1,47 @@
using Step.Model.DatabaseModels;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Step.Model.DTOModels.ToolModels
{
public class DTONcMagazinePositionModel
{
public byte MagazineId { get; set; }
public byte PositionId { get; set; }
[Required]
public bool Disabled { get; set; }
[Required]
public byte Type { get; set; }
public int? ShankId { get; set; }
public static explicit operator DTONcMagazinePositionModel(DbNcMagazinePositionModel obj)
{
return new DTONcMagazinePositionModel()
{
MagazineId = obj.MagazineId,
PositionId = obj.PositionId,
Disabled = obj.Disabled,
Type = obj.Type
};
}
public static explicit operator DbNcMagazinePositionModel(DTONcMagazinePositionModel obj)
{
return new DbNcMagazinePositionModel()
{
MagazineId = obj.MagazineId,
PositionId = obj.PositionId,
Disabled = obj.Disabled,
Type = obj.Type
};
}
}
}
@@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Step.Model.DTOModels.ToolModels
{
public class DTONcMountedShankModel
{
public byte PositionId;
public byte MagazineId;
public int ShankId;
}
}
@@ -0,0 +1,83 @@
using Step.Model.DatabaseModels;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Step.Model.DTOModels.ToolModels
{
public class DTONewNcShankModel
{
[Required]
public ushort? Balluf { get; set; }
[Required]
public byte MagazinePositionType { get; set; }
public static explicit operator DTONewNcShankModel(DbNcShankModel obj)
{
return new DTONewNcShankModel()
{
Balluf = (ushort)obj.Balluf,
MagazinePositionType = obj.MagazinePositionType
};
}
public static explicit operator DbNcShankModel(DTONewNcShankModel obj)
{
return new DbNcShankModel()
{
Balluf = obj.Balluf,
MagazinePositionType = obj.MagazinePositionType
};
}
}
public class DTONcShankModel : DTONewNcShankModel
{
public int Id { get; set; }
[Range(1, byte.MaxValue)]
public byte? MagazineId { get; set; }
[Range(1, byte.MaxValue)]
public byte? PositionId { get; set; }
public List<DTONcToolModel> Tools { get; set; }
public static explicit operator DTONcShankModel(DbNcShankModel obj)
{
List<DTONcToolModel> tools = new List<DTONcToolModel>();
if (obj.Tools != null)
foreach (var tool in obj.Tools)
{
tools.Add((DTONcToolModel)tool);
}
return new DTONcShankModel()
{
Id = obj.ShankId,
Balluf = (ushort)obj.Balluf,
MagazinePositionType = obj.MagazinePositionType,
MagazineId = obj.MagazineId,
PositionId = obj.PositionId,
Tools = tools
};
}
public static explicit operator DbNcShankModel(DTONcShankModel obj)
{
return new DbNcShankModel()
{
ShankId = obj.Id,
Balluf = obj.Balluf,
MagazinePositionType = obj.MagazinePositionType,
MagazineId = obj.MagazineId,
PositionId = obj.PositionId
};
}
}
}
@@ -0,0 +1,197 @@
using Step.Model.DatabaseModels;
using System;
using System.Collections;
using System.ComponentModel.DataAnnotations;
using static CMS_CORE_Library.DataStructures;
namespace Step.Model.DTOModels.ToolModels
{
public class DTONcTool
{
[Required]
public int OffsetLength { get; set; }
[Required]
public int ResidualLife { get; set; }
[Required]
public int ResidualRevive { get; set; }
[Required]
// Foreign keys
public int FamilyId { get; set; }
[Required]
public bool Disabled { get; set; }
[Required]
public bool Broken { get; set; }
[Required]
public bool Measured { get; set; }
[Required]
public bool ClockwiseRotation { get; set; }
[Required]
public bool CounterClockwiseRotation { get; set; }
public int? ShankId { get; set; }
public static explicit operator DTONcTool(DbNcToolModel obj)
{
// Get bit values
var statusBits = new BitArray(obj.Status);
bool[] bits = new bool[8];
statusBits.CopyTo(bits, 0);
return new DTONcTool()
{
FamilyId = obj.FamilyId,
ShankId = obj.ShankId == null ? 0 : obj.ShankId.Value,
OffsetLength = obj.OffsetLength,
ResidualLife = obj.ResidualLife,
ResidualRevive = obj.ResidualRevive,
Disabled = bits[0],
Broken = bits[1],
Measured = bits[2],
ClockwiseRotation = bits[3],
CounterClockwiseRotation = bits[4],
};
}
public static explicit operator DbNcToolModel(DTONcTool obj)
{
// Prepare status byte
bool[] result = new bool[8] { obj.Disabled, obj.Broken, obj.Measured, obj.ClockwiseRotation, obj.CounterClockwiseRotation, false, false, false };
byte status = ConvertArrayToByte(result);
return new DbNcToolModel()
{
FamilyId = obj.FamilyId,
ShankId = obj.ShankId,
OffsetLength = obj.OffsetLength,
ResidualLife = obj.ResidualLife,
ResidualRevive = obj.ResidualRevive,
Status = status
};
}
protected static byte ConvertArrayToByte(bool[] bits)
{
BitArray bitField = new BitArray(bits); //BitArray takes a bool[]
byte[] bytes = new byte[1];
bitField.CopyTo(bytes, 0);
return bytes[0];
}
}
public class DTONcToolModel : DTONcTool
{
public int Id { get; set; }
public OffsetModel Offset1 { get; set; }
public OffsetModel Offset2 { get; set; }
public OffsetModel Offset3 { get; set; }
public static explicit operator DTONcToolModel(DbNcToolModel obj)
{
// Get bit values
var statusBits = new BitArray(new byte[] { obj.Status });
bool[] bits = new bool[8];
statusBits.CopyTo(bits, 0);
return new DTONcToolModel()
{
Id = obj.ToolId,
FamilyId = obj.FamilyId,
ShankId = obj.ShankId == null ? 0 : obj.ShankId.Value,
OffsetLength = obj.OffsetLength,
ResidualLife = obj.ResidualLife,
ResidualRevive = obj.ResidualRevive,
Disabled = bits[0],
Broken = bits[1],
Measured = bits[2],
ClockwiseRotation = bits[3],
CounterClockwiseRotation = bits[4],
};
}
public static explicit operator DbNcToolModel(DTONcToolModel obj)
{
// Prepare status byte
bool[] result = new bool[8] { obj.Disabled, obj.Broken, obj.Measured, obj.ClockwiseRotation, obj.CounterClockwiseRotation, false, false, false };
byte status = ConvertArrayToByte(result);
return new DbNcToolModel()
{
ToolId = obj.Id,
FamilyId = obj.FamilyId,
ShankId = obj.ShankId,
OffsetLength = obj.OffsetLength,
ResidualLife = obj.ResidualLife,
ResidualRevive = obj.ResidualRevive,
Status = status
};
}
}
public class DTONewNcToolModel : DTONcTool
{
public int? OffsetId1 { get; set; }
public int? OffsetId2 { get; set; }
public int? OffsetId3 { get; set; }
public static explicit operator DTONewNcToolModel(DbNcToolModel obj)
{
// Get bit values
var statusBits = new BitArray(obj.Status);
bool[] bits = new bool[8];
statusBits.CopyTo(bits, 0);
return new DTONewNcToolModel()
{
FamilyId = obj.FamilyId,
ShankId = obj.ShankId == null ? 0 : obj.ShankId.Value,
OffsetLength = obj.OffsetLength,
ResidualLife = obj.ResidualLife,
ResidualRevive = obj.ResidualRevive,
Disabled = bits[0],
Broken = bits[1],
Measured = bits[2],
ClockwiseRotation = bits[3],
CounterClockwiseRotation = bits[4],
OffsetId1 = obj.OffsetId1,
OffsetId2 = obj.OffsetId2,
OffsetId3 = obj.OffsetId3
};
}
public static explicit operator DbNcToolModel(DTONewNcToolModel obj)
{
// Prepare status byte
bool[] result = new bool[8] { obj.Disabled, obj.Broken, obj.Measured, obj.ClockwiseRotation, obj.CounterClockwiseRotation, false, false, false};
byte status = ConvertArrayToByte(result);
return new DbNcToolModel()
{
FamilyId = obj.FamilyId,
ShankId = obj.ShankId,
OffsetLength = obj.OffsetLength,
ResidualLife = obj.ResidualLife,
ResidualRevive = obj.ResidualRevive,
Status = status,
OffsetId1 = obj.OffsetId1,
OffsetId2 = obj.OffsetId2,
OffsetId3 = obj.OffsetId3
};
}
}
}
@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Step.Model.DTOModels.ToolModels
{
public class DTONewToolDataModel
{
public Dictionary<int, byte> UpdatedStatus;
public Dictionary<int, uint> UpdatedLives;
}
}
@@ -61,6 +61,8 @@ namespace Step.Model.DTOModels.ToolModels
[Required]
public bool PreAlarm { get; set; }
public DTONcShankModel Shank { get; set; }
public static explicit operator SiemensToolModel(DTOSiemensToolModel dtoModel)
{
return new SiemensToolModel()
@@ -91,7 +93,7 @@ namespace Step.Model.DTOModels.ToolModels
public class DTOMagazinesPositionsModel
{
[Required()]
[Required]
public bool Disabled { get; set; }
}
@@ -0,0 +1,95 @@
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using static CMS_CORE_Library.DataStructures;
namespace Step.Model.DatabaseModels
{
[Table("family")]
public class DbNcFamilyModel
{
[Key]
[Column("id")]
public int FamilyId { get; set; }
[Column("name")]
public string Name { get; set; }
[Column("type")]
public byte Type { get; set; }
[Column("right_size")]
public byte RightSize { get; set; }
[Column("left_size")]
public byte LeftSize { get; set; }
[Column("tcp_table")]
public byte TcpTable { get; set; }
[Column("gamma")]
public byte Gamma { get; set; }
[Column("rotation_type")]
public byte RotationType { get; set; }
[Column("cooling_byte")]
public byte CoolingByte { get; set; }
[Column("max_speed")]
public int MaxSpeed { get; set; }
[Column("max_load")]
public byte MaxLoad { get; set; }
[Column("min_load_pct_autoload")]
public byte MinLoadPctAutoload { get; set; }
[Column("max_load_pct_autoload")]
public byte MaxLoadPctAutoload { get; set; }
[Column("dynamic_compensation")]
public byte DynamicCompensation { get; set; }
[Column("min_load_dynamic_comp")]
public byte MinLoadDynamicCompensation { get; set; }
[Column("max_load_dynamic_comp")]
public byte MaxLoadDynamicCompensation { get; set; }
[Column("life_type")]
public byte LifeType { get; set; }
[Column("nominal_life")]
public int NominalLife { get; set; }
[Column("revive_delta")]
public int ReviveDelta { get; set; }
public List<DbNcToolModel> Tools { get; set; }
public static explicit operator NcFamilyModel(DbNcFamilyModel obj)
{
return new NcFamilyModel()
{
Id = (ushort)obj.FamilyId,
Type = obj.Type,
RightSize = obj.RightSize,
LeftSize = obj.LeftSize,
TcpTable = obj.TcpTable,
Gamma = obj.Gamma,
CoolingByte = obj.CoolingByte,
RotationType = obj.RotationType,
MaxLoad = obj.MaxLoad,
MaxSpeed = (ushort)obj.MaxSpeed,
MinLoadPctAutoload = obj.MinLoadPctAutoload,
MaxLoadPctAutoload = obj.MaxLoadDynamicCompensation,
MinLoadDynamicCompensation = obj.MinLoadDynamicCompensation,
MaxLoadDynamicCompensation = obj.MaxLoadDynamicCompensation,
LifeType = obj.LifeType,
NominalLife = (uint)obj.NominalLife,
ReviveDelta = (ushort)obj.ReviveDelta
};
}
}
}
@@ -0,0 +1,33 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using static CMS_CORE_Library.DataStructures;
namespace Step.Model.DatabaseModels
{
[Table("magazine_position")]
public class DbNcMagazinePositionModel
{
[Key, Column("magazine_id", Order = 0)]
public byte MagazineId { get; set; }
[Key, Column("position_id", Order = 1)]
public byte PositionId { get; set; }
[Column("type")]
public byte Type { get; set; }
[Column("disabled")]
public bool Disabled { get; set; }
public static explicit operator NcMagazinePositionModel(DbNcMagazinePositionModel obj)
{
return new NcMagazinePositionModel()
{
MagazineId = obj.MagazineId,
PositionId = obj.PositionId,
Disabled = obj.Disabled ? (byte)1 : (byte)0,
Type = obj.Type
};
}
}
}
@@ -0,0 +1,28 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Step.Model.DatabaseModels
{
[Table("offset")]
public class NcOffsetModel
{
[Key]
[Column("id")]
public int OffsetId { get; set; }
[Column("nc_offset_id")]
public int NcOffsetId { get; set; }
[Column("lenght")]
public double Lenght { get; set; }
[Column("radius")]
public double Radius { get; set; }
[Column("wear_length")]
public double WearLength { get; set; }
[Column("wear_radius")]
public double WearRadius { get; set; }
}
}
+43
View File
@@ -0,0 +1,43 @@
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using static CMS_CORE_Library.DataStructures;
namespace Step.Model.DatabaseModels
{
[Table("shank")]
public class DbNcShankModel
{
[Key]
[Column("id")]
public int ShankId { get; set; }
[Column("balluf")]
public int? Balluf { get; set; }
[Column("magazine_position_type")]
public byte MagazinePositionType { get; set; }
[ForeignKey("MagazinePosition"), Column("magazine_id", Order = 0)]
public byte? MagazineId { get; set; }
[ForeignKey("MagazinePosition"), Column("position_id", Order = 1)]
public byte? PositionId { get; set; }
public DbNcMagazinePositionModel MagazinePosition { get; set; }
public List<DbNcToolModel> Tools { get; set; }
public static explicit operator NcShankModel(DbNcShankModel obj)
{
return new NcShankModel()
{
Id = obj.ShankId,
Balluf = obj.Balluf == null ? (ushort)0 : (ushort)obj.Balluf.Value,
MagazineId = obj.MagazineId == null ? (byte)0 : obj.MagazineId.Value,
PositionId = obj.PositionId == null ? (byte)0 : obj.PositionId.Value,
MagazinePositionType = obj.MagazinePositionType,
};
}
}
}
+66
View File
@@ -0,0 +1,66 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using static CMS_CORE_Library.DataStructures;
namespace Step.Model.DatabaseModels
{
[Table("tool")]
public class DbNcToolModel
{
[Key]
[Column("id")]
public int ToolId { get; set; }
[Column("offset_length")]
public int 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 int FamilyId { get; set; }
[Column("shank_id")]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[ForeignKey("Shank")]
public int? ShankId { get; set; }
[Column("offsetId1")]
public int? OffsetId1 { get; set; }
[Column("offsetId2")]
public int? OffsetId2 { get; set; }
[Column("offsetId3")]
public int? OffsetId3 { get; set; }
public virtual DbNcFamilyModel Family { get; set; }
public virtual DbNcShankModel Shank { get; set; }
public static explicit operator NcToolModel(DbNcToolModel obj)
{
return new NcToolModel()
{
Id = (ushort)obj.ToolId,
FamilyId = obj.FamilyId,
OffsetLength = (ushort)obj.OffsetLength,
ResidualLife = (ushort)obj.ResidualLife,
Status = obj.Status,
ResidualRevive = (ushort)obj.ResidualRevive,
ShankId = obj.ShankId == null ? 0 : obj.ShankId.Value,
OffsetId1 = obj.OffsetId1 == null ? 0 : obj.OffsetId1.Value,
OffsetId2 = obj.OffsetId2 == null ? 0 : obj.OffsetId2.Value,
OffsetId3 = obj.OffsetId3 == null ? 0 : obj.OffsetId3.Value
};
}
}
}
-7
View File
@@ -1,7 +0,0 @@
declare module server {
interface roleModel {
roleId: number;
name: string;
level: number;
}
}
-130
View File
@@ -1,130 +0,0 @@
declare module server {
interface userModel {
userId: number;
username: string;
firstName: string;
lastName: string;
password: string;
securityStamp: string;
_language: string;
language: {
parent: any;
lCID: number;
keyboardLayoutId: number;
name: string;
ietfLanguageTag: string;
displayName: string;
nativeName: string;
englishName: string;
twoLetterISOLanguageName: string;
threeLetterISOLanguageName: string;
threeLetterWindowsLanguageName: string;
compareInfo: {
name: string;
lCID: number;
version: {
fullVersion: number;
sortId: any;
};
};
textInfo: {
aNSICodePage: number;
oEMCodePage: number;
macCodePage: number;
eBCDICCodePage: number;
lCID: number;
cultureName: string;
isReadOnly: boolean;
listSeparator: string;
isRightToLeft: boolean;
};
isNeutralCulture: boolean;
cultureTypes: any;
numberFormat: {
currencyDecimalDigits: number;
currencyDecimalSeparator: string;
isReadOnly: boolean;
currencyGroupSizes: number[];
numberGroupSizes: number[];
percentGroupSizes: number[];
currencyGroupSeparator: string;
currencySymbol: string;
naNSymbol: string;
currencyNegativePattern: number;
numberNegativePattern: number;
percentPositivePattern: number;
percentNegativePattern: number;
negativeInfinitySymbol: string;
negativeSign: string;
numberDecimalDigits: number;
numberDecimalSeparator: string;
numberGroupSeparator: string;
currencyPositivePattern: number;
positiveInfinitySymbol: string;
positiveSign: string;
percentDecimalDigits: number;
percentDecimalSeparator: string;
percentGroupSeparator: string;
percentSymbol: string;
perMilleSymbol: string;
nativeDigits: string[];
digitSubstitution: any;
};
dateTimeFormat: {
aMDesignator: string;
calendar: {
minSupportedDateTime: Date;
maxSupportedDateTime: Date;
algorithmType: any;
isReadOnly: boolean;
eras: number[];
twoDigitYearMax: number;
};
dateSeparator: string;
firstDayOfWeek: any;
calendarWeekRule: any;
fullDateTimePattern: string;
longDatePattern: string;
longTimePattern: string;
monthDayPattern: string;
pMDesignator: string;
rFC1123Pattern: string;
shortDatePattern: string;
shortTimePattern: string;
sortableDateTimePattern: string;
timeSeparator: string;
universalSortableDateTimePattern: string;
yearMonthPattern: string;
abbreviatedDayNames: string[];
shortestDayNames: string[];
dayNames: string[];
abbreviatedMonthNames: string[];
monthNames: string[];
isReadOnly: boolean;
nativeCalendarName: string;
abbreviatedMonthGenitiveNames: string[];
monthGenitiveNames: string[];
};
calendar: {
minSupportedDateTime: Date;
maxSupportedDateTime: Date;
algorithmType: any;
isReadOnly: boolean;
eras: number[];
twoDigitYearMax: number;
};
optionalCalendars: {
minSupportedDateTime: Date;
maxSupportedDateTime: Date;
algorithmType: any;
isReadOnly: boolean;
eras: number[];
twoDigitYearMax: number;
}[];
useUserOverride: boolean;
isReadOnly: boolean;
};
roleId: number;
role: server.RoleModel;
}
}
+12 -10
View File
@@ -67,6 +67,7 @@
<Compile Include="ConfigModels\ServerConfigModel.cs" />
<Compile Include="ConfigModels\AreasConfigModel.cs" />
<Compile Include="ConfigModels\NcConfigModel.cs" />
<Compile Include="ConfigModels\ToolManagerConfigModel.cs" />
<Compile Include="ConfigModels\UserSoftKeyConfigModel.cs" />
<Compile Include="Constants.cs" />
<Compile Include="DatabaseModels\FavoriteUserSoftKeyModel.cs" />
@@ -75,6 +76,11 @@
<Compile Include="DatabaseModels\MachineModel.cs" />
<Compile Include="DatabaseModels\MaintenanceFileModel.cs" />
<Compile Include="DatabaseModels\MaintenanceModel.cs" />
<Compile Include="DatabaseModels\NcOffsetModel.cs" />
<Compile Include="DatabaseModels\NcFamilyModel.cs" />
<Compile Include="DatabaseModels\NcMagazinePositionModel.cs" />
<Compile Include="DatabaseModels\NcShankModel.cs" />
<Compile Include="DatabaseModels\NcToolModel.cs" />
<Compile Include="DatabaseModels\PerformedMaintenanceModel.cs" />
<Compile Include="DatabaseModels\RoleModel.cs">
<Generator>DtsGenerator</Generator>
@@ -87,6 +93,7 @@
<Compile Include="DTOModels\DTOAxesModel.cs" />
<Compile Include="DTOModels\DTOAxisNameModel.cs" />
<Compile Include="DTOModels\DTOClientConfigurationModel.cs" />
<Compile Include="DTOModels\ToolModels\DTONewToolDataModel.cs" />
<Compile Include="DTOModels\MaintenanceModels\DTOExpiredMaintenanceModel.cs" />
<Compile Include="DTOModels\DTOHeadModel.cs" />
<Compile Include="DTOModels\DTOHeadsConfigModel.cs" />
@@ -109,6 +116,11 @@
<Compile Include="DatabaseModels\MaintenanceNoteModel.cs" />
<Compile Include="DTOModels\ToolModels\DTOEdgeModel.cs" />
<Compile Include="DTOModels\ToolModels\DTOMagazineStatusModel.cs" />
<Compile Include="DTOModels\ToolModels\DTONcFamilyModel.cs" />
<Compile Include="DTOModels\ToolModels\DTONcMagazinePositionModel.cs" />
<Compile Include="DTOModels\ToolModels\DTONcMountedShankModel.cs" />
<Compile Include="DTOModels\ToolModels\DTONcShankModel.cs" />
<Compile Include="DTOModels\ToolModels\DTONcToolModel.cs" />
<Compile Include="DTOModels\ToolModels\DTOShankModel.cs" />
<Compile Include="DTOModels\ToolModels\DTOSiemensToolModel.cs" />
<Compile Include="DTOModels\ToolModels\DTOUpdateMagazineModel.cs" />
@@ -120,16 +132,6 @@
<Compile Include="DTOModels\DTOFunctionAccessModel.cs" />
</ItemGroup>
<ItemGroup>
<TypeScriptCompile Include="DatabaseModels\RoleModel.cs.d.ts">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>RoleModel.cs</DependentUpon>
</TypeScriptCompile>
<TypeScriptCompile Include="DatabaseModels\UserModel.cs.d.ts">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>UserModel.cs</DependentUpon>
</TypeScriptCompile>
<TypeScriptCompile Include="DTOModels\DTOLanguageModel.cs.d.ts">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>