aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Modules/Tango.PPC.Jobs/ViewModels/JobViewVM.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/PPC/Modules/Tango.PPC.Jobs/ViewModels/JobViewVM.cs')
-rw-r--r--Software/Visual_Studio/PPC/Modules/Tango.PPC.Jobs/ViewModels/JobViewVM.cs52
1 files changed, 51 insertions, 1 deletions
diff --git a/Software/Visual_Studio/PPC/Modules/Tango.PPC.Jobs/ViewModels/JobViewVM.cs b/Software/Visual_Studio/PPC/Modules/Tango.PPC.Jobs/ViewModels/JobViewVM.cs
index d1c5a8536..f0950af09 100644
--- a/Software/Visual_Studio/PPC/Modules/Tango.PPC.Jobs/ViewModels/JobViewVM.cs
+++ b/Software/Visual_Studio/PPC/Modules/Tango.PPC.Jobs/ViewModels/JobViewVM.cs
@@ -200,6 +200,21 @@ namespace Tango.PPC.Jobs.ViewModels
/// </summary>
public IAutoCompleteProvider TwineCatalogAutoCompleteProvider { get; set; }
+ /// <summary>
+ /// Gets or sets the coats catalog automatic complete provider.
+ /// </summary>
+ public IAutoCompleteProvider CoatsCatalogAutoCompleteProvider { get; set; }
+
+ private List<ColorCatalog> _coatsCatalogItems;
+ /// <summary>
+ /// Gets or sets the coats catalog items.
+ /// </summary>
+ public List<ColorCatalog> CoatsCatalogItems
+ {
+ get { return _coatsCatalogItems; }
+ set { _coatsCatalogItems = value; RaisePropertyChangedAuto(); }
+ }
+
#endregion
#region Commands
@@ -255,6 +270,11 @@ namespace Tango.PPC.Jobs.ViewModels
public RelayCommand<BrushStop> OpenTwineCatalogCommand { get; set; }
/// <summary>
+ /// Gets or sets the open coats catalog command.
+ /// </summary>
+ public RelayCommand<BrushStop> OpenCoatsCatalogCommand { get; set; }
+
+ /// <summary>
/// Gets or sets the increase decrease samples to dye command.
/// </summary>
public RelayCommand<String> IncreaseDecreaseSamplesToDyeCommand { get; set; }
@@ -338,6 +358,7 @@ namespace Tango.PPC.Jobs.ViewModels
FineTuneItems = new ObservableCollection<FineTuneItem>();
ApprovalFineTuneItems = new ObservableCollection<FineTuneItem>();
TwineCatalogItems = new List<ColorCatalog>();
+ CoatsCatalogItems = new List<ColorCatalog>();
CustomersAutoCompleteProvider = new AutoCompleteProvider<Customer>((customer, filter) =>
{
@@ -350,6 +371,11 @@ namespace Tango.PPC.Jobs.ViewModels
return !String.IsNullOrWhiteSpace(filter) && color.RmlGuid == Job.Rml.Guid && color.Name.ToLower().StartsWith(filter.ToLower());
});
+ CoatsCatalogAutoCompleteProvider = new AutoCompleteProvider<ColorCatalog>((color, filter) =>
+ {
+ return !String.IsNullOrWhiteSpace(filter) && color.RmlGuid == Job.Rml.Guid && color.Name.ToLower().StartsWith(filter.ToLower());
+ });
+
//Initialize Commands
AddSolidSegmentCommand = new RelayCommand(() => AddSolidSegment());
AddBrushStopCommand = new RelayCommand<Segment>(AddBrushStop);
@@ -393,6 +419,7 @@ namespace Tango.PPC.Jobs.ViewModels
RepeatFineTuningCommand = new RelayCommand(RepeatFineTuning);
ApproveFineTuningCommand = new RelayCommand(ApproveFineTuning);
OpenTwineCatalogCommand = new RelayCommand<BrushStop>(OpenTwineCatalog);
+ OpenCoatsCatalogCommand = new RelayCommand<BrushStop>(OpenCoatsCatalog);
ExportEmbroideryCommand = new RelayCommand(ExportEmbroidery);
}
@@ -448,6 +475,7 @@ namespace Tango.PPC.Jobs.ViewModels
LogManager.Log("Loading Customers...");
Customers = await _db.Customers.Where(x => x.OrganizationGuid == MachineProvider.Machine.OrganizationGuid).ToListAsync();
TwineCatalogItems = await _db.ColorCatalogs.Where(x => x.RmlGuid == Job.Rml.Guid && x.ColorSpace.Code == (int)BL.Enumerations.ColorSpaces.Twine).OrderBy(x => x.Name).ToListAsync();
+ CoatsCatalogItems = await _db.ColorCatalogs.Where(x => x.RmlGuid == Job.Rml.Guid && x.ColorSpace.Code == (int)BL.Enumerations.ColorSpaces.Coats).OrderBy(x => x.Name).ToListAsync();
foreach (var segment in Job.Segments)
{
@@ -610,13 +638,21 @@ namespace Tango.PPC.Jobs.ViewModels
protected virtual async void OnRmlChanged(object sender, Rml rml)
{
TwineCatalogItems = await _db.ColorCatalogs.Where(x => x.RmlGuid == rml.Guid && x.ColorSpace.Code == (int)BL.Enumerations.ColorSpaces.Twine).OrderBy(x => x.Name).ToListAsync();
+ CoatsCatalogItems = await _db.ColorCatalogs.Where(x => x.RmlGuid == rml.Guid && x.ColorSpace.Code == (int)BL.Enumerations.ColorSpaces.Coats).OrderBy(x => x.Name).ToListAsync();
- //Replace all brush stops color catalogs.
+ //Replace all brush stops twine color catalogs.
foreach (var stop in Job.Segments.SelectMany(x => x.BrushStops).Where(x => x.ColorCatalog != null && x.BrushColorSpace == BL.Enumerations.ColorSpaces.Twine).ToList())
{
var replacement = TwineCatalogItems.SingleOrDefault(x => x.Name == stop.ColorCatalog.Name);
stop.ColorCatalog = replacement;
}
+
+ //Replace all brush stops coats color catalogs.
+ foreach (var stop in Job.Segments.SelectMany(x => x.BrushStops).Where(x => x.ColorCatalog != null && x.BrushColorSpace == BL.Enumerations.ColorSpaces.Coats).ToList())
+ {
+ var replacement = CoatsCatalogItems.SingleOrDefault(x => x.Name == stop.ColorCatalog.Name);
+ stop.ColorCatalog = replacement;
+ }
}
#endregion
@@ -888,6 +924,20 @@ namespace Tango.PPC.Jobs.ViewModels
}
}
+ private async void OpenCoatsCatalog(BrushStop stop)
+ {
+ var catalogItem = await NavigationManager.NavigateForResult<JobsModule, CoatsCatalogView, CatalogItem, TwineCatalogNavigationObject>(new TwineCatalogNavigationObject()
+ {
+ BrushStop = stop,
+ RML = Job.Rml,
+ }, true);
+
+ if (catalogItem != null)
+ {
+ stop.ColorCatalog = CoatsCatalogItems.SingleOrDefault(x => x.Name == catalogItem.Entity.Name);
+ }
+ }
+
private void ArrangeBrushStopsIndices(Segment segment)
{
for (int i = 0; i < segment.BrushStops.Count; i++)