change -工单检索并显示

main
frankiecao 1 year ago
commit ca66b198f8

@ -0,0 +1,80 @@
using SlnMesnac.Model.domain;
using SlnMesnac.Repository.service;
using System;
using System.Collections.Generic;
using System.Text;
namespace SlnMesnac.Business.business
{
public class DatabaseHandleBusniess
{
private ProdPlanInfoService _prodPlanInfoService;
private List<ProdPLanInfo> prodPlanInfos;
public DatabaseHandleBusniess(ProdPlanInfoService prodPlanInfoService)
{
_prodPlanInfoService = prodPlanInfoService;
prodPlanInfos = _prodPlanInfoService.GetRecordStaffAttendances();
}
/// <summary>
/// 查询所有计划工位
/// </summary>
/// <returns></returns>
public List<string> GetProductLineCodes()
{
List<string> productLineCodes = new List<string>();
foreach (var prodPlanInfo in prodPlanInfos)
{
productLineCodes.Add(prodPlanInfo.StationCode);
}
return productLineCodes;
}
/// <summary>
/// 查询所有工单编号
/// </summary>
/// <returns></returns>
public List<string> GetPlanCodes()
{
List<string> planCodes = new List<string>();
foreach (var prodPlanInfo in prodPlanInfos)
{
planCodes.Add(prodPlanInfo.PlanCode);
}
return planCodes;
}
/// <summary>
/// 查询所有订单编号
/// </summary>
/// <returns></returns>
public List<string> GetOrderCodes()
{
List<string> orderCodes = new List<string>();
foreach (var prodPlanInfo in prodPlanInfos)
{
orderCodes.Add(prodPlanInfo.OrderCode);
}
return orderCodes;
}
/// <summary>
/// 查询所有物料名称
/// </summary>
/// <returns></returns>
public List<string> GetMaterialNames()
{
List<string> materialNames = new List<string>();
foreach (var prodPlanInfo in prodPlanInfos)
{
materialNames.Add(prodPlanInfo.MaterialName);
}
return materialNames;
}
}
}

