Production tracing clean-up, ver. 3.1.1848
This commit is contained in:
@@ -199,58 +199,9 @@ namespace TBF.Rig.Output.DB.ProductionTracing
|
||||
session.Flush();
|
||||
}
|
||||
}
|
||||
|
||||
public void StopDevice2() {}
|
||||
|
||||
|
||||
public Process GetWorkflowAndWorkstep(IOrderInfo order, out Workstep workstep, out string previousStepName,
|
||||
out string part1name, out string part2name, ISession session = null)
|
||||
{
|
||||
bool openAndCloseSession = (session == null) || !session.IsOpen;
|
||||
workstep = null;
|
||||
previousStepName = null;
|
||||
part1name = null;
|
||||
part2name = null;
|
||||
|
||||
if (order is OrderInfo)
|
||||
{
|
||||
string workflowName = (order as OrderInfo).Workflow;
|
||||
try
|
||||
{
|
||||
if (openAndCloseSession) session = SessionFactory.OpenSession();
|
||||
var wflows = session.QueryOver<Process>()
|
||||
.Where(x => x.Name == workflowName)
|
||||
.And(x => (x.ReleaseStatus == ReleaseStatus.ToBeApproved ||
|
||||
x.ReleaseStatus == ReleaseStatus.Released ||
|
||||
x.ReleaseStatus == ReleaseStatus.ReleasedActive))
|
||||
.List();
|
||||
if (wflows.Count == 1)
|
||||
{
|
||||
workstep = wflows[0].Worksteps.FirstOrDefault(x => x.Name.ToLower().Contains("test"));
|
||||
int previousStepNr = workstep.WorkstepNr - 1;
|
||||
var previousStep = (previousStepNr < 1) ? null : wflows[0].Worksteps.FirstOrDefault(x => x.WorkstepNr == previousStepNr);
|
||||
var part1 = wflows[0].Parts.FirstOrDefault(x => x.StepNumber == 1);
|
||||
var part2 = wflows[0].Parts.FirstOrDefault(x => x.StepNumber == 2);
|
||||
if (previousStep != null) previousStepName = previousStep.Name;
|
||||
if (part1 != null) part1name = part1.Name;
|
||||
if (part2 != null) part2name = part2.Name;
|
||||
}
|
||||
|
||||
if (openAndCloseSession) session.Close();
|
||||
|
||||
if (wflows.Count == 1)
|
||||
{
|
||||
return wflows[0]; /// Successful
|
||||
}
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
log.ErrorFormat("GetWorkflow({0}) failed: {1}", order, exc.Message);
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public IList<OrderInfo> ReadOrders(ISession session = null)
|
||||
{
|
||||
bool openAndCloseSession = (session == null) || !session.IsOpen;
|
||||
|
||||
Reference in New Issue
Block a user