diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml b/src/Khd.Core.Wpf/Form/FormBoardT.xaml index e4c792f..ea57f88 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml @@ -370,28 +370,43 @@ - @@ -1255,8 +1270,36 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs index 3e847ba..ce85d74 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs @@ -311,6 +311,11 @@ namespace Khd.Core.Wpf.Form var inLocationList = allLocationLists.Where(x => x.ContainerStatus == "1").Select(x => x.locationCode).ToList(); //在库里有库存的库位 var withStockLocationList = dbContext.WmsRawStock.Where(x => x.warehouseId == 512 && inLocationList.Contains(x.locationCode)).Select(x => x.locationCode).Distinct().ToList(); + // 在库里无库存的库位 + var withoutStockLocationList = inLocationList + .Except(withStockLocationList) + .ToList(); + var locations = new List(); for (int i = 0; i < 6 * 36; i++) { @@ -320,18 +325,13 @@ namespace Khd.Core.Wpf.Form { status = LocationStatus.InAndStock; } + if (withoutStockLocationList.Contains(targetLocation.locationCode)) + { + status = LocationStatus.EmptyInStock; + } - //Location item = new Location(); - //item.Code = ""; - //item.LocationId = targetLocation.locationId; - //item.Status = status; - //if (i < 36) - //{ - // item.Code = targetLocation.locColumn.ToString(); - //} - //locations.Add(item); - - locations.Add(new Location { LocationId = targetLocation.locationId, Code = targetLocation.locColumn.ToString(), Status = status }); + Visibility isFreeze = targetLocation.locationStatus == "1" ? Visibility.Collapsed : Visibility.Visible; + locations.Add(new Location { LocationId = targetLocation.locationId, Code = targetLocation.locColumn.ToString(), Status = status ,isFreeze = isFreeze}); } LocationsControl.ItemsSource = locations; diff --git a/src/Khd.Core.Wpf/dto/Location.cs b/src/Khd.Core.Wpf/dto/Location.cs index b54a5b2..5d50a69 100644 --- a/src/Khd.Core.Wpf/dto/Location.cs +++ b/src/Khd.Core.Wpf/dto/Location.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using System.Windows; namespace Khd.Core.Wpf.dto { @@ -11,14 +12,16 @@ namespace Khd.Core.Wpf.dto public long LocationId { get; set; } // 新增 LocationId public string Code { get; set; } public LocationStatus Status { get; set; } + + public Visibility isFreeze { get; set; } } public enum LocationStatus { // 在库有库存 InAndStock, - //// 在库无库存 - //InNoStock, + //// 空料箱在库无库存 + EmptyInStock, //库外 OutOfStock,