@ -31,279 +31,105 @@ namespace SlnMesnac.Model.domain
{ {
[SugarTable("BasMaterial"), TenantAttribute("mes")] [SugarTable("base_material_info"), TenantAttribute("mes")]
[DataContract(Name = "BasMaterial 物料信息")] [DataContract(Name = "BaseMMaterialInfo 物料信息")]
#pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable. #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable.
public class BaseMaterialInfo public class BaseMaterialInfo
{ {
/// <summary> /// <summary>
/// ///
///</summary> ///</summary>
[SugarColumn(ColumnName = "ObjID", IsPrimaryKey = true)] [SugarColumn(ColumnName = "obj_id", IsPrimaryKey = true)]
public int ObjID { get; set; } public int ObjId { get; set; }
/// <summary> /// <summary>
/// 大类+小类+规格+胶代码或最后4顺序号 /// 物料编码
///</summary> ///</summary>
[SugarColumn(ColumnName = "MaterialCode")] [SugarColumn(ColumnName = "material_code")]
public string MaterialCode { get; set; } public string MaterialCode { get; set; }
/// <summary> /// <summary>
/// /// 物料名称
///</summary> ///</summary>
[SugarColumn(ColumnName = "MajorTypeID")] [SugarColumn(ColumnName = "material_name")]
public int? MajorTypeID { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "MinorTypeID")]
public string MinorTypeID { get; set; }
/// <summary>
///
/// 默认值: ('')
///</summary>
[SugarColumn(ColumnName = "RubCode")]
public string RubCode { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "MaterialName")]
public string MaterialName { get; set; } public string MaterialName { get; set; }
/// <summary> /// <summary>
/// /// 物料大类
///</summary> ///</summary>
[SugarColumn(ColumnName = "MaterialOtherName")] [SugarColumn(ColumnName = "material_categories")]
public string MaterialOtherName { get; set; } public string MaterialCategories { get; set; }
/// <summary> /// <summary>
/// /// 物料小类
///</summary> ///</summary>
[SugarColumn(ColumnName = "MaterialSimpleName")] [SugarColumn(ColumnName = "material_subclass")]
public string MaterialSimpleName { get; set; } public string MaterialSubclass { get; set; }
/// <summary> /// <summary>
/// /// SAP物料类型
///</summary> ///</summary>
[SugarColumn(ColumnName = "ProductMaterialCode")] [SugarColumn(ColumnName = "material_type")]
public string ProductMaterialCode { get; set; } public string MaterialType { get; set; }
/// <summary> /// <summary>
/// /// 计量单位
///</summary> ///</summary>
[SugarColumn(ColumnName = "MaterialLevel")] [SugarColumn(ColumnName = "material_unit")]
public string MaterialLevel { get; set; } public string MaterialUnit { get; set; }
/// <summary> /// <summary>
/// /// 单位工资
///</summary> ///</summary>
[SugarColumn(ColumnName = "MaterialGroup")] [SugarColumn(ColumnName = "unit_price")]
public string MaterialGroup { get; set; } public string UnitlPrice { get; set; }
/// <summary> /// <summary>
/// /// 物料型号
///</summary> ///</summary>
[SugarColumn(ColumnName = "UserCode")] [SugarColumn(ColumnName = "material_specifications")]
public string UserCode { get; set; } public string MaterialSpecifications { get; set; }
/// <summary> /// <summary>
/// /// 工厂编号
///</summary> ///</summary>
[SugarColumn(ColumnName = "PlanPrice")] [SugarColumn(ColumnName = "factory_code")]
public decimal? PlanPrice { get; set; } public string FactoryCode { get; set; }
/// <summary> /// <summary>
/// 具体到县级市长度为6国外的只具体国家 /// 所属工位
///</summary> ///</summary>
[SugarColumn(ColumnName = "ProductArea")] [SugarColumn(ColumnName = "product_line_code")]
public string ProductArea { get; set; } public string ProductLineCode { get; set; }
/// <summary> /// <summary>
/// /// 是否标识
///</summary> ///</summary>
[SugarColumn(ColumnName = "MinStock")] [SugarColumn(ColumnName = "is_flag")]
public decimal? MinStock { get; set; } public string IsFlag { get; set; }
/// <summary> /// <summary>
/// /// 创建人
///</summary> ///</summary>
[SugarColumn(ColumnName = "MaxStock")] [SugarColumn(ColumnName = "create_by")]
public decimal? MaxStock { get; set; } public string CreateBy { get; set; }
/// <summary> /// <summary>
/// 千克,克,块,桶,升 /// 创建时间
///</summary> ///</summary>
[SugarColumn(ColumnName = "UnitID")] [SugarColumn(ColumnName = "create_time")]
public int? UnitID { get; set; } public string CreateTime { get; set; }
/// <summary> /// <summary>
/// /// 更新人
///</summary> ///</summary>
[SugarColumn(ColumnName = "StaticUnitID")] [SugarColumn(ColumnName = "update_by")]
public int? StaticUnitID { get; set; } public string UpdateBy { get; set; }
/// <summary> /// <summary>
/// /// 更新时间
///</summary> ///</summary>
[SugarColumn(ColumnName = "StaticUnitCoefficient")] [SugarColumn(ColumnName = "update_time")]
public decimal? StaticUnitCoefficient { get; set; } public string UpdateTime { get; set; }
/// <summary> /// <summary>
/// 显为百分比 /// 增量日期
///</summary> ///</summary>
[SugarColumn(ColumnName = "CheckPermitError")] [SugarColumn(ColumnName = "increment_date")]
public decimal? CheckPermitError { get; set; } public string IncrementDate { get; set; }
/// <summary> /// <summary>
/// 按小时计算 /// 商品编码
///</summary> ///</summary>
[SugarColumn(ColumnName = "MaxParkTime")] [SugarColumn(ColumnName = "product_code")]
public decimal? MaxParkTime { get; set; } public string ProductCode { get; set; }
/// <summary> /// <summary>
/// 小时计算 /// 商品名称
///</summary> ///</summary>
[SugarColumn(ColumnName = "MinParkTime")] [SugarColumn(ColumnName = "product_name")]
public decimal? MinParkTime { get; set; } public string ProductName { get; set; }
/// <summary>
///
/// 默认值: (getdate())
///</summary>
[SugarColumn(ColumnName = "DefineDate")]
public DateTime? DefineDate { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "StandardCode")]
public string StandardCode { get; set; }
/// <summary>
///
/// 默认值: ((1))
///</summary>
[SugarColumn(ColumnName = "StaticClass")]
public int? StaticClass { get; set; }
/// <summary>
///
/// 默认值: ((0))
///</summary>
[SugarColumn(ColumnName = "IsEqualMaterial")]
public string IsEqualMaterial { get; set; }
/// <summary>
///
/// 默认值: ((0))
///</summary>
[SugarColumn(ColumnName = "IsPutJar")]
public string IsPutJar { get; set; }
/// <summary>
///
/// 默认值: ((1))
///</summary>
[SugarColumn(ColumnName = "IsQualityRateCount")]
public string IsQualityRateCount { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "ERPCode")]
public string ERPCode { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "Remark")]
public string Remark { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "DeleteFlag")]
public string DeleteFlag { get; set; }
/// <summary>
///
/// 默认值: ((0))
///</summary>
[SugarColumn(ColumnName = "ValidDate")]
public decimal ValidDate { get; set; }
/// <summary>
///
/// 默认值: ((0))
///</summary>
[SugarColumn(ColumnName = "ValidDateB")]
public decimal ValidDateB { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "SAPMaterialCode")]
public string SAPMaterialCode { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "SAPMaterialShortCode")]
public string SAPMaterialShortCode { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "ERPCode_Bak")]
public string ErpcodeBak { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "OperSourceTemp")]
public string OperSourceTemp { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "IsQualityrateCountBak")]
public int? IsQualityrateCountBak { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "CMaterialLevel")]
public string CMaterialLevel { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "CMaterialGroup")]
public string CMaterialGroup { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "XBStock")]
public decimal? XBStock { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "HFCode")]
public string HFCode { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "HFCode2")]
public string HFCode2 { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "UNITName")]
public string UNITName { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "KFACSTATUS")]
public string Kfacstatus { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "Ordertype")]
public string Ordertype { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "CreateDate")]
public string CreateDate { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "UpdateDate")]
public string UpdateDate { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "UnAudit")]
public string UnAudit { get; set; }
/// <summary>
///
///</summary>
[SugarColumn(ColumnName = "ChkStand")]
public string ChkStand { get; set; }
/// <summary>
/// 1 KG 2 PC 3 标准KG
/// 默认值: ((1))
///</summary>
[SugarColumn(ColumnName = "SapUpUnit")]
public int? SapUpUnit { get; set; }
/// <summary>
/// 是否为轨道事业部物料0不是1
///</summary>
[SugarColumn(ColumnName = "IsGDMaterial")]
public int? IsGDMaterial { get; set; }
} }
} }

@ -43,8 +43,8 @@ namespace SlnMesnac.Model.domain
/// <summary> /// <summary>
/// 计划工位 /// 计划工位
/// </summary> /// </summary>
[SugarColumn(ColumnName = "product_line_code")] [SugarColumn(ColumnName = "station_code")]
public string ProductLineCode { get; set; } public string StationCode { get; set; }
/// <summary> /// <summary>
/// 计划班组 /// 计划班组
@ -111,6 +111,5 @@ namespace SlnMesnac.Model.domain
/// </summary> /// </summary>
[SugarColumn(ColumnName = "device_code")] [SugarColumn(ColumnName = "device_code")]
public string DeviceCode { get; set; } public string DeviceCode { get; set; }
} }
} }

