master
liuwf 1 year ago
parent 9e8547ba95
commit fc13dea344

@ -370,28 +370,43 @@
<DataTemplate x:Key="LocationTemplate">
<Button Content="{Binding}" Click="LocationButton_Click" Height="50" Margin="0 0 5 10">
<Button Content="{Binding}" Click="LocationButton_Click" Height="50" Margin="0 0 2 2">
<Button.Style>
<Style TargetType="Button">
<!--有库存绿色#75F76D无库存但是有空料箱#D78E28无库存无料箱#4789AE库位禁用有个小红点-->
<Setter Property="Background" Value="#75F76D"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Status}" Value="OutOfStock">
<Setter Property="Background" Value="#4789AE"/>
</DataTrigger>
<DataTrigger Binding="{Binding Status}" Value="EmptyInStock">
<Setter Property="Background" Value="#D78E28"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
<Button.ContentTemplate>
<DataTemplate>
<TextBlock Text="{Binding Code}"
VerticalAlignment="Center"
HorizontalAlignment="Center"
FontSize="20"
RenderTransformOrigin="0.5, 0.5">
<TextBlock.RenderTransform>
<RotateTransform Angle="90"/>
</TextBlock.RenderTransform>
</TextBlock>
<Grid>
<!-- 主内容 -->
<TextBlock Text="{Binding Code}"
VerticalAlignment="Center"
HorizontalAlignment="Center"
FontSize="20"
RenderTransformOrigin="0.5, 0.5">
<TextBlock.RenderTransform>
<RotateTransform Angle="90"/>
</TextBlock.RenderTransform>
</TextBlock>
<!-- 圆点 -->
<Ellipse Width="5" Height="5"
VerticalAlignment="Top"
HorizontalAlignment="Right"
Margin="0,0,0,0"
Fill="Red" Visibility="{Binding isFreeze}"/>
</Grid>
</DataTemplate>
</Button.ContentTemplate>
</Button>
@ -1255,8 +1270,36 @@
<ComboBoxItem Content="南侧" Tag="1" />
<ComboBoxItem Content="北侧" Tag="2" />
</ComboBox>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="600 0 0 0">
<Rectangle Width="50" Height="50" Fill="#75F76D" />
<TextBlock Text=" 有库存" FontSize="30"/>
</StackPanel>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="30 0 0 0">
<Rectangle Width="50" Height="50" Fill="#D78E28" />
<TextBlock Text=" 空料箱在库里" FontSize="30"/>
</StackPanel>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="30 0 0 0">
<Rectangle Width="50" Height="50" Fill="#4789AE" />
<TextBlock Text=" 空库位" FontSize="30"/>
</StackPanel>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="30 0 0 0">
<!-- 包含透明正方形和红点的 Canvas -->
<Canvas Width="50" Height="50" VerticalAlignment="Center" HorizontalAlignment="Center">
<!-- 透明的正方形 -->
<Rectangle Width="50" Height="50" Fill="Transparent" Stroke="Black" StrokeThickness="1"/>
<!-- 中间的红点 -->
<Ellipse Width="10" Height="10" Fill="Red"
Canvas.Left="20" Canvas.Top="20" />
</Canvas>
<TextBlock Text=" 库位锁定" FontSize="30"/>
</StackPanel>
</StackPanel>
</Grid>
<Grid Grid.Row="1">
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">

@ -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<Location>();
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;

@ -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,

Loading…
Cancel
Save