Browse Source

Removed StagingBOM and renamed StagingBOMItem to StagingSetoutComponent.

Kenric Nugteren 1 year ago
parent
commit
48b42d1a5c

+ 0 - 13
prs.classes/Entities/Staging/BOM/StagingBOM.cs

@@ -1,13 +0,0 @@
-using InABox.Core;
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace Comal.Classes
-{
-    public class StagingBOM : Entity, IRemotable, IPersistent
-    {
-        public string FileName { get; set; }
-
-    }
-}

+ 0 - 12
prs.classes/Entities/Staging/BOM/StagingBOMLink.cs

@@ -1,12 +0,0 @@
-using InABox.Core;
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace Comal.Classes
-{
-    public class StagingBOMLink : EntityLink<StagingBOM>
-    {
-        public override Guid ID { get; set; }
-    }
-}

+ 2 - 7
prs.classes/Entities/Staging/BOM/StagingBOMItem.cs → prs.classes/Entities/Staging/Component/StagingSetoutComponent.cs

@@ -6,7 +6,7 @@ using System.Text;
 
 namespace Comal.Classes
 {
-    public class StagingBOMItem : DimensionedEntity<ProductDimensions>, IRemotable, IPersistent, IOneToMany<StagingBOM>
+    public class StagingSetoutComponent : DimensionedEntity<ProductDimensions>, IRemotable, IPersistent, IOneToMany<StagingSetout>
     {
         [EditorSequence(1)]
         public ProductLink Product { get; set; }
@@ -18,9 +18,6 @@ namespace Comal.Classes
         [EditorSequence(3)]
         public int Quantity { get; set; }
 
-        [NullEditor]
-        public StagingBOMLink StagingBOM { get; set; }
-
         [NullEditor]
         public StagingSetoutLink StagingSetout { get; set; }
 
@@ -34,18 +31,16 @@ namespace Comal.Classes
         {
             base.Init();
 
-            StagingBOM = new StagingBOMLink();
             StagingSetout = new StagingSetoutLink();
             Product = new ProductLink(() => this);
             Dimensions = new ProductDimensions(() => this);
             StagingManufacturingPacket = new StagingManufacturingPacketLink();
         }
 
-        public void CopyFrom(StagingBOMItem source, bool observing = false)
+        public void CopyFrom(StagingSetoutComponent source, bool observing = false)
         {
             if (!observing)
                 SetObserving(false);
-            StagingBOM.ID = source.StagingBOM.ID;
             StagingSetout.ID = source.StagingSetout.ID;
             Product.ID = source.Product.ID;
             StagingManufacturingPacket.ID = source.StagingManufacturingPacket.ID;

+ 0 - 14
prs.desktop/Panels/Staging/BOM/StagingBOMGrid.cs

@@ -1,14 +0,0 @@
-using Comal.Classes;
-using InABox.DynamicGrid;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace PRSDesktop
-{
-    public class StagingBOMGrid : DynamicDataGrid<StagingBOM>
-    {
-    }
-}

+ 13 - 14
prs.desktop/Panels/Staging/BOM/StagingBOMItemGrid.cs → prs.desktop/Panels/Staging/Component/StagingSetoutComponentGrid.cs

@@ -13,7 +13,7 @@ using System.Windows.Controls;
 
 namespace PRSDesktop
 {
-    public class StagingBOMItemGrid : DynamicDataGrid<StagingBOMItem>
+    public class StagingSetoutComponentGrid : DynamicDataGrid<StagingSetoutComponent>
     {
         private StagingSetout? _stagingSetout = null;
         public StagingSetout? StagingSetout
@@ -31,7 +31,7 @@ namespace PRSDesktop
             }
         }
 
-        public StagingBOMItemGrid()
+        public StagingSetoutComponentGrid()
         {
             HiddenColumns.Add(x => x.Dimensions.Length);
             HiddenColumns.Add(x => x.Dimensions.Width);
@@ -44,7 +44,6 @@ namespace PRSDesktop
             HiddenColumns.Add(x => x.Quantity);
             HiddenColumns.Add(x => x.Product.ID);
             HiddenColumns.Add(x => x.Sequence);
-            HiddenColumns.Add(x => x.StagingBOM.ID);
             HiddenColumns.Add(x => x.StagingSetout.ID);
             HiddenColumns.Add(x => x.StagingManufacturingPacket.ID);
 
@@ -58,7 +57,7 @@ namespace PRSDesktop
                 return false;
             }
 
-            var quantity = row.Get<StagingBOMItem, int>(x => x.Quantity);
+            var quantity = row.Get<StagingSetoutComponent, int>(x => x.Quantity);
 
             if(quantity <= 1)
             {
@@ -71,18 +70,18 @@ namespace PRSDesktop
             {
                 if (value >= 1 && value < quantity)
                 {
-                    var item = row.ToObject<StagingBOMItem>();
+                    var item = row.ToObject<StagingSetoutComponent>();
                     var newItem = CreateItem();
                     newItem.CopyFrom(item);
                     newItem.Quantity = quantity - value;
                     newItem.Sequence = item.Sequence + 1;
                     item.Quantity = value;
 
-                    var items = new List<StagingBOMItem> { item, newItem };
+                    var items = new List<StagingSetoutComponent> { item, newItem };
                     var s = newItem.Sequence + 2;
                     for (int j = row.Index + 1; j < Data.Rows.Count; ++j, ++s)
                     {
-                        var sequencedItem = Data.Rows[j].ToObject<StagingBOMItem>();
+                        var sequencedItem = Data.Rows[j].ToObject<StagingSetoutComponent>();
                         sequencedItem.Sequence = s;
                         items.Add(sequencedItem);
                     }
@@ -98,11 +97,11 @@ namespace PRSDesktop
             return false;
         }
 
-        protected override StagingBOMItem CreateItem()
+        protected override StagingSetoutComponent CreateItem()
         {
             var item = base.CreateItem();
             item.StagingSetout.ID = StagingSetout?.ID ?? Guid.Empty;
-            item.Sequence = Data.Rows.Last().Get<StagingBOMItem, long>(x => x.Sequence) + 1;
+            item.Sequence = Data.Rows.Last().Get<StagingSetoutComponent, long>(x => x.Sequence) + 1;
             return item;
         }
 
@@ -128,21 +127,21 @@ namespace PRSDesktop
             return effect;
         }
 
-        protected override void Reload(Filters<StagingBOMItem> criteria, Columns<StagingBOMItem> columns, ref SortOrder<StagingBOMItem>? sort, Action<CoreTable?, Exception?> action)
+        protected override void Reload(Filters<StagingSetoutComponent> criteria, Columns<StagingSetoutComponent> columns, ref SortOrder<StagingSetoutComponent>? sort, Action<CoreTable?, Exception?> action)
         {
             if (sort == null)
-                sort = new SortOrder<StagingBOMItem>(x => x.Sequence);
+                sort = new SortOrder<StagingSetoutComponent>(x => x.Sequence);
             else
                 sort.ThenBy(x => x.Sequence);
 
             if (StagingSetout is null)
             {
-                criteria.Add(new Filter<StagingBOMItem>().None());
+                criteria.Add(new Filter<StagingSetoutComponent>().None());
             }
             else
             {
-                criteria.Add(new Filter<StagingBOMItem>(x => x.StagingSetout.ID).IsEqualTo(StagingSetout.ID));
-                criteria.Add(new Filter<StagingBOMItem>(x => x.StagingManufacturingPacket.ID).IsEqualTo(Guid.Empty));
+                criteria.Add(new Filter<StagingSetoutComponent>(x => x.StagingSetout.ID).IsEqualTo(StagingSetout.ID));
+                criteria.Add(new Filter<StagingSetoutComponent>(x => x.StagingManufacturingPacket.ID).IsEqualTo(Guid.Empty));
             }
             base.Reload(criteria, columns, ref sort, action);
         }

+ 3 - 3
prs.desktop/Panels/Staging/Manufacturing/StagingManufacturingPacketComponentGrid.cs

@@ -79,10 +79,10 @@ namespace PRSDesktop
         {
             base.OnDragEnd(entity, table, e);
 
-            if(entity == typeof(StagingBOMItem))
+            if(entity == typeof(StagingSetoutComponent))
             {
                 var components = new List<StagingManufacturingPacketComponent>();
-                var bomItems = table.ToObjects<StagingBOMItem>().ToList();
+                var bomItems = table.ToObjects<StagingSetoutComponent>().ToList();
                 foreach (var bomItem in bomItems)
                 {
                     var component = CreateItem();
@@ -92,7 +92,7 @@ namespace PRSDesktop
                     components.Add(component);
                     bomItem.StagingManufacturingPacket.ID = Packet.ID;
                 }
-                new Client<StagingBOMItem>().Save(bomItems, "Added to packet.");
+                new Client<StagingSetoutComponent>().Save(bomItems, "Added to packet.");
                 SaveItems(components.ToArray());
 
                 Refresh(false, true);

+ 11 - 8
prs.desktop/Panels/Staging/StagingPanel.xaml

@@ -6,6 +6,7 @@
              xmlns:dynamicgrid="clr-namespace:InABox.DynamicGrid;assembly=InABox.Wpf"
              xmlns:local="clr-namespace:PRSDesktop"
              xmlns:wpf="clr-namespace:InABox.Wpf;assembly=InABox.Wpf"
+             xmlns:sf="http://schemas.syncfusion.com/wpf"
              mc:Ignorable="d" 
              d:DesignHeight="450" d:DesignWidth="800">
 
@@ -21,7 +22,6 @@
             <Grid x:Name="masterGrid">
                 <Grid.RowDefinitions>
                     <RowDefinition Height="*"/>
-                    <RowDefinition Height="*"/>
                 </Grid.RowDefinitions>
                 <local:StagingSetoutGrid 
                     Grid.Row="0" 
@@ -29,10 +29,6 @@
                     OnCustomiseSetouts="stagingSetoutGrid_OnCustomiseSetouts" 
                     OnDoubleClick="StagingSetoutGrid_OnOnDoubleClick"
                     OnSelectItem="StagingSetoutGrid_OnSelectItem"/>
-                <local:StagingBOMGrid x:Name="BOMGrid"
-                                      OnChanged="BOMGrid_OnChanged"
-                                      Grid.Row="1"
-                                      Margin="0,5,0,0"/>
             </Grid>
         </dynamicgrid:DynamicSplitPanel.Master>
         
@@ -131,9 +127,16 @@
                             <RowDefinition Height="Auto"/>
                         </Grid.RowDefinitions>
                         <local:StagingManufacturingPacketList x:Name="ManufacturingPacketList" OnCollapsed="ManufacturingPacketList_OnCollapsed"
-                                                            Grid.Row="0" Changed="ManufacturingPacketList_OnChanged"/>
-                        <GridSplitter Grid.Row="1"/>
-                        <local:StagingBOMItemGrid x:Name="BOMItemGrid"
+                                                              Grid.Row="0" Changed="ManufacturingPacketList_OnChanged"
+                                                              Margin="0,0,0,2"/>
+                        <sf:SfGridSplitter Grid.Row="1"
+                                           Height="4"
+                                           HorizontalAlignment="Stretch"
+                                           Background="Transparent"
+                                           ResizeBehavior="PreviousAndNext"
+                                           Template="{StaticResource HorizontalSplitter}"
+                                           PreviewStyle="{StaticResource HorizontalSplitterPreview}"/>
+                        <local:StagingSetoutComponentGrid x:Name="SetoutComponentGrid"
                                                   Grid.Row="2"
                                                   Margin="0,5,0,0"/>
                         <DockPanel 

+ 8 - 9
prs.desktop/Panels/Staging/StagingPanel.xaml.cs

@@ -151,8 +151,7 @@ public class Module
 
             //stagingSetoutGrid.ScanFiles(_settings.SetoutsFolder);
             stagingSetoutGrid.Refresh(true, false);
-            BOMGrid.Refresh(true, false);
-            BOMItemGrid.Refresh(true, false);
+            SetoutComponentGrid.Refresh(true, false);
             
         }
 
@@ -163,7 +162,7 @@ public class Module
             if(CanViewPackets())
             {
                 ManufacturingPacketList.Setout = selectedSetout;
-                BOMItemGrid.StagingSetout = selectedSetout;
+                SetoutComponentGrid.StagingSetout = selectedSetout;
             }
         }
 
@@ -694,7 +693,7 @@ public class Module
                 Document = null;
                 ManufacturingPacketList.Setout = null;
                 CollapsePacketsButton.IsEnabled = false;
-                BOMItemGrid.StagingSetout = null;
+                SetoutComponentGrid.StagingSetout = null;
                 SetMode(DocumentMode.Markup);
                 return;
             }
@@ -714,7 +713,7 @@ public class Module
                 Document = null;
                 ManufacturingPacketList.Setout = null;
                 CollapsePacketsButton.IsEnabled = false;
-                BOMItemGrid.StagingSetout = null;
+                SetoutComponentGrid.StagingSetout = null;
                 return;
             }
 
@@ -722,7 +721,7 @@ public class Module
             if(CanViewPackets())
             {
                 ManufacturingPacketList.Setout = selectedSetout;
-                BOMItemGrid.StagingSetout = selectedSetout;
+                SetoutComponentGrid.StagingSetout = selectedSetout;
             }
             CollapsePacketsButton.IsEnabled = true;
             var mode =
@@ -834,7 +833,7 @@ public class Module
             Document = null;
 
             ManufacturingPacketList.Setout = null;
-            BOMItemGrid.StagingSetout = null;
+            SetoutComponentGrid.StagingSetout = null;
             CalculateTime();
         }
 
@@ -954,7 +953,7 @@ public class Module
         private void StagingSetoutGrid_OnOnDoubleClick(object sender, HandledEventArgs args)
         {
             ManufacturingPacketList.Setout = selectedSetout;
-            BOMItemGrid.StagingSetout = selectedSetout;
+            SetoutComponentGrid.StagingSetout = selectedSetout;
             MainPanel.View = DynamicSplitPanelView.Detail;
             NestedPanel.View = DynamicSplitPanelView.Combined;
             args.Handled = true;
@@ -981,7 +980,7 @@ public class Module
         {
             if (CanViewPackets())
             {
-                BOMItemGrid.Refresh(false, true);
+                SetoutComponentGrid.Refresh(false, true);
             }
         }
     }