@ -69,7 +69,7 @@ namespace SlnMesnac.Repository.service.Impl
BaseMaterialInfo materialInfo = null; BaseMaterialInfo materialInfo = null;
try try
{ {
materialInfo = base._rep.GetFirst(x => x.SAPMaterialCode == sapMaterialCode); //materialInfo = base._rep.GetFirst(x => x.SAPMaterialCode == sapMaterialCode);
} }
catch (Exception ex) catch (Exception ex)
{ {
@ -111,11 +111,11 @@ namespace SlnMesnac.Repository.service.Impl
if (majorTypeId != 0) if (majorTypeId != 0)
{ {
exp = exp.And(x => x.MajorTypeID == majorTypeId); //exp = exp.And(x => x.MajorTypeID == majorTypeId);
} }
else if (!string.IsNullOrEmpty(minorTypeId)) else if (!string.IsNullOrEmpty(minorTypeId))
{ {
exp = exp.And(x => x.MinorTypeID == minorTypeId); //exp = exp.And(x => x.MinorTypeID == minorTypeId);
} }
materialInfos = base._rep.GetList(exp); materialInfos = base._rep.GetList(exp);

@ -4,13 +4,14 @@ using SlnMesnac.Model.domain;
using SlnMesnac.Repository.service.@base; using SlnMesnac.Repository.service.@base;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.Design;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using System.Text; using System.Text;
namespace SlnMesnac.Repository.service.Impl namespace SlnMesnac.Repository.service.Impl
{ {
public class ProdPlanInfoServiceImpl : BaseServiceImpl<ProdPLanInfo> public class ProdPlanInfoServiceImpl : BaseServiceImpl<ProdPLanInfo>, ProdPlanInfoService
{ {
private ILogger<ProdPlanInfoServiceImpl> _logger; private ILogger<ProdPlanInfoServiceImpl> _logger;
public ProdPlanInfoServiceImpl(Repository<ProdPLanInfo> repository, ILogger<ProdPlanInfoServiceImpl> logger) : base(repository) public ProdPlanInfoServiceImpl(Repository<ProdPLanInfo> repository, ILogger<ProdPlanInfoServiceImpl> logger) : base(repository)
@ -19,30 +20,21 @@ namespace SlnMesnac.Repository.service.Impl
} }
/// <summary> /// <summary>
/// 通过订单编号、工单编号、物料名称获取工单信息 /// 通过订单编号、工单编号、物料获取工单信息
/// </summary> /// </summary>
/// <param name="orderCode"></param> /// <param name="orderCode"></param>
/// <param name="planCode"></param> /// <param name="planCode"></param>
/// <param name="materialCode"></param> /// <param name="materialCode"></param>
/// <returns></returns> /// <returns></returns>
public List<ProdPLanInfo> GetRecordStaffAttendancesByOrderCodeAndPlanCodeAndMaterialName(string orderCode, string planCode, string materialCode) public List<ProdPLanInfo> GetRecordStaffAttendancesByConditions(string? orderCode, string? planCode, string? materialCode, string? stationCode)
{ {
List<ProdPLanInfo> prodPLanInfos = null; List<ProdPLanInfo> recordStaffAttendances = new List<ProdPLanInfo>();
Expression<Func<ProdPLanInfo, bool>> exp = x => true; List<ProdPLanInfo> planInfoList = _rep.AsQueryable().WhereIF(!string.IsNullOrEmpty(orderCode), x => x.OrderCode == orderCode)
if (!string.IsNullOrEmpty(orderCode)) .WhereIF(!string.IsNullOrEmpty(planCode), x => x.PlanCode == planCode)
{ .WhereIF(!string.IsNullOrEmpty(materialCode), x => x.MaterialCode == materialCode)
exp = exp.And(x => x.OrderCode == orderCode); .WhereIF(!string.IsNullOrEmpty(stationCode), x => x.StationCode == stationCode)
} .ToList();
if (!string.IsNullOrEmpty(planCode)) return planInfoList;
{
exp = exp.And(x => x.PlanCode == planCode);
}
if (!string.IsNullOrEmpty(materialCode))
{
exp = exp.And(x => x.MaterialCode == materialCode);
}
prodPLanInfos = base._rep.GetList(exp);
return prodPLanInfos;
} }
public List<ProdPLanInfo> GetRecordStaffAttendances() public List<ProdPLanInfo> GetRecordStaffAttendances()

@ -18,6 +18,6 @@ namespace SlnMesnac.Repository.service
/// 根据订单编号、工单编号、物料名称获取工单信息 /// 根据订单编号、工单编号、物料名称获取工单信息
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
List<ProdPLanInfo> GetRecordStaffAttendancesByOrderCodeAndPlanCodeAndMaterialName(string orderCode,string planCode,string materialCode); List<ProdPLanInfo> GetRecordStaffAttendancesByConditions(string orderCode,string planCode,string materialCode, string stationCode);
} }
} }

@ -70,11 +70,8 @@ namespace SlnMesnac.WPF
protected override void OnExit(ExitEventArgs e) protected override void OnExit(ExitEventArgs e)
{ {
base.OnExit(e); base.OnExit(e);
//var hidUtils = ServiceProvider.GetService<HidUtils>();
var hidUtils = ServiceProvider.GetService<HidUtils>(); //hidUtils.StopScan();
hidUtils.Close();
hidUtils.StopScan();
Log.Information($"系统退出,当前时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); Log.Information($"系统退出,当前时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
// 释放资源 // 释放资源
// ... // ...

@ -24,10 +24,7 @@ namespace SlnMesnac.WPF
public MainWindow() public MainWindow()
{ {
InitializeComponent(); InitializeComponent();
this.DataContext = new MainWindowViewModel(); this.DataContext = new MainWindowViewModel();
} }
} }
} }

