Fix shanks query

Added options config
This commit is contained in:
Lucio Maranta
2018-07-03 17:22:32 +02:00
parent d461fde0e8
commit 4accaacc06
13 changed files with 172 additions and 48 deletions
@@ -58,7 +58,7 @@ namespace Step.Database.Controllers
.FirstOrDefault();
}
public List<NcToolModel> GetTools()
public List<NcToolModel> GetToolsWithDependencies()
{
List<NcToolModel> tools = dbCtx
.Tools
@@ -69,13 +69,43 @@ namespace Step.Database.Controllers
return tools;
}
public List<NcShankModel> GetShanks()
public List<NcToolModel> FindTools()
{
List<NcToolModel> tools = dbCtx
.Tools
.ToList();
return tools;
}
public List<NcShankModel> FindShanks()
{
List<NcShankModel> shanks = dbCtx.Shanks.Include("MagazinePosition").ToList();
return shanks;
}
public List<DTONcShankModel> GetShanks()
{
// Get shank from database
List<NcShankModel> dbShanks = dbCtx
.Shanks
.Include("Tools")
.ToList();
// Populate db shanks
List<DTONcShankModel> dtoShanks = new List<DTONcShankModel>();
foreach (var shank in dbShanks)
{
//dbCtx.Shanks.Attach(shank);
DTONcShankModel dtoShank = (DTONcShankModel)shank;
dtoShanks.Add(dtoShank);
}
return dtoShanks;
}
public List<NcMagazinePositionModel> GetPositions()
{
List<NcMagazinePositionModel> positions = dbCtx.MagazinePositions.ToList();
@@ -107,7 +137,25 @@ namespace Step.Database.Controllers
return offsets;
}
public List<DTONcShankModel> GetMountedShanks(int magazineId)
{
List<DTONcShankModel> dtoShanks = GetShanks()
.Where(x => x.MagazineId != null)
.ToList();
return dtoShanks;
}
public List<DTONcShankModel> GetAvailableShanks()
{
List<DTONcShankModel> dtoShanks = GetShanks()
.Where(x => x.MagazineId == null && x.Tools.Count > 0)
.ToList();
return dtoShanks;
}
public NcToolModel AddTool(DTONcToolModel dtoTool)
{
NcToolModel tool = (NcToolModel)dtoTool;
@@ -208,29 +256,6 @@ namespace Step.Database.Controllers
dbCtx.SaveChanges();
}
public List<DTONcShankModel> GetMountedShanks(int magazineId)
{
return dbCtx
.Shanks
.Where(x => x.MagazineId == magazineId)
.Select(x => new DTONcShankModel()
{
Id = x.ShankId,
Balluf = x.Balluf,
MagazineId = x.MagazineId,
PositionId = x.PositionId,
MagazinePositionType = x.MagazinePositionType
})
.ToList();
}
public List<NcShankModel> GetAvailableShanks()
{
return dbCtx
.Shanks
.Where(x => x.MagazineId == null)
.ToList();
}
public DTONcShankModel LoadShankInMagazine(byte magazineId, byte positionId, NcShankModel shank)
{