blob: cc1379cadadddaeb79e01c61e2eafddfd4cb4ab1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using Tango.BL.Entities;
using System.Data.Entity;
namespace Tango.BL.Builders
{
public class JobBuilder : EntityBuilderBase<Job, JobBuilder>
{
public JobBuilder(ObservablesContext context) : base(context)
{
}
protected override IQueryable<Job> OnSetQuery(IQueryable<Job> query)
{
return query.
Include(x => x.Machine).
Include(x => x.Rml).
Include(x => x.ColorSpace).
Include(x => x.SpoolType).
Include(x => x.Customer).
Include(x => x.WindingMethod);
}
public virtual JobBuilder WithSegments()
{
return AddStep(1, () =>
{
Context.Segments.Where(x => x.JobGuid == Entity.Guid).Include(x => x.SegmentsGroup).OrderBy(x => x.SegmentIndex).ToList();
});
}
public virtual JobBuilder WithBrushStops()
{
return AddStep(2, () =>
{
Context.BrushStops.Where(x => x.Segment.JobGuid == Entity.Guid).Include(x => x.ColorSpace).Include(x => x.ColorCatalogsItem).OrderBy(x => x.StopIndex).ToList();
});
}
public virtual JobBuilder WithConfiguration()
{
return AddStep(3, () =>
{
new MachineBuilder(Context).Set(Entity.MachineGuid).WithSpools().Build();
new ConfigurationBuilder(Context)
.Set(Entity.Machine.ConfigurationGuid)
.WithIdsPacks().Build();
});
}
public virtual JobBuilder WithRML(List<Cct> cctCache = null)
{
return AddStep(4, () =>
{
new RmlBuilder(Context).
Set(Entity.RmlGuid).
WithActiveParametersGroup().
WithCctCache(cctCache).
WithCCT().
WithGbdAndLub().
WithCAT(Entity.MachineGuid).
WithSpools().
WithLiquidFactors().Build();
});
}
public virtual JobBuilder WithUser()
{
return AddStep(5, () =>
{
new UserBuilder(Context).Set(Entity.UserGuid).Build();
});
}
public virtual JobBuilder WithJobRuns()
{
return AddStep(6, () =>
{
Context.JobRuns.Where(x => x.JobGuid == Entity.Guid).OrderBy(x => x.StartDate).ToList();
});
}
public virtual JobBuilder WithSegmentsGroups()
{
return AddStep(7, () =>
{
Context.SegmentsGroups.Where(x => x.JobGuid == Entity.Guid).OrderBy(x => x.SegmentIndex).ToList();
});
}
}
}
|