@ -9,7 +9,7 @@
<UserControl.Resources> <UserControl.Resources>
<Style x:Key="DataGridTextColumnCenterSytle" TargetType="{x:Type TextBlock}"> <Style x:Key="DataGridTextColumnCenterSytle" TargetType="{x:Type TextBlock}">
<Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="FontSize" Value="20"/> <Setter Property="FontSize" Value="15"/>
</Style> </Style>
<Style TargetType="DataGrid"> <Style TargetType="DataGrid">
@ -50,7 +50,7 @@
<Setter Property="BorderThickness" Value="0" /> <Setter Property="BorderThickness" Value="0" />
<Setter Property="BorderBrush" Value="#4285DE" /> <Setter Property="BorderBrush" Value="#4285DE" />
<Setter Property="Height" Value="40"/> <Setter Property="Height" Value="40"/>
<Setter Property="FontSize" Value="18"/> <Setter Property="FontSize" Value="15"/>
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridCell}"> <ControlTemplate TargetType="{x:Type DataGridCell}">
@ -102,28 +102,28 @@
<TextBlock Text="ERP订单编号" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="ERP订单编号" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Row="0" Grid.Column="1"> <Border Grid.Row="0" Grid.Column="1">
<ComboBox Background="White" Height="40"/> <TextBox Text="{Binding OrderCodeTextBox}" Height="30" Width="180" FontSize="15" Foreground="White" HorizontalAlignment="Left"/>
</Border> </Border>
<Border Grid.Row="0" Grid.Column="2"> <Border Grid.Row="0" Grid.Column="2">
<TextBlock Text="工单编号" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="工单编号" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Row="0" Grid.Column="3"> <Border Grid.Row="0" Grid.Column="3">
<ComboBox Background="White" Height="40"/> <TextBox Text="{Binding PlanCodeTextBox}" Height="30" Width="180" FontSize="15" Foreground="White" HorizontalAlignment="Left"/>
</Border> </Border>
<Border Grid.Row="0" Grid.Column="4"> <Border Grid.Row="0" Grid.Column="4">
<TextBlock Text="物料名称" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="物料名称" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Row="0" Grid.Column="5"> <Border Grid.Row="0" Grid.Column="5">
<ComboBox Background="White" Height="40"/> <TextBox Text="{Binding MaterialNameTextBox}" Height="30" Width="180" FontSize="15" Foreground="White" HorizontalAlignment="Left"/>
</Border> </Border>
<Border Grid.Row="1" Grid.Column="0"> <Border Grid.Row="1" Grid.Column="0">
<TextBlock Text="工位:" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="工位:" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Row="1" Grid.Column="1"> <Border Grid.Row="1" Grid.Column="1">
<TextBlock Text="{Binding WorkLocation}" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="{Binding ProductLineNameTextBlock}" FontSize="15" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Left"/>
</Border> </Border>
<Border Grid.Row="1" Grid.Column="5"> <Border Grid.Row="1" Grid.Column="5">
<Button Content="检索" x:Name="Select" Command="{Binding ControlOnClickCommand}" CommandParameter="{Binding Name,ElementName=Select}" Style="{StaticResource BUTTON_AGREE}" FontSize="15" FontWeight="Bold" Background="#009999" BorderBrush="#FF36B5C1" Margin="15,5,15,5"/> <Button Content="检索" x:Name="Select" Command="{Binding SearchCommand}" CommandParameter="{Binding Name,ElementName=Select}" Style="{StaticResource BUTTON_AGREE}" FontSize="15" FontWeight="Bold" Background="#009999" BorderBrush="#FF36B5C1" Margin="15,5,15,5"/>
</Border> </Border>
</Grid> </Grid>
</Border> </Border>
@ -131,27 +131,34 @@
<Border.Effect> <Border.Effect>
<DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/> <DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/>
</Border.Effect> </Border.Effect>
<DataGrid Name="dataGridPlanInfo" ItemsSource="{Binding RfidInfoDataGrid}" Background="Transparent" <DataGrid Name="dataGridPlanInfo" ItemsSource="{Binding ProdPLanInfoDataGrid}" Background="Transparent"
FontSize="15" ColumnHeaderHeight="30" FontSize="15" ColumnHeaderHeight="40" LoadingRow="dgvMH_LoadingRow"
RowHeight="30" AutoGenerateColumns="False" RowHeaderWidth="0" RowHeight="40" AutoGenerateColumns="False" RowHeaderWidth="0"
GridLinesVisibility="None" ScrollViewer.HorizontalScrollBarVisibility="Hidden" GridLinesVisibility="None" ScrollViewer.HorizontalScrollBarVisibility="Hidden"
ScrollViewer.VerticalScrollBarVisibility="Hidden" BorderThickness="0" CanUserAddRows="False" ScrollViewer.VerticalScrollBarVisibility="Hidden" BorderThickness="0" CanUserAddRows="False"
Foreground="#FFFFFF" SelectedItem="{Binding SelectedDataItem}"> Foreground="#FFFFFF" SelectedItem="{Binding SelectedDataItem}">
<!--resourceStyle 399行修改选中字体颜色--> <!--resourceStyle 399行修改选中字体颜色-->
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding baggageTagCode}" Header="序号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <DataGridTemplateColumn Width="55" Header="序号" >
<DataGridTextColumn Binding="{Binding baggageTagCode}" Header="ERP订单编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <DataGridTemplateColumn.CellTemplate>
<DataGridTextColumn Binding="{Binding baggageTagCode}" Header="工单编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <DataTemplate>
<TextBlock Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow}}, Path=Header}" FontSize="18" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="10,0,0,0"></TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<!--<DataGridTextColumn Binding="{Binding IndexCode}" Header="序号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>-->
<DataGridTextColumn Binding="{Binding OrderCode}" Header="ERP订单编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
<DataGridTextColumn Binding="{Binding PlanCode}" Header="工单编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
<!--<DataGridTextColumn Binding="{Binding date,StringFormat=\{0:yyyy-MM-dd\}}" Header="工单编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>--> <!--<DataGridTextColumn Binding="{Binding date,StringFormat=\{0:yyyy-MM-dd\}}" Header="工单编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>-->
<DataGridTextColumn Binding="{Binding flightData}" Header="物料名称" Width="3*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <DataGridTextColumn Binding="{Binding MaterialName}" Header="物料名称" Width="3*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
<DataGridTextColumn Binding="{Binding hualway}" Header="计划数量" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <DataGridTextColumn Binding="{Binding PlanAmount}" Header="计划数量" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
<DataGridTextColumn Binding="{Binding baggageTagCode}" Header="完成数量" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <DataGridTextColumn Binding="{Binding CompleteAmount}" Header="完成数量" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
<DataGridTemplateColumn Header="操作" Width="2*" > <DataGridTemplateColumn Header="操作" Width="2*" >
<DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellTemplate>
<DataTemplate> <DataTemplate>
<WrapPanel> <WrapPanel>
<Button Content="查看" FontSize="12" CommandParameter="{Binding ID}" Margin="0 2 0 2" Command="{Binding DataContext.MoveUpCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" /> <!--<Button Content="查看" FontSize="18" CommandParameter="{Binding ID}" Margin="0 0 0 0" Command="{Binding DataContext.MoveUpCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" />-->
<Button Content="执行" FontSize="12" CommandParameter="{Binding ID}" Margin="2 2 0 2" Command="{Binding DataContext.MoveDownCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" /> <Button Content="执行" FontSize="15" Width="80" Height="34" CommandParameter="{Binding ID}" Command="{Binding DataContext.MoveDownCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" />
<!--<Button Content="取消" FontSize="12" CommandParameter="{Binding ID}" Margin="2 2 0 2" Background="#df4642" BorderBrush="#df4642" Command="{Binding DataContext.DeletePlanCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" />--> <!--<Button Content="取消" FontSize="12" CommandParameter="{Binding ID}" Margin="2 2 0 2" Background="#df4642" BorderBrush="#df4642" Command="{Binding DataContext.DeletePlanCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" />-->
<!--<Button Content="下传" FontSize="12" CommandParameter="{Binding ID}" Margin="2 2 0 2" Command="{Binding DataContext.MoveDownCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" />--> <!--<Button Content="下传" FontSize="12" CommandParameter="{Binding ID}" Margin="2 2 0 2" Command="{Binding DataContext.MoveDownCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid }}" />-->
</WrapPanel> </WrapPanel>

