aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy.mail.net@gmail.com>2021-11-01 19:44:34 +0200
committerRoy Ben Shabat <Roy.mail.net@gmail.com>2021-11-01 19:44:34 +0200
commitbab9f04ae0f251acdb759e72fb54d84d042c533e (patch)
tree6df0d31b90ee7c9c7075c0f45c5fc6a09ab1b3ab /Software/Visual_Studio/MachineStudio/Modules
parentd2a95e54a3ae4fb7ff8b29bd85bb221cf3769a1f (diff)
downloadTango-bab9f04ae0f251acdb759e72fb54d84d042c533e.tar.gz
Tango-bab9f04ae0f251acdb759e72fb54d84d042c533e.zip
Added Ha Amma spool support via sites.
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/ViewModels/SiteDetailsViewVM.cs24
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/Views/SiteDetailsView.xaml24
2 files changed, 46 insertions, 2 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/ViewModels/SiteDetailsViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/ViewModels/SiteDetailsViewVM.cs
index cacda1e8d..02c9f4346 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/ViewModels/SiteDetailsViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/ViewModels/SiteDetailsViewVM.cs
@@ -63,6 +63,14 @@ namespace Tango.MachineStudio.Sites.ViewModels
set { _machines = value; RaisePropertyChangedAuto(); }
}
+ private SelectedObjectCollection<SpoolType> _spoolTypes;
+ public SelectedObjectCollection<SpoolType> SpoolTypes
+ {
+ get { return _spoolTypes; }
+ set { _spoolTypes = value; RaisePropertyChangedAuto(); }
+ }
+
+
public RelayCommand SaveCommand { get; set; }
public SiteDetailsViewVM()
@@ -97,6 +105,7 @@ namespace Tango.MachineStudio.Sites.ViewModels
.WithSiteRmls()
.WithRmls()
.WithOrganization()
+ .WithSpoolTypes()
.BuildAsync();
}
@@ -104,9 +113,18 @@ namespace Tango.MachineStudio.Sites.ViewModels
var rmls = await _db.Rmls.OrderBy(x => x.Name).ToListAsync();
var catalogs = await _db.ColorCatalogs.OrderBy(x => x.Name).ToListAsync();
+ var spoolTypes = await _db.SpoolTypes.OrderBy(x => x.LastUpdated).ToListAsync();
Rmls = new SelectedObjectCollection<Rml>(rmls.ToObservableCollection(), Site.SitesRmls.Select(x => x.Rml).ToObservableCollection());
Catalogs = new SelectedObjectCollection<ColorCatalog>(catalogs.ToObservableCollection(), Site.SitesCatalogs.Select(x => x.ColorCatalog).ToObservableCollection());
+ SpoolTypes = new SelectedObjectCollection<SpoolType>(spoolTypes.ToObservableCollection(), Site.SitesSpoolTypes.Select(x => x.SpoolType).ToObservableCollection());
+
+ var standardSpool = SpoolTypes.FirstOrDefault(x => x.Data.Name == "Standard Spool");
+ if (standardSpool != null)
+ {
+ standardSpool.IsEnabled = false;
+ standardSpool.IsSelected = true;
+ }
_siteBeforeSave = SiteDTO.FromObservable(Site);
}
@@ -134,6 +152,7 @@ namespace Tango.MachineStudio.Sites.ViewModels
//Remove site rmls.
Site.SitesRmls.ToList().Where(x => !Rmls.SynchedSource.ToList().Exists(y => y.Guid == x.RmlGuid)).ToList().ForEach(x => _db.SitesRmls.Remove(x));
Site.SitesCatalogs.ToList().Where(x => !Catalogs.SynchedSource.ToList().Exists(y => y.Guid == x.ColorCatalogGuid)).ToList().ForEach(x => _db.SitesCatalogs.Remove(x));
+ Site.SitesSpoolTypes.ToList().Where(x => !SpoolTypes.SynchedSource.ToList().Exists(y => y.Guid == x.SpoolTypeGuid)).ToList().ForEach(x => _db.SitesSpoolTypes.Remove(x));
foreach (var selectedRml in Rmls.SynchedSource.Where(x => !Site.SitesRmls.ToList().Exists(y => y.RmlGuid == x.Guid)))
{
@@ -145,6 +164,11 @@ namespace Tango.MachineStudio.Sites.ViewModels
_db.SitesCatalogs.Add(new SitesCatalog() { SiteGuid = Site.Guid, ColorCatalogGuid = selectedCatalog.Guid });
}
+ foreach (var selectedSpoolType in SpoolTypes.SynchedSource.Where(x => !Site.SitesSpoolTypes.ToList().Exists(y => y.SpoolTypeGuid == x.Guid)))
+ {
+ _db.SitesSpoolTypes.Add(new SitesSpoolType() { SiteGuid = Site.Guid, SpoolTypeGuid = selectedSpoolType.Guid });
+ }
+
await _db.SaveChangesAsync();
if (_isNew)
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/Views/SiteDetailsView.xaml b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/Views/SiteDetailsView.xaml
index 182f05be0..b4da6f35c 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/Views/SiteDetailsView.xaml
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Sites/Views/SiteDetailsView.xaml
@@ -109,9 +109,9 @@
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
+ <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
-
<DockPanel Margin="10">
<TextBlock DockPanel.Dock="Top" FontSize="16">SITE RML</TextBlock>
@@ -131,7 +131,6 @@
</materialDesign:Card>
</DockPanel>
-
<DockPanel Margin="10" Grid.Column="1">
<TextBlock DockPanel.Dock="Top" FontSize="16" Text="SITE CATALOGS"/>
<materialDesign:Card Margin="0 5 0 0" Background="{DynamicResource MaterialDesignBackground}" VerticalAlignment="Stretch">
@@ -151,6 +150,27 @@
</DockPanel>
<DockPanel Margin="10" Grid.Column="2">
+ <TextBlock DockPanel.Dock="Top" FontSize="16">SITE SPOOL TYPES</TextBlock>
+
+ <materialDesign:Card Margin="0 5 0 0" Background="{DynamicResource MaterialDesignBackground}" VerticalAlignment="Stretch">
+ <DataGrid ItemsSource="{Binding SpoolTypes}" Style="{StaticResource GridStyle}" CellStyle="{StaticResource CellStyle}">
+ <DataGrid.Columns>
+ <DataGridTemplateColumn Header="" Width="Auto">
+ <DataGridTemplateColumn.CellTemplate>
+ <DataTemplate>
+ <CheckBox IsEnabled="{Binding IsEnabled}" IsChecked="{Binding IsSelected,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}">
+
+ </CheckBox>
+ </DataTemplate>
+ </DataGridTemplateColumn.CellTemplate>
+ </DataGridTemplateColumn>
+ <DataGridTextColumn Header="NAME" IsReadOnly="True" Binding="{Binding Data.Name}" Width="1*" />
+ </DataGrid.Columns>
+ </DataGrid>
+ </materialDesign:Card>
+ </DockPanel>
+
+ <DockPanel Margin="10" Grid.Column="3">
<TextBlock DockPanel.Dock="Top" FontSize="16" Text="SITE MACHINES"/>
<materialDesign:Card Margin="0 5 0 0" Background="{DynamicResource MaterialDesignBackground}" VerticalAlignment="Stretch">
<DataGrid ItemsSource="{Binding Machines}" Style="{StaticResource GridStyle}" CellStyle="{StaticResource CellStyle}">