Submit all LeafInputFiles together
This commit is contained in:
+37
-32
@@ -50,16 +50,49 @@ namespace LeafWeb.Core.DAL
|
||||
return _db.LeafInputs.FirstOrDefault(li => li.Id == id);
|
||||
}
|
||||
|
||||
public IQueryable<LeafInput> GetLeafInputs(LeafInputStatusType status)
|
||||
{
|
||||
return
|
||||
from file in _db.LeafInputs
|
||||
where file.CurrentStatus == status
|
||||
select file;
|
||||
}
|
||||
|
||||
public void AddLeafInput(LeafInput leafInput)
|
||||
{
|
||||
leafInput.Added = DateTime.Now;
|
||||
_db.LeafInputs.Add(leafInput);
|
||||
foreach (var leafInputFile in leafInput.Files)
|
||||
{
|
||||
SetLeafInputFileStatusNoUpdate(leafInputFile, LeafInputStatusType.Queued);
|
||||
}
|
||||
SetLeafInputStatusNoUpdate(leafInput, LeafInputStatusType.Pending);
|
||||
_db.SaveChanges();
|
||||
}
|
||||
|
||||
private void SetLeafInputStatusNoUpdate(LeafInput leafInputFile, LeafInputStatusType status, string description = null)
|
||||
{
|
||||
leafInputFile.CurrentStatus = status;
|
||||
var leafInputFileStatus = new LeafInputStatus
|
||||
{
|
||||
Status = status,
|
||||
DateTime = DateTime.Now,
|
||||
Description = description,
|
||||
LeafInput = leafInputFile
|
||||
};
|
||||
if (leafInputFile.StatusHistory == null)
|
||||
leafInputFile.StatusHistory = new List<LeafInputStatus>();
|
||||
leafInputFile.StatusHistory.Add(leafInputFileStatus);
|
||||
}
|
||||
|
||||
public void SetLeafInputStatus(LeafInput leafInput, LeafInputStatusType status, string description = null)
|
||||
{
|
||||
SetLeafInputStatusNoUpdate(leafInput, status, description);
|
||||
UpdateLeafInput(leafInput);
|
||||
}
|
||||
|
||||
public void UpdateLeafInput(LeafInput leafInput)
|
||||
{
|
||||
_db.Entry(leafInput).State = EntityState.Modified;
|
||||
_db.SaveChanges();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region LeafInputFile
|
||||
@@ -74,40 +107,12 @@ namespace LeafWeb.Core.DAL
|
||||
return _db.LeafInputFiles.Find(id);
|
||||
}
|
||||
|
||||
public IQueryable<LeafInputFile> GetLeafInputFiles(LeafInputStatusType status)
|
||||
{
|
||||
return
|
||||
from file in _db.LeafInputFiles
|
||||
where file.CurrentStatus == status
|
||||
select file;
|
||||
}
|
||||
|
||||
public void UpdateLeafInputFile(LeafInputFile leafInputFile)
|
||||
{
|
||||
_db.Entry(leafInputFile).State = EntityState.Modified;
|
||||
_db.SaveChanges();
|
||||
}
|
||||
|
||||
private void SetLeafInputFileStatusNoUpdate(LeafInputFile leafInputFile, LeafInputStatusType status, string description = null)
|
||||
{
|
||||
leafInputFile.CurrentStatus = status;
|
||||
var leafInputFileStatus = new LeafInputFileStatus
|
||||
{
|
||||
Status = status,
|
||||
DateTime = DateTime.Now,
|
||||
Description = description,
|
||||
LeafInputFile = leafInputFile
|
||||
};
|
||||
if (leafInputFile.StatusHistory == null)
|
||||
leafInputFile.StatusHistory = new List<LeafInputFileStatus>();
|
||||
leafInputFile.StatusHistory.Add(leafInputFileStatus);
|
||||
}
|
||||
|
||||
public void SetLeafInputFileStatus(LeafInputFile leafInputFile, LeafInputStatusType status, string description = null)
|
||||
{
|
||||
SetLeafInputFileStatusNoUpdate(leafInputFile, status, description);
|
||||
UpdateLeafInputFile(leafInputFile);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
Reference in New Issue
Block a user