@ -46,5 +46,9 @@ namespace SlnMesnac.WPF.Page
{ {
} }
private void dgvMH_LoadingRow(object sender, DataGridRowEventArgs e)
{
e.Row.Header = (e.Row.GetIndex() + 1).ToString();
}
} }
} }

@ -37,7 +37,7 @@ namespace SlnMesnac.WPF.ViewModel
private string _checkInButtonColor; private string _checkInButtonColor;
private string _checkOutButtonColor = "#009999"; private string _checkOutButtonColor = "#009999";
private int isCheckOn = 0; private int isCheckOn = 0;
private HidUtils hidUtils = new HidUtils(); public static HidUtils hidUtils;
/// <summary> /// <summary>
@ -60,7 +60,7 @@ namespace SlnMesnac.WPF.ViewModel
public EmployeeLoginViewModel() public EmployeeLoginViewModel()
{ {
hidUtils = new HidUtils();
CheckInCommand = new RelayCommand(CheckIn); CheckInCommand = new RelayCommand(CheckIn);
CheckOutCommand = new RelayCommand(CheckOut); CheckOutCommand = new RelayCommand(CheckOut);
OverCommand = new RelayCommand(Over); OverCommand = new RelayCommand(Over);
@ -80,6 +80,8 @@ namespace SlnMesnac.WPF.ViewModel
{ {
hidUtils.Initial(); hidUtils.Initial();
hidUtils.pushReceiveDataEvent += (bytes, str) => hidUtils.pushReceiveDataEvent += (bytes, str) =>
{
if (isCheckOn == 0)
{ {
str = str.ToString().Replace(" ", ""); str = str.ToString().Replace(" ", "");
BaseStaffInfo user = baseStaffService.GetStaffInfoByCardId(str); BaseStaffInfo user = baseStaffService.GetStaffInfoByCardId(str);
@ -111,9 +113,15 @@ namespace SlnMesnac.WPF.ViewModel
StaffIdText = "未配置"; StaffIdText = "未配置";
CheckStatus = "没有匹配的员工,打卡失败!"; CheckStatus = "没有匹配的员工,打卡失败!";
} }
}
}; };
} }
public HidUtils getHidUtil()
{
return hidUtils;
}
#region #region
/// <summary> /// <summary>
/// 上班打卡文本 /// 上班打卡文本
@ -215,7 +223,9 @@ namespace SlnMesnac.WPF.ViewModel
private ObservableCollection<RecordStaffAttendance> item = new ObservableCollection<RecordStaffAttendance>(); private ObservableCollection<RecordStaffAttendance> item = new ObservableCollection<RecordStaffAttendance>();
// /// <summary>
/// DataGrid
/// </summary>
private ObservableCollection<RecordStaffAttendance> recordStaffAttendanceDataGrid = new ObservableCollection<RecordStaffAttendance>(); private ObservableCollection<RecordStaffAttendance> recordStaffAttendanceDataGrid = new ObservableCollection<RecordStaffAttendance>();
public ObservableCollection<RecordStaffAttendance> RecordStaffAttendanceDataGrid public ObservableCollection<RecordStaffAttendance> RecordStaffAttendanceDataGrid
@ -231,7 +241,6 @@ namespace SlnMesnac.WPF.ViewModel
/// </summary> /// </summary>
private void CheckIn() private void CheckIn()
{ {
isCheckOn = 0;
if (CheckInButtonText == "上班打卡") if (CheckInButtonText == "上班打卡")
{ {
// 执行上班打卡逻辑 // 执行上班打卡逻辑
@ -247,6 +256,7 @@ namespace SlnMesnac.WPF.ViewModel
IsCheckOutButtonEnabled = "True"; // Enable CheckOutButton IsCheckOutButtonEnabled = "True"; // Enable CheckOutButton
CheckOutButtonColor = "#009999"; CheckOutButtonColor = "#009999";
hidUtils.StopScan(); hidUtils.StopScan();
isCheckOn = 1;
} }
} }
@ -255,7 +265,6 @@ namespace SlnMesnac.WPF.ViewModel
/// </summary> /// </summary>
private void CheckOut() private void CheckOut()
{ {
isCheckOn = 1;
if (CheckOutButtonText == "下班打卡") if (CheckOutButtonText == "下班打卡")
{ {
// 执行下班打卡逻辑 // 执行下班打卡逻辑
@ -271,6 +280,7 @@ namespace SlnMesnac.WPF.ViewModel
IsCheckInButtonEnabled = "True"; // Enable CheckInButton IsCheckInButtonEnabled = "True"; // Enable CheckInButton
CheckInButtonColor = "#009999"; CheckInButtonColor = "#009999";
hidUtils.StopScan(); hidUtils.StopScan();
isCheckOn = 0;
} }
} }

@ -1,17 +1,42 @@
using GalaSoft.MvvmLight.Command; using GalaSoft.MvvmLight.Command;
using Microsoft.AspNetCore.Components.Forms;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.IdentityModel.Protocols;
using SlnMesnac.Business.business;
using SlnMesnac.Model.domain;
using SlnMesnac.Repository.service;
using SlnMesnac.WPF.Views; using SlnMesnac.WPF.Views;
using SqlSugar;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Configuration;
using System.Linq; using System.Linq;
using System.Runtime.CompilerServices;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows; using System.Windows;
using System.Windows.Documents;
using System.Windows.Input; using System.Windows.Input;
namespace SlnMesnac.WPF.ViewModel namespace SlnMesnac.WPF.ViewModel
{ {
public class ExecuteViewModel public class ExecuteViewModel : INotifyPropertyChanged
{ {
public ObservableCollection<string> OrderCodeComboBoxItems { get; set; }
public ObservableCollection<string> PlanCodeComboBoxItems { get; set; }
public ObservableCollection<string> MaterialNameComboBoxItems { get; set; }
private ProdPlanInfoService _prodPlanInfoService;
private List<ProdPLanInfo> prodPlanInfos;
private string StationCode;
/// <summary>
/// 按钮文字转换事件
/// </summary>
public event PropertyChangedEventHandler PropertyChanged;
/// <summary> /// <summary>
/// 换班命令 /// 换班命令
/// </summary> /// </summary>
@ -19,7 +44,17 @@ namespace SlnMesnac.WPF.ViewModel
public ExecuteViewModel() public ExecuteViewModel()
{ {
_prodPlanInfoService = App.ServiceProvider.GetService<ProdPlanInfoService>();
// 读取appsettings.json配置文件
IConfigurationBuilder configurationBuilder = new ConfigurationBuilder()
.SetBasePath(System.AppContext.BaseDirectory)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
IConfigurationRoot configuration = configurationBuilder.Build();
// 从配置文件中获取ProductLineNameTextBlock的值
stationTextBlock = configuration.GetSection("AppConfig")["ProductLineName"];
StationCode = configuration.GetSection("AppConfig")["ProductLineCode"];
HandoverCommand = new RelayCommand(Handover); HandoverCommand = new RelayCommand(Handover);
SearchCommand = new RelayCommand(Search);
} }
/// <summary> /// <summary>
@ -34,6 +69,86 @@ namespace SlnMesnac.WPF.ViewModel
//其他操作 //其他操作
} }
/// <summary>
/// 检索命令
/// </summary>
public ICommand SearchCommand { get; private set; }
/// <summary>
/// 检索事件
/// </summary>
private void Search()
{
// 在这里执行其他操作可以通过InputText获取用户输入的信息
Console.WriteLine("用户输入的信息:" + OrderCodeTextBox + PlanCodeTextBox + MaterialCodeTextBox);
//ProductLineNameTextBlock = ConfigurationManager.AppSettings["ProductLineNameTextBlock"];
List<ProdPLanInfo> list = _prodPlanInfoService.GetRecordStaffAttendancesByConditions(OrderCodeTextBox, PlanCodeTextBox, MaterialCodeTextBox, StationCode);
System.Windows.Application.Current.Dispatcher.Invoke((Action)(async () =>
{
ProdPLanInfoDataGrid.Clear();
list.ForEach(item =>
{
ProdPLanInfoDataGrid.Add(item);
});
}));
//
}
#region
/// <summary>
/// 订单
/// </summary>
private string orderCodeTextBox;
public string OrderCodeTextBox
{
get { return orderCodeTextBox; }
set { orderCodeTextBox = value; OnPropertyChanged("OrderCodeTextBox"); }
}
/// <summary>
/// 工单
/// </summary>
private string planCodeTextBox;
public string PlanCodeTextBox
{
get { return planCodeTextBox; }
set { planCodeTextBox = value; OnPropertyChanged("PlanCodeTextBox"); }
}
/// <summary>
/// 原料
/// </summary>
private string materialCodeTextBox;
public string MaterialCodeTextBox
{
get { return materialCodeTextBox; }
set { materialCodeTextBox = value; OnPropertyChanged("MaterialNameTextBox"); }
}
/// <summary>
/// 工位
/// </summary>
private string stationTextBlock;
public string StationTextBox
{
get { return stationTextBlock; }
set { stationTextBlock = value; new PropertyChangedEventArgs(nameof(StationTextBox)); }
}
/// <summary>
/// DataGrid
/// </summary>
private ObservableCollection<ProdPLanInfo> prodPLanInfoDataGrid = new ObservableCollection<ProdPLanInfo>();
public ObservableCollection<ProdPLanInfo> ProdPLanInfoDataGrid
{
get { return prodPLanInfoDataGrid; }
set { prodPLanInfoDataGrid = value; OnPropertyChanged("ProdPLanInfoDataGrid"); }
}
#endregion
public void OnPropertyChanged([CallerMemberName] string propertyName = "")
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
} }
} }

@ -4,16 +4,25 @@ using SlnMesnac.Model.domain;
using SlnMesnac.Repository.service; using SlnMesnac.Repository.service;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel;
using System.Linq; using System.Linq;
using System.Runtime.CompilerServices;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
namespace SlnMesnac.WPF.ViewModel namespace SlnMesnac.WPF.ViewModel
{ {
public class HandOverViewModel public class HandOverViewModel : INotifyPropertyChanged
{ {
private HidUtils hidUtils = new HidUtils(); //private HidUtils hidUtils = new HidUtils();
private IBaseStaffService _baseStaffService; private IBaseStaffService _baseStaffService;
private int times;
/// <summary>
/// 按钮文字转换事件
/// </summary>
public event PropertyChangedEventHandler PropertyChanged;
public HandOverViewModel() public HandOverViewModel()
{ {
@ -23,23 +32,78 @@ namespace SlnMesnac.WPF.ViewModel
#region #region
///// <summary> /// <summary>
///// 员工id /// 员工id
///// </summary> /// </summary>
//private string staffId; private string staffIdText;
//public string StaffIdText public string StaffIdText
//{ {
// get { return staffId; } get { return staffIdText; }
// set { staffId = value; OnPropertyChanged("StaffIdText"); } set { staffIdText = value; OnPropertyChanged("StaffIdText"); }
//} }
/// <summary>
/// 员工名称
/// </summary>
private string staffNameText;
public string StaffNameText
{
get { return staffNameText; }
set { staffNameText = value; OnPropertyChanged("StaffNameText"); }
}
/// <summary>
/// 员工类型
/// </summary>
private string staffTypeText;
public string StaffTypeText
{
get { return staffTypeText; }
set { staffTypeText = value; OnPropertyChanged("StaffTypeText"); }
}
/// <summary>
/// 班组编号
/// </summary>
private string teamCodeText;
public string TeamCodeText
{
get { return teamCodeText; }
set { teamCodeText = value; OnPropertyChanged("TeamCodeText"); }
}
/// <summary>
/// 提示信息
/// </summary>
private string hintText;
public string HintText
{
get { return hintText; }
set { hintText = value; OnPropertyChanged("HintText"); }
}
/// <summary>
/// 信息
/// </summary>
private string messageText;
public string MessageText
{
get { return messageText; }
set { messageText = value; OnPropertyChanged("MessageText"); }
}
#endregion #endregion
/// <summary>
/// 初始化
/// </summary>
private void Init() private void Init()
{ {
hidUtils.Initial(); var hidUtils = EmployeeLoginViewModel.hidUtils;
// hidUtils.Initial();
hidUtils.StartScan(); hidUtils.StartScan();
hidUtils.pushReceiveDataEvent += (bytes, str) => hidUtils.pushReceiveDataEvent += (bytes, str) =>
{
if (times < 2)
{ {
str = str.ToString().Replace(" ", ""); str = str.ToString().Replace(" ", "");
BaseStaffInfo user = _baseStaffService.GetStaffInfoByCardId(str); BaseStaffInfo user = _baseStaffService.GetStaffInfoByCardId(str);
@ -48,18 +112,30 @@ namespace SlnMesnac.WPF.ViewModel
string staffType = user.StaffType; string staffType = user.StaffType;
if (staffType == "1") if (staffType == "1")
{ {
//显示记录
StaffIdText = user.StaffId;
StaffNameText = user.StaffName;
StaffTypeText = user.StaffType;
TeamCodeText = user.TeamCode;
//数量+1
times++;
} }
else else
{ {
HintText = "打卡人员非班长,打卡无效!";
} }
} }
else else
{ {
HintText = "没有匹配的员工,打卡失败!";
}
} }
}; };
} }
public void OnPropertyChanged([CallerMemberName] string propertyName = "")
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
} }
} }

@ -90,20 +90,20 @@
<Border Grid.Column="0"> <Border Grid.Column="0">
<TextBlock Text="计划数量" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="计划数量" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Column="1" Height="50" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" Margin="0,0,80,0"> <Border Grid.Column="1" Height="50" Width="150" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" HorizontalAlignment="Left">
<Border.Effect> <Border.Effect>
<DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/> <DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/>
</Border.Effect> </Border.Effect>
<TextBlock Text="{Binding StaffIdText}" FontSize="20" FontWeight="Bold" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="{Binding PlannedQuantity}" FontSize="20" FontWeight="Bold" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Column="2"> <Border Grid.Column="2">
<TextBlock Text="完成数量" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="完成数量" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Column="3" Height="50" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" Margin="0,0,80,0"> <Border Grid.Column="3" Height="50" Width="150" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" HorizontalAlignment="Left">
<Border.Effect> <Border.Effect>
<DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/> <DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/>
</Border.Effect> </Border.Effect>
<TextBlock Text="{Binding StaffIdText}" FontSize="20" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="{Binding CompletedQuantity}" FontSize="20" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
</Grid> </Grid>
</Border> </Border>
@ -111,32 +111,53 @@
<Border.Effect> <Border.Effect>
<DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/> <DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/>
</Border.Effect> </Border.Effect>
<DataGrid Name="dataGrid" ItemsSource="{Binding RecordStaffAttendanceDataGrid}" Background="Transparent" <Grid>
FontSize="15" ColumnHeaderHeight="30" <Grid.RowDefinitions>
RowHeight="30" AutoGenerateColumns="False" RowHeaderWidth="0" <RowDefinition/>
GridLinesVisibility="None" ScrollViewer.HorizontalScrollBarVisibility="Hidden" <RowDefinition Height="5*"/>
ScrollViewer.VerticalScrollBarVisibility="Hidden" BorderThickness="0" CanUserAddRows="False" </Grid.RowDefinitions>
Foreground="#FFFFFF" SelectedItem="{Binding SelectedDataItem}"> <Border Grid.Row="0">
<!--resourceStyle 399行修改选中字体颜色--> <TextBlock Text="当前班组长先打卡,下一班组长后打卡" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Left" Margin="25,0,0,0"/>
<DataGrid.Columns> </Border>
<DataGridTemplateColumn Width="55" Header="序号" > <Border Grid.Row="1">
<DataGridTemplateColumn.CellTemplate> <Grid>
<DataTemplate> <Grid.RowDefinitions>
<TextBlock Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow}}, Path=Header}" FontSize="18" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="10,0,0,0"></TextBlock> <RowDefinition/>
</DataTemplate> <RowDefinition/>
</DataGridTemplateColumn.CellTemplate> </Grid.RowDefinitions>
</DataGridTemplateColumn> <Grid.ColumnDefinitions>
<DataGridTextColumn Binding="{Binding ObjId}" Header="序号1" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}" Visibility="Collapsed"/> <ColumnDefinition/>
<DataGridTextColumn Binding="{Binding StaffId}" Header="员工ID" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <ColumnDefinition Width="1.6*"/>
<DataGridTextColumn Binding="{Binding CreateBy}" Header="员工姓名" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> <ColumnDefinition/>
<!--<DataGridTextColumn Binding="{Binding date,StringFormat=\{0:yyyy-MM-dd\}}" Header="工单编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>--> <ColumnDefinition Width="1.6*"/>
<DataGridTextColumn Binding="{Binding AttendanceType}" Header="员工类型" Width="3*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> </Grid.ColumnDefinitions>
<!--<DataGridTextColumn Binding="{Binding hualway}" Header="性别" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>--> <Border Grid.Row="0" Grid.Column="0">
<!--<DataGridTextColumn Binding="{Binding baggageTagCode}" Header="卡号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>--> <TextBlock Text="员工ID" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<DataGridTextColumn Binding="{Binding TeamCode}" Header="班组编号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/> </Border>
<!--<DataGridTextColumn Binding="{Binding baggageTagCode}" Header="手机号" Width="2*" IsReadOnly="True" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>--> <Border Grid.Row="0" Grid.Column="1" Height="50" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" Margin="0,0,40,0">
</DataGrid.Columns> <TextBlock Text="{Binding StaffIdText}" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</DataGrid> </Border>
<Border Grid.Row="0" Grid.Column="2">
<TextBlock Text="员工名称" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<Border Grid.Row="0" Grid.Column="3" Height="50" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" Margin="0,0,40,0">
<TextBlock Text="{Binding StaffNameText}" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<Border Grid.Row="1" Grid.Column="0">
<TextBlock Text="员工类型" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<Border Grid.Row="1" Grid.Column="1" Height="50" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" Margin="0,0,40,0">
<TextBlock Text="{Binding StaffTypeText}" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<Border Grid.Row="1" Grid.Column="2">
<TextBlock Text="班组编号" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<Border Grid.Row="1" Grid.Column="3" Height="50" BorderBrush="#1254AB" BorderThickness="2" CornerRadius="5" Margin="0,0,40,0">
<TextBlock Text="{Binding TeamCodeText}" FontSize="20" FontWeight="Bold" Foreground="#1254AB" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
</Grid>
</Border>
</Grid>
</Border> </Border>
<Border Grid.Row="2"> <Border Grid.Row="2">
<Grid> <Grid>
@ -149,7 +170,7 @@
<Border.Effect> <Border.Effect>
<DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/> <DropShadowEffect Color="#1254AB" Direction="270" BlurRadius="10" ShadowDepth="5" Opacity="0.5"/>
</Border.Effect> </Border.Effect>
<TextBlock Text="{Binding StaffIdText}" FontSize="20" Foreground="Red" VerticalAlignment="Center" HorizontalAlignment="Center"/> <TextBlock Text="{Binding HintText}" FontSize="20" Foreground="Red" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border> </Border>
<Border Grid.Column="1"> <Border Grid.Column="1">
<Grid> <Grid>

@ -7,6 +7,7 @@
} }
}, },
"AllowedHosts": "*", "AllowedHosts": "*",
"AppConfig": { "AppConfig": {
"logPath": "E:\\桌面\\SlnMesnac\\SlnMesnac.WPF\\bin\\Debug\\net6.0-windows", "logPath": "E:\\桌面\\SlnMesnac\\SlnMesnac.WPF\\bin\\Debug\\net6.0-windows",
"SqlConfig": [ "SqlConfig": [
@ -55,6 +56,8 @@
"isFlage": true "isFlage": true
} }
], ],
"redisConfig": "175.27.215.92:6379,password=redis@2023" "redisConfig": "175.27.215.92:6379,password=redis@2023",
"ProductLineCode": "1001",
"ProductLineName": "一产线"
} }
} }

Loading…
Cancel
Save