This commit is contained in:
sc authored and sc committed 2022-05-27 23:56:41 +08:00
commit 9ede634f3c
115 files changed
+2666 -7523

No files matched your search

+181
View File
@@ -0,0 +1,181 @@
<UserControl x:Class="Audit.View.MachinesView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:Audit.View"
mc:Ignorable="d"
d:DesignHeight="900" d:DesignWidth="1140"
xmlns:ConvertMoels="clr-namespace:Audit.ConvertMoels"
DataContext="{Binding Source={StaticResource Locator},Path=Machines}">
<UserControl.Resources>
<ConvertMoels:StatenConvert x:Key="StatenConvert"/>
<ConvertMoels:StatenERRConvert x:Key="StatenERRConvert"/>
</UserControl.Resources>
<Grid>
<!--布局-->
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Border BorderThickness="0,0,0,1" BorderBrush="#CCCCCC">
</Border>
<Grid Grid.Row="0"/>
<Grid Grid.Row="1">
<!--表-->
<DataGrid x:Name="DataGridMachines" MouseDoubleClick="DataGridStuff_MouseDoubleClick" ItemsSource="{Binding Machines, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left" Margin="15,15,0,150" d:ItemsSource="{d:SampleData ItemCount=200}" AutoGenerateColumns="False" MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40" HorizontalContentAlignment="Right" Grid.ColumnSpan="2" CanUserReorderColumns="False">
<DataGrid.RowStyle >
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Background" Value="#FFFFFFFF" />
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="#FFF5F5F5" />
</Trigger>
<Trigger Property="IsMouseOver" Value="False">
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.RowStyle>
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="MinWidth" Value="20"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#FFC0C0C0"/>
<Setter Property="BorderBrush" Value="#FFC0C0C0"/>
<Setter Property="Foreground" Value="#000000"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.CellStyle>
<DataGrid.Columns>
<!--列信息绑定-->
<DataGridTextColumn Header="染机代码" Width="100" FontSize="15" Binding="{Binding Name}" MaxWidth="130" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="染机名称" Width="100" FontSize="15" Binding="{Binding ChemicalStation}" MaxWidth="200" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="运行单号" Width="120" FontSize="15" Binding="{Binding DispenseDyelot}" MaxWidth="200" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="助剂状态" Width="80" FontSize="15" MaxWidth="80" MinWidth="50" CanUserReorder="False">
<!--事件名称:工作状态数字转文字显示,转换器StatenConvert-->
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="{Binding Path=ChemicalState,Converter={StaticResource StatenConvert}}">
</Setter>
<Setter Property="Foreground" Value="{Binding Path=ChemicalState,Converter={StaticResource StatenERRConvert}}">
</Setter>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="助剂状态2" Width="80" FontSize="15" MaxWidth="80" MinWidth="50" CanUserReorder="False">
<!--事件名称:工作状态数字转文字显示,转换器StatenConvertt-->
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="{Binding Path=ChemicalState2,Converter={StaticResource StatenConvert}}">
</Setter>
<Setter Property="Foreground" Value="{Binding Path=ChemicalState2,Converter={StaticResource StatenERRConvert}}">
</Setter>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="液体助剂组" Width="100" FontSize="15" Binding="{Binding ChemicalDispenser}" MaxWidth="100" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="液体助剂启用" Width="0" FontSize="15" Binding="{Binding ChemicalEnabled}" MaxWidth="0" MinWidth="0" CanUserReorder="False"/>
<DataGridTextColumn Header="染料状态" Width="80" FontSize="15" MaxWidth="80" MinWidth="50" CanUserReorder="False">
<!--事件名称:工作状态数字转文字显示,转换器StatenConvert-->
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="{Binding Path=DyeState,Converter={StaticResource StatenConvert}}">
</Setter>
<Setter Property="Foreground" Value="{Binding Path=DyeState,Converter={StaticResource StatenERRConvert}}">
</Setter>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="染料溶解组" Width="100" FontSize="15" Binding="{Binding DyeDispenser}" MaxWidth="100" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="染料启用" Width="0" FontSize="15" Binding="{Binding DyeEnabled}" MaxWidth="0" MinWidth="0" CanUserReorder="False"/>
<DataGridTextColumn Header="粉体状态" Width="80" FontSize="15" MaxWidth="80" MinWidth="50" CanUserReorder="False">
<!--事件名称:工作状态数字转文字显示,转换器StatenConvert-->
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="{Binding Path=PowderState,Converter={StaticResource StatenConvert}}">
</Setter>
<Setter Property="Foreground" Value="{Binding Path=PowderState,Converter={StaticResource StatenERRConvert}}">
</Setter>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="粉体助剂组" Width="100" FontSize="15" Binding="{Binding PowderDispenser}" MaxWidth="100" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="粉体启用" Width="0" FontSize="15" Binding="{Binding PowderEnabled}" MaxWidth="0" MinWidth="0" CanUserReorder="False"/>
</DataGrid.Columns>
</DataGrid>
<!--染机代码-->
<TextBox x:Name="name" HorizontalAlignment="Left" Height="30" Margin="105,0,0,100" Text=""
VerticalAlignment="Bottom" Width="155" FontSize="16" MaxLines="1" MaxLength="25"
InputMethod.IsInputMethodEnabled="False"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="15,0,0,100" TextWrapping="Wrap" Text="染机代码"
VerticalAlignment="Bottom" Width="100" FontSize="20"/>
<!--染机名称-->
<TextBox x:Name="Station" HorizontalAlignment="Left" Height="30" Margin="360,0,0,100" Text=""
VerticalAlignment="Bottom" Width="200" FontSize="16" MaxLines="1" MaxLength="50"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="270,0,0,100" TextWrapping="Wrap" Text="染机名称"
VerticalAlignment="Bottom" Width="100" FontSize="20"/>
<!--操作-->
<ComboBox x:Name="operate" HorizontalAlignment="Left" Height="30" Margin="620,0,0,100" Text=""
VerticalAlignment="Bottom" Width="140" FontSize="16" IsReadOnly="True" IsEditable="True">
<ComboBoxItem Content="清除工单"></ComboBoxItem>
<ComboBoxItem Content="助剂完成"></ComboBoxItem>
<ComboBoxItem Content="染料完成"></ComboBoxItem>
<ComboBoxItem Content="粉体完成"></ComboBoxItem>
<ComboBoxItem Content="修改信息"></ComboBoxItem>
</ComboBox>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="575,0,0,100" TextWrapping="Wrap" Text="操作"
VerticalAlignment="Bottom" Width="100" FontSize="20"/>
<!--液体助剂机组-->
<TextBox x:Name="chemicaldispenser" HorizontalAlignment="Left" Height="30" Margin="130,0,0,50" Text=""
VerticalAlignment="Bottom" Width="130" FontSize="16" MaxLines="1" MaxLength="25"
InputMethod.IsInputMethodEnabled="False"/>
<ComboBox x:Name="chemicaldispenser_operate" HorizontalAlignment="Left" Height="30" Margin="60,0,0,50" Text=""
VerticalAlignment="Bottom" Width="65" FontSize="16" IsReadOnly="True" IsEditable="True">
<ComboBoxItem Content="禁用"></ComboBoxItem>
<ComboBoxItem Content="启用"></ComboBoxItem>
</ComboBox>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="15,0,0,50" TextWrapping="Wrap" Text="助剂"
VerticalAlignment="Bottom" Width="50" FontSize="20"/>
<!--染料染剂机组-->
<TextBox x:Name="dyedispenser" HorizontalAlignment="Left" Height="30" Margin="380,0,0,50" Text=""
VerticalAlignment="Bottom" Width="130" FontSize="16" MaxLines="1" MaxLength="25"
InputMethod.IsInputMethodEnabled="False"/>
<ComboBox x:Name="dyedispenser_operate" HorizontalAlignment="Left" Height="30" Margin="310,0,0,50" Text=""
VerticalAlignment="Bottom" Width="65" FontSize="16" IsReadOnly="True" IsEditable="True">
<ComboBoxItem Content="禁用"></ComboBoxItem>
<ComboBoxItem Content="启用"></ComboBoxItem>
</ComboBox>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="265,0,0,50" TextWrapping="Wrap" Text="染料"
VerticalAlignment="Bottom" Width="50" FontSize="20"/>
<!--粉体助剂机组-->
<TextBox x:Name="powderdispenser" HorizontalAlignment="Left" Height="30" Margin="630,0,0,50" Text=""
VerticalAlignment="Bottom" Width="130" FontSize="16" MaxLines="1" MaxLength="25"
InputMethod.IsInputMethodEnabled="False"/>
<ComboBox x:Name="powderdispenser_operate" HorizontalAlignment="Left" Height="30" Margin="560,0,0,50" Text=""
VerticalAlignment="Bottom" Width="65" FontSize="16" IsReadOnly="True" IsEditable="True">
<ComboBoxItem Content="禁用"></ComboBoxItem>
<ComboBoxItem Content="启用"></ComboBoxItem>
</ComboBox>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="515,0,0,50" TextWrapping="Wrap" Text="粉体"
VerticalAlignment="Bottom" Width="50" FontSize="20"/>
<!--存储按钮-->
<Button Content="确认" HorizontalAlignment="Left" Height="65" Margin="795,0,0,60"
VerticalAlignment="Bottom" Width="145" FontSize="40" BorderBrush="{x:Null}" Background="#FFCECECE"
Click="Button_Preservation">
</Button>
<!--删除按钮-->
<Button Content="删除" HorizontalAlignment="Left" Height="65" Margin="975,0,0,60"
VerticalAlignment="Bottom" Width="145" FontSize="40" BorderBrush="{x:Null}" Background="#FFCECECE"
Click="Button_Delete">
</Button>
</Grid>
</Grid>
</UserControl>
+246
View File
@@ -0,0 +1,246 @@
using Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace Audit.View
{
/// <summary>
/// MachinesView.xaml 的交互逻辑
/// </summary>
public partial class MachinesView : UserControl
{
public MachinesView()
{
InitializeComponent();
}
private Machines machines = new Machines();//最终存入sql的实体
private Machines machines_temp = new Machines();//取出自sql的实体缓存
public static Boolean Button_sql = true;
public static int Buttontype_sql = -1;
private void DataGridStuff_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
int rownum = DataGridMachines.SelectedIndex;//获取鼠标选中行并定义变量
if (rownum != -1)//判断鼠标定位是否有效
{
string DataGridMachines_Name = (DataGridMachines.Columns[0].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第0列,
string DataGridMachines_ChemicalStation = (DataGridMachines.Columns[1].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第1列,
string DataGridMachines_ChemicalDispenser = (DataGridMachines.Columns[5].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第2列,
string DataGridMachines_Chemicale = (DataGridMachines.Columns[6].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第2列,
string DataGridMachines_DyeDispenser = (DataGridMachines.Columns[8].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第3列,
string DataGridMachines_Dyee = (DataGridMachines.Columns[9].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第3列,
string DataGridMachines_PowderDispenser = (DataGridMachines.Columns[11].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第4列,
string DataGridMachines_Powdere = (DataGridMachines.Columns[12].GetCellContent(DataGridMachines.Items[rownum]) as TextBlock).Text;//定位第4列,
name.Text = DataGridMachines_Name.Trim();
Station.Text = DataGridMachines_ChemicalStation.Trim();
chemicaldispenser.Text = DataGridMachines_ChemicalDispenser.Trim();
dyedispenser.Text = DataGridMachines_DyeDispenser.Trim();
powderdispenser.Text = DataGridMachines_PowderDispenser.Trim();
if (DataGridMachines_Chemicale == "1") this.chemicaldispenser_operate.Text = "启用";
else this.chemicaldispenser_operate.Text = "禁用";
if (DataGridMachines_Dyee == "1") this.dyedispenser_operate.Text = "启用";
else this.dyedispenser_operate.Text = "禁用";
if (DataGridMachines_Powdere == "1") this.powderdispenser_operate.Text = "启用";
else this.powderdispenser_operate.Text = "禁用";
this.operate.Text =null;//清除附属操作
machines_temp.Name = DataGridMachines_Name;//写入sql实体缓存
}
}
private void Button_Preservation(object sender, RoutedEventArgs e)//存储按钮
{
int int_operate = 0;
Regex re_char = new Regex(@"^[A-Za-z0-9\s@()()/+!!_-]+$");//校验用正则表达式由数字,26个英文字母,空白字符和@()()/+!!_-组成的字符串
if (this.operate.Text == "") int_operate = 0;//创建机台
if (this.operate.Text == "清除工单") int_operate = 1;//附属操作
if (this.operate.Text == "助剂完成") int_operate = 2;
if (this.operate.Text == "染料完成") int_operate = 3;
if (this.operate.Text == "粉体完成") int_operate = 4;
if (this.operate.Text == "修改信息") int_operate = 5;
if (re_char.IsMatch(this.name.Text) == false) System.Windows.MessageBox.Show("ERR.C0201:无效的机台信息", "错误");//检查机台代码
else
if (string.IsNullOrEmpty(this.Station.Text)) System.Windows.MessageBox.Show("ERR.C0201-2:无效的机台信息", "错误");//检查机台名称
else
{
if (int_operate == 0)//创建机台
{
machines.Name = this.name.Text;
machines.DispenseDyelot = null;
machines.DyeDispenseDyelot = null;
machines.ChemicalStation = this.Station.Text;
machines.DyeStation = this.Station.Text;
machines.PowderStation = this.Station.Text;
machines.ChemicalDispenser = this.chemicaldispenser.Text;
machines.DyeDispenser = this.dyedispenser.Text;
machines.PowderDispenser = this.powderdispenser.Text;
machines.ChemicalCallOff = 0;
machines.ChemicalCallOff2 = 0;
machines.ChemicalState = 101;
machines.ChemicalState2 = 101;
machines.DyeCallOff = 0;
machines.DyeState = 101;
machines.PowderCallOff = 0;
machines.PowderState = 101;
if (this.chemicaldispenser_operate.Text == "启用") machines.ChemicalEnabled = 1;
else machines.ChemicalEnabled = 0;
if (this.dyedispenser_operate.Text == "启用") machines.DyeEnabled = 1;
else machines.DyeEnabled = 0;
if (this.powderdispenser_operate.Text == "启用") machines.PowderEnabled = 1;
else machines.PowderEnabled = 0;
if (new MachinesProvider().Selectsql(machines).Count == 0)//判断数据库设定目标信息是否存在。
{
var count = new MachinesProvider().Insert(machines);//添加数据库信息
Button_sql = true;
if (count == 0) MessageBox.Show("ERR.C0210-2:机台创建失败", "错误");
}
else
{
System.Windows.MessageBox.Show("ERR.C0211:机台已存在终止操作", "错误");//判断执行是否成功
}
}
if (int_operate == 1)//清除信息
{
machines.Name = this.name.Text;
machines.DispenseDyelot = null;
machines.DyeDispenseDyelot = null;
machines.ChemicalCallOff = 0;
machines.ChemicalCallOff2 = 0;
machines.ChemicalState = 101;
machines.ChemicalState2 = 101;
machines.DyeCallOff = 0;
machines.DyeState = 101;
machines.PowderCallOff = 0;
machines.PowderState = 101;
if (new MachinesProvider().Selectsql(machines).Count == 0)//判断数据库设定目标信息是否存在。
{
System.Windows.MessageBox.Show("ERR.C0202-5:机台信息错误", "错误");//执行是否成功
}
else
{
var count = new MachinesProvider().Update1(machines);//添加数据库信息。
Button_sql = true;
if (count == 0) MessageBox.Show("ERR.C0210-2:机台创建失败", "错误");
}
}
if (int_operate == 2)//助剂完成
{
machines.Name = this.name.Text;
machines.ChemicalCallOff = 0;
machines.ChemicalCallOff2 = 0;
machines.ChemicalState = 101;
machines.ChemicalState2 = 101;
if (new MachinesProvider().Selectsql(machines).Count == 0)//判断数据库设定目标信息是否存在。
{
System.Windows.MessageBox.Show("ERR.C0202-5:机台信息错误", "错误");//执行是否成功
}
else
{
var count = new MachinesProvider().Update2(machines);//修改数据库信息。
Button_sql = true;
if (count == 0) System.Windows.MessageBox.Show("ERR.C0210-1:信息修改失败", "错误");//判断执行是否成功
}
}
if (int_operate == 3)//染料完成
{
machines.Name = this.name.Text;
machines.DyeCallOff = 0;
machines.DyeState = 101;
if (new MachinesProvider().Selectsql(machines).Count == 0)//判断数据库设定目标信息是否存在。
{
System.Windows.MessageBox.Show("ERR.C0202-5:机台信息错误", "错误");//执行是否成功
}
else
{
var count = new MachinesProvider().Update3(machines);//修改数据库信息。
Button_sql = true;
if (count == 0) System.Windows.MessageBox.Show("ERR.C0210-1:信息修改失败", "错误");//判断执行是否成功
}
}
if (int_operate == 4)//粉体完成
{
machines.Name = this.name.Text;
machines.PowderCallOff = 0;
machines.PowderState = 101;
if (new MachinesProvider().Selectsql(machines).Count == 0)//判断数据库设定目标信息是否存在。
{
System.Windows.MessageBox.Show("ERR.C0202-5:机台信息错误", "错误");//执行是否成功
}
else
{
var count = new MachinesProvider().Update4(machines);//添加数据库信息。
Button_sql = true;
if (count == 0) System.Windows.MessageBox.Show("ERR.C0210-1:信息修改失败", "错误");//判断执行是否成功
}
}
if (int_operate == 5)//修改机台
{
machines.Name = this.name.Text;
machines.DispenseDyelot = null;
machines.DyeDispenseDyelot = null;
machines.ChemicalStation = this.Station.Text;
machines.DyeStation = this.Station.Text;
machines.PowderStation = this.Station.Text;
machines.ChemicalDispenser = this.chemicaldispenser.Text;
machines.DyeDispenser = this.dyedispenser.Text;
machines.PowderDispenser = this.powderdispenser.Text;
machines.ChemicalCallOff = 0;
machines.ChemicalCallOff2 = 0;
machines.ChemicalState = 101;
machines.ChemicalState2 = 101;
machines.DyeCallOff = 0;
machines.DyeState = 101;
machines.PowderCallOff = 0;
machines.PowderState = 101;
if (this.chemicaldispenser_operate.Text == "启用") machines.ChemicalEnabled = 1;
else machines.ChemicalEnabled = 0;
if (this.dyedispenser_operate.Text == "启用") machines.DyeEnabled = 1;
else machines.DyeEnabled = 0;
if (this.powderdispenser_operate.Text == "启用") machines.PowderEnabled = 1;
else machines.PowderEnabled = 0;
if (new MachinesProvider().Selectsql(machines).Count == 0)//判断数据库设定目标信息是否存在。
{
System.Windows.MessageBox.Show("ERR.C0202-5:机台信息错误", "错误");//执行是否成功
}
else
{
var count = new MachinesProvider().Update(machines);//添加数据库信息
Button_sql = true;
if (count == 0) MessageBox.Show("ERR.C0210-2:机台修改失败", "错误");
}
}
}
}
private void Button_Delete(object sender, RoutedEventArgs e)//删除按钮
{
machines.Name = this.name.Text;//原料代码
string ShowProductName = "是否删除机台【" + this.name.Text + "】" + this.Station.Text;//获取原料信息并拼接提示字符串
MessageBoxResult showProductName = System.Windows.MessageBox.Show(ShowProductName, "提示", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.Yes);//弹窗提示是否删除目标原料
if (showProductName == MessageBoxResult.Yes)//判断是否删除原料
{
var count = new MachinesProvider().Delete(machines_temp);//删除数据库目标信息。
if (count == 0) System.Windows.MessageBox.Show("ERR.C0210-2:删除失败", "错误");//判断执行是否成功
else Button_sql = true;
}
}
}
}
+69
View File
@@ -0,0 +1,69 @@
<UserControl x:Class="Audit.View.PipesView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:Audit.View"
mc:Ignorable="d"
d:DesignHeight="900" d:DesignWidth="1140"
xmlns:ConvertMoels="clr-namespace:Audit.ConvertMoels"
DataContext="{Binding Source={StaticResource Locator},Path=Pipes}">
<UserControl.Resources>
</UserControl.Resources>
<Grid>
<!--布局-->
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Border BorderThickness="0,0,0,1" BorderBrush="#CCCCCC">
</Border>
<Grid Grid.Row="0"/>
<Grid Grid.Row="1">
<!--表-->
<DataGrid x:Name="DataGridStatistics" MouseDoubleClick="DataGridStatistics_MouseDoubleClick"
ItemsSource="{Binding Pipes, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left"
Margin="15,15,0,150" d:ItemsSource="{d:SampleData ItemCount=200}" AutoGenerateColumns="False"
MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9"
GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40"
HorizontalContentAlignment="Right" Grid.ColumnSpan="2" CanUserReorderColumns="False">
<DataGrid.RowStyle >
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Background" Value="#FFFFFFFF" />
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="#FFF5F5F5" />
</Trigger>
<Trigger Property="IsMouseOver" Value="False">
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.RowStyle>
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="MinWidth" Value="20"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#FFC0C0C0"/>
<Setter Property="BorderBrush" Value="#FFC0C0C0"/>
<Setter Property="Foreground" Value="#000000"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.CellStyle>
<DataGrid.Columns>
<!--列信息绑定-->
<DataGridTextColumn Header="原料代码" Width="100" FontSize="15" Binding="{Binding ProductCode}" MaxWidth="150" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="原料名称" Width="130" FontSize="15" Binding="{Binding ProductName}" MaxWidth="200" MinWidth="50" CanUserReorder="False"/>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Grid>
</UserControl>
+35
View File
@@ -0,0 +1,35 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace Audit.View
{
/// <summary>
/// PipesView.xaml 的交互逻辑
/// </summary>
public partial class PipesView : UserControl
{
public PipesView()
{
InitializeComponent();
}
public static Boolean Button_pipessql = true;//全局变量按钮状态
private void DataGridStatistics_MouseDoubleClick(object sender, MouseButtonEventArgs e)//数据表双击事件
{
}
}
}
+16 -7
View File
@@ -6,7 +6,9 @@
xmlns:local="clr-namespace:Audit.View"
xmlns:ConvertMoels="clr-namespace:Audit.ConvertMoels"
mc:Ignorable="d" DataContext="{Binding Source={StaticResource Locator},Path=Query}"
d:DesignHeight="900" d:DesignWidth="1140">
d:DesignHeight="900" d:DesignWidth="1140"
Loaded="UserControl_Loaded">
<UserControl.Resources>
<ConvertMoels:GramsSQLConvert x:Key="GramsSQLConvert"/>
<ConvertMoels:DeviationConvert x:Key="DeviationConvert"/>
@@ -19,7 +21,7 @@
<Border BorderThickness="0,0,0,1" BorderBrush="#CCCCCC">
</Border>
<Grid Grid.Row="1">
<DataGrid x:Name="DataGridDyelots" MouseDoubleClick="DataGridDyelot_MouseDoubleClick" ItemsSource="{Binding Dyelots}" SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left" Margin="15,15,0,150" VerticalAlignment="Stretch" Width="320" d:ItemsSource="{d:SampleData ItemCount=100}" AutoGenerateColumns="False" MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40" HorizontalContentAlignment="Right" CanUserReorderColumns="False">
<DataGrid x:Name="DataGridDyelots" MouseDoubleClick="DataGridDyelot_MouseDoubleClick" ItemsSource="{Binding Dyelots}" SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left" Margin="15,15,0,150" VerticalAlignment="Stretch" Width="335" d:ItemsSource="{d:SampleData ItemCount=100}" AutoGenerateColumns="False" MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40" HorizontalContentAlignment="Right" CanUserReorderColumns="False">
<DataGrid.RowStyle>
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
@@ -46,13 +48,20 @@
</Style>
</DataGrid.CellStyle>
<DataGrid.Columns>
<DataGridTemplateColumn Header="单次" Width="50" MinWidth="10" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock FontSize="15" Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow}}, Path=Header}" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="10,0,0,0"></TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="工单" Width="158" FontSize="15" Binding="{Binding Dyelot}" MaxWidth="158" MinWidth="158" CanUserReorder="False"/>
<DataGridTextColumn Header="重染" Width="56" FontSize="15" Binding="{Binding ReDye}" MaxWidth="56" MinWidth="56" CanUserReorder="False"/>
<DataGridTextColumn Header="染机" Width="90" FontSize="15" Binding="{Binding Machine}" MaxWidth="90" MinWidth="90" CanUserReorder="False"/>
<DataGridTextColumn Header="开单时间" Width="200" FontSize="15" Binding="{Binding CreationTime,StringFormat='yyyy-MM-dd HH:mm:ss'}" MaxWidth="0" MinWidth="0" CanUserReorder="False"/>
<DataGridTextColumn Header="开单时间" Width="0" FontSize="15" Binding="{Binding Creation,StringFormat='yyyy-MM-dd HH:mm:ss'}" MaxWidth="0" MinWidth="0" CanUserReorder="False"/>
</DataGrid.Columns>
</DataGrid>
<DataGrid x:Name="DataGridDyelotsBulkedRecipe" ItemsSource="{Binding DyelotsBulkedRecipe}" SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left" Margin="350,15,15,150" VerticalAlignment="Stretch" d:ItemsSource="{d:SampleData ItemCount=200}" AutoGenerateColumns="False" MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40" HorizontalContentAlignment="Right" CanUserReorderColumns="False">
<DataGrid x:Name="DataGridDyelotsBulkedRecipe" ItemsSource="{Binding DyelotsBulkedRecipe}" SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left" Margin="365,15,15,150" VerticalAlignment="Stretch" d:ItemsSource="{d:SampleData ItemCount=200}" AutoGenerateColumns="False" MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40" HorizontalContentAlignment="Right" CanUserReorderColumns="False">
<DataGrid.RowStyle >
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
@@ -95,15 +104,15 @@
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<!--事件名称:偏差值计算,转换器DeviationConvert-->
<DataGridTextColumn Header="偏差" Width="70" FontSize="15" MinWidth="70" MaxWidth="150" CanUserReorder="False">
<DataGridTextColumn Header="偏差" Width="0" FontSize="15" MinWidth="0" MaxWidth="150" CanUserReorder="False">
<DataGridTextColumn.Binding>
<MultiBinding StringFormat="{}{0}" Converter="{StaticResource DeviationConvert}">
<Binding Path="Grams"></Binding>
<Binding Path="DispenseGrams"></Binding>
</MultiBinding>
</DataGridTextColumn.Binding>
</DataGridTextColumn>
</DataGridTextColumn>
<DataGridTextColumn Header="开始时间" Width="300" FontSize="15" Binding="{Binding DispenseStartTime,StringFormat='yyyy-MM-dd HH:mm:ss'}" MaxWidth="200" MinWidth="500" CanUserReorder="False"/>
<DataGridTextColumn Header="结束时间" Width="300" FontSize="15" Binding="{Binding DispenseEndTime,StringFormat='yyyy-MM-dd HH:mm:ss'}" MaxWidth="200" MinWidth="500" CanUserReorder="False"/>
</DataGrid.Columns>
</DataGrid>
+29 -10
View File
@@ -27,18 +27,35 @@ namespace Audit.View
public QueryView()
{
InitializeComponent();
this.DataGridDyelots.LoadingRow += new EventHandler<DataGridRowEventArgs>(this.DataGridEquipment_LoadingRow);//生成序列号
}
/// <summary>
/// 生成序列号的方法
/// </summary>
private void DataGridEquipment_LoadingRow(object sender, DataGridRowEventArgs e)
{
e.Row.Header = e.Row.GetIndex() + 1;
}
public static string query_start = null;//全局变量开始时间
public static string query_end = null;//全局变量结束时间
private void UserControl_Loaded(object sender, RoutedEventArgs e)//打开页面执行
{
this.query_date_start.Text = DateTime.Now.ToString("yyyy-MM-dd");//填入当天时间
this.query_date_end.Text = DateTime.Now.ToString("yyyy-MM-dd");//填入当天时间
}
//public static string Dyelots_Button = null;
public static int sqlButton_Click=0;
public static int sqlButton_Click=10;
public static Dyelots Dyelots_Button = new Dyelots();
public static DyelotsBulkedRecipe DyelotsBulkedRecipe_Button = new DyelotsBulkedRecipe();
private void Button_Click(object sender, RoutedEventArgs e)//确认按钮事件
{
string DataGridDyelots_Button = this.Dyelots_Dyelot.Text;//传递工单输入框
string DataGridMachine_Button = this.Dyelots_Machine.Text;//传递机台输入框
string query_start = this.query_date_start.Text;//传递开始时间
string query_end = this.query_date_end.Text;//传递结束时间
query_start = this.query_date_start.Text;//传递开始时间
query_end = this.query_date_end.Text;//传递结束时间
if (string.IsNullOrWhiteSpace(DataGridDyelots_Button))//工单为空进入下一步判断
{
if (string.IsNullOrWhiteSpace(query_start) && string.IsNullOrWhiteSpace(query_end))//判断查询时间是否存在
@@ -47,7 +64,9 @@ namespace Audit.View
}
else
{
query_end = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd");
string t =DateTime.Now.ToString("yyyy-MM-dd");
int query_endT = DateTime.Compare(Convert.ToDateTime(query_end), Convert.ToDateTime(t)); //比较结束时间及当期,小于-1 等于0 大于1
if(query_endT == 0) query_end = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"); //如果结束时间为空则填入当天时间加1天
int query_TimeCompare = DateTime.Compare(Convert.ToDateTime(query_start), Convert.ToDateTime(query_end)); //比较开始结束时间,小于-1 等于0 大于1
if (query_TimeCompare == 1)//判断查询时间是否有效,等于1无效
{
@@ -84,13 +103,13 @@ namespace Audit.View
int rownum = this.DataGridDyelots.SelectedIndex;//获取鼠标选中行并定义变量
if (rownum != -1)
{
string DataGridDyelots_value = (DataGridDyelots.Columns[0].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第0列选中行单元格,单号
string DataGridReDye_value = (DataGridDyelots.Columns[1].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第1列选中行单元格,重染
//string DataGridMachine_value = (DataGridDyelots.Columns[2].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第2列选中行单元格,机台
string DataGridCreationTime_value = (DataGridDyelots.Columns[3].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第3列选中行单元格,开单时间
//Dyelots_Dyelot.Text = DataGridDyelots_value.ToString();//获取工单单元格字符串填入工单输入框
string DataGridDyelots_value = (DataGridDyelots.Columns[1].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第0列选中行单元格,单号
string DataGridReDye_value = (DataGridDyelots.Columns[2].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第1列选中行单元格,重染
string DataGridMachine_value = (DataGridDyelots.Columns[3].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第2列选中行单元格,机台
string DataGridCreationTime_value = (DataGridDyelots.Columns[4].GetCellContent(DataGridDyelots.Items[rownum]) as TextBlock).Text;//定位第3列选中行单元格,开单时间
Dyelots_Dyelot.Text = DataGridDyelots_value.ToString();//获取工单单元格字符串填入工单输入框
Dyelots_ReDye.Text = DataGridReDye_value.ToString(); //获取重染单元格字符串填入重染框
//Dyelots_Machine.Text = DataGridMachine_value.ToString();//获取机台单元格字符串填入机台输入框
Dyelots_Machine.Text = DataGridMachine_value.ToString();//获取机台单元格字符串填入机台输入框
Dyelots_CreationTime.Text = DataGridCreationTime_value.ToString();//获取开单时间单元格字符串填入开单时间框
DyelotsBulkedRecipe_Button.Dyelot = DataGridDyelots_value;//传递工单信息至sql实例
sqlButton_Click = 2;//传递按钮信息以查询
+192 -4
View File
@@ -4,12 +4,19 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:Audit.View"
xmlns:ConvertMoels="clr-namespace:Audit.ConvertMoels"
mc:Ignorable="d" DataContext="{Binding Source={StaticResource Locator},Path=Statistics}"
d:DesignHeight="900" d:DesignWidth="1140"
Loaded="UserControl_Loaded"
xmlns:mah="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro">
<UserControl.Resources>
<ConvertMoels:ConsumptionConvert x:Key="ConsumptionConvert"/>
<ConvertMoels:GramsSumConvert x:Key="GramsSumConvert"/>
<ConvertMoels:MachinesGramsSumConvert x:Key="MachinesGramsSumConvert"/>
<ConvertMoels:MachinesDyelotsNumberConvert x:Key="MachinesDyelotsNumberConvert"/>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
@@ -20,10 +27,191 @@
<Grid Grid.Row="0"/>
<Grid Grid.Row="1">
<Grid Grid.Column="1">
<ContentControl x:Name="ContentControl" Margin="0,31,0,0">
<Label Content="统计" HorizontalAlignment="Left" Height="195" Margin="390,179,0,0" VerticalAlignment="Top" Width="530" FontSize="48" Background="{x:Null}"/>
</ContentControl>
</Grid>
<DataGrid x:Name="DataGridStatistics" MouseDoubleClick="DataGridStatistics_MouseDoubleClick"
ItemsSource="{Binding Product, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left"
Margin="15,15,0,150" d:ItemsSource="{d:SampleData ItemCount=200}" AutoGenerateColumns="False"
MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9"
GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40"
HorizontalContentAlignment="Right" Grid.ColumnSpan="2" CanUserReorderColumns="False">
<DataGrid.RowStyle >
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Background" Value="#FFFFFFFF" />
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="#FFF5F5F5" />
</Trigger>
<Trigger Property="IsMouseOver" Value="False">
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.RowStyle>
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="MinWidth" Value="20"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#FFC0C0C0"/>
<Setter Property="BorderBrush" Value="#FFC0C0C0"/>
<Setter Property="Foreground" Value="#000000"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.CellStyle>
<DataGrid.Columns>
<!--列信息绑定-->
<DataGridTextColumn Header="原料代码" Width="100" FontSize="15" Binding="{Binding ProductCode}" MaxWidth="150" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="原料名称" Width="130" FontSize="15" Binding="{Binding ProductName}" MaxWidth="200" MinWidth="50" CanUserReorder="False"/>
<DataGridTextColumn Header="单价(¥/kg)" Width="0" FontSize="15" Binding="{Binding Price}" MaxWidth="0" MinWidth="0" CanUserReorder="False"/>
<DataGridTextColumn Header="总消耗(kg)" Width="120" FontSize="15" MaxWidth="200" MinWidth="100" CanUserReorder="False">
<!--事件名称:消耗总量计算,转换器ConsumptionConvert-->
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="{Binding Path=ProductCode,Converter={StaticResource ConsumptionConvert}}">
</Setter>
<Setter Property="TextAlignment" Value="Right"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="总金额(¥)" Width="0" FontSize="15" MaxWidth="0" MinWidth="0" CanUserReorder="False">
<!--事件名称:总价计算,转换器GramsSumConvert-->
<DataGridTextColumn.Binding>
<MultiBinding StringFormat="{}{0}" Converter="{StaticResource GramsSumConvert}">
<Binding Path="ProductCode"></Binding>
<Binding Path="Price"></Binding>
</MultiBinding>
</DataGridTextColumn.Binding>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
<DatePicker x:Name="query_date_start" HorizontalAlignment="Left" Height="30" Margin="450,0,0,100" VerticalAlignment="Bottom" Width="115" FontSize="15" Padding="1,1,0,1">
<DatePicker.Resources>
<Style TargetType="DatePickerTextBox">
<Setter Property="IsReadOnly" Value="True"/>
</Style>
</DatePicker.Resources>
</DatePicker>
<ComboBox x:Name="query_date_start_time" HorizontalAlignment="Left" Height="30" Margin="575,0,0,100" Text="0:00:00"
VerticalAlignment="Bottom" Width="100" FontSize="15" IsReadOnly="True" IsEditable="True"
Background="White" Foreground="#FF474747" BorderBrush="#FFC2C2C2" Padding="0,-1,0,0">
<ComboBoxItem Content="0:00:00"/>
<ComboBoxItem x:Name="st1" Content=""/>
<ComboBoxItem x:Name="st2" Content=""/>
<ComboBoxItem x:Name="st3" Content=""/>
<ComboBoxItem x:Name="st4" Content=""/>
<ComboBoxItem x:Name="st5" Content=""/>
<ComboBoxItem x:Name="st6" Content=""/>
<ComboBoxItem x:Name="st7" Content=""/>
<ComboBoxItem x:Name="st8" Content=""/>
<ComboBoxItem x:Name="st9" Content=""/>
</ComboBox>
<DatePicker x:Name="query_date_end" HorizontalAlignment="Left" Height="30" Margin="715,0,0,100" VerticalAlignment="Bottom" Width="115" FontSize="15" Padding="1,1,0,1" >
<DatePicker.Resources>
<Style TargetType="DatePickerTextBox">
<Setter Property="IsReadOnly" Value="True"/>
<Setter Property="Text" Value=""/>
</Style>
</DatePicker.Resources>
</DatePicker>
<ComboBox x:Name="query_date_end_time" HorizontalAlignment="Left" Height="30" Margin="840,0,0,100" Text="0:00:00"
VerticalAlignment="Bottom" Width="100" FontSize="15" IsReadOnly="True" IsEditable="True"
Background="White" Foreground="#FF474747" BorderBrush="#FFC2C2C2" Padding="0,-1,0,0">
<ComboBoxItem Content="0:00:00"/>
<ComboBoxItem x:Name="et1" Content=""/>
<ComboBoxItem x:Name="et2" Content=""/>
<ComboBoxItem x:Name="et3" Content=""/>
<ComboBoxItem x:Name="et4" Content=""/>
<ComboBoxItem x:Name="et5" Content=""/>
<ComboBoxItem x:Name="et6" Content=""/>
<ComboBoxItem x:Name="et7" Content=""/>
<ComboBoxItem x:Name="et8" Content=""/>
<ComboBoxItem x:Name="et9" Content=""/>
</ComboBox>
<TextBlock HorizontalAlignment="Left" Height="45" Margin="675,0,0,101" TextWrapping="Wrap" Text="~"
VerticalAlignment="Bottom" Width="40" FontSize="40"/>
<Button Content="统计" HorizontalAlignment="Left" Margin="965,0,0,50"
VerticalAlignment="Bottom" Height="65" Width="135" FontSize="40"
BorderBrush="{x:Null}" Background="#FFCECECE" Click="Button_Click"/>
<!--原料类型-->
<ComboBox x:Name="stuff_ProductType" HorizontalAlignment="Left" Height="30" Margin="810,0,0,50" Text="全部原料"
VerticalAlignment="Bottom" Width="95" FontSize="16" IsReadOnly="True" IsEditable="True">
<ComboBoxItem Content="全部原料"></ComboBoxItem>
<ComboBoxItem Content="染料"></ComboBoxItem>
<ComboBoxItem Content="助剂"></ComboBoxItem>
<ComboBoxItem Content="粉体助剂"></ComboBoxItem>
<ComboBoxItem Content="液体染料"></ComboBoxItem>
</ComboBox>
<TextBox x:Name="productcode" HorizontalAlignment="Left" Height="30" Margin="100,0,0,100" VerticalAlignment="Bottom" Width="235" FontSize="16" IsReadOnly="True" MaxLines="1"/>
<TextBox x:Name="productname" HorizontalAlignment="Left" Height="30" Margin="100,0,0,50" VerticalAlignment="Bottom" Width="235" FontSize="16" IsReadOnly="True" MaxLines="1"/>
<TextBox x:Name="productsum" HorizontalAlignment="Left" Height="30" Margin="450,0,0,50" VerticalAlignment="Bottom" Width="250" FontSize="16" IsReadOnly="True" MaxLines="1"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="720,0,0,50" TextWrapping="Wrap" Text="原料类型"
VerticalAlignment="Bottom" Width="90" FontSize="20"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="350,0,0,100" TextWrapping="Wrap" Text="日期范围"
VerticalAlignment="Bottom" Width="90" FontSize="20"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="15,0,0,100" TextWrapping="Wrap" Text="原料代码"
VerticalAlignment="Bottom" Width="90" FontSize="20"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="15,0,0,50" TextWrapping="Wrap" Text="原料名称"
VerticalAlignment="Bottom" Width="90" FontSize="20"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="350,0,0,50" TextWrapping="Wrap" Text="消耗总量"
VerticalAlignment="Bottom" Width="90" FontSize="20"/>
<DataGrid x:Name="DataGridStatistics_mac"
ItemsSource="{Binding Machines , Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectionMode="Single" AlternationCount="2" IsReadOnly="True" HorizontalAlignment="Left"
Margin="400,15,0,150" d:ItemsSource="{d:SampleData ItemCount=200}" AutoGenerateColumns="False"
MinColumnWidth="30" HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9"
GridLinesVisibility="All" BorderBrush="#CCCCCC" BorderThickness="1,1,1,1" ColumnHeaderHeight="40"
HorizontalContentAlignment="Right" CanUserReorderColumns="False" SelectionChanged="DataGridStatistics_mac_SelectionChanged">
<DataGrid.RowStyle >
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Background" Value="#FFFFFFFF" />
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="#FFF5F5F5" />
</Trigger>
<Trigger Property="IsMouseOver" Value="False"/>
</Style.Triggers>
</Style>
</DataGrid.RowStyle>
<DataGrid.CellStyle>
<Style TargetType="{x:Type DataGridCell}">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="MinWidth" Value="20"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#FFC0C0C0"/>
<Setter Property="BorderBrush" Value="#FFC0C0C0"/>
<Setter Property="Foreground" Value="#000000"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.CellStyle>
<DataGrid.Columns>
<!--列信息绑定-->
<DataGridTextColumn Header="机台" Width="100" FontSize="15" Binding="{Binding Name}" MaxWidth="150" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="机台消耗(kg)" Width="120" FontSize="15" MaxWidth="180" MinWidth="100" CanUserReorder="False">
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="{Binding Path=Name,Converter={StaticResource MachinesGramsSumConvert}}"/>
<Setter Property="TextAlignment" Value="Right"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="料单数量" Width="70" FontSize="15" MaxWidth="150" MinWidth="50" CanUserReorder="False">
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="{Binding Path=Name,Converter={StaticResource MachinesDyelotsNumberConvert}}"/>
<Setter Property="TextAlignment" Value="Right"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Grid>
</UserControl>
+207 -1
View File
@@ -1,4 +1,5 @@
using System;
using Audit.ViewModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -20,12 +21,217 @@ namespace Audit.View
/// </summary>
public partial class StatisticsView : UserControl
{
ReadIni readini = new ReadIni();
string filePath = "" + System.Environment.CurrentDirectory + "\\config_Audit.ini";//获取当前文件目录
public static string time1;
public static string time2;
public static string time3;
public static string time4;
public static string time5;
public static string time6;
public static string time7;
public static string time8;
public static string time9;
public static string date_start_time;
public static string date_end_time;
///<Summary>
/// StatisticsView
///</Summary>
public StatisticsView()
{
InitializeComponent();
File();
Work();
}
public void File()//读取配置文件
{
time1 = ReadIni.ReadIniData("WORKER TIME", "WORKERT1", "", filePath);
time2 = ReadIni.ReadIniData("WORKER TIME", "WORKERT2", "", filePath);
time3 = ReadIni.ReadIniData("WORKER TIME", "WORKERT3", "", filePath);
time4 = ReadIni.ReadIniData("WORKER TIME", "WORKERT4", "", filePath);
time5 = ReadIni.ReadIniData("WORKER TIME", "WORKERT5", "", filePath);
time6 = ReadIni.ReadIniData("WORKER TIME", "WORKERT6", "", filePath);
time7 = ReadIni.ReadIniData("WORKER TIME", "WORKERT7", "", filePath);
time8 = ReadIni.ReadIniData("WORKER TIME", "WORKERT8", "", filePath);
time9 = ReadIni.ReadIniData("WORKER TIME", "WORKERT9", "", filePath);
}
public void Work()//时间下拉框状态
{
if (time1 != "")
{
this.st1.Visibility = Visibility.Visible;
this.et1.Visibility = Visibility.Visible;
this.st1.Content = time1;
this.et1.Content = time1;
}
else
{
this.st1.Visibility = Visibility.Collapsed;
this.et1.Visibility = Visibility.Collapsed;
}
if (time2 != "")
{
this.st2.Visibility = Visibility.Visible;
this.et2.Visibility = Visibility.Visible;
this.st2.Content = time2;
this.et2.Content = time2;
}
else
{
this.st2.Visibility = Visibility.Collapsed;
this.et2.Visibility = Visibility.Collapsed;
}
if (time3 != "")
{
this.st3.Visibility = Visibility.Visible;
this.et3.Visibility = Visibility.Visible;
this.st3.Content = time3;
this.et3.Content = time3;
}
else
{
this.st3.Visibility = Visibility.Collapsed;
this.et3.Visibility = Visibility.Collapsed;
}
if (time4 != "")
{
this.st4.Visibility = Visibility.Visible;
this.et4.Visibility = Visibility.Visible;
this.st4.Content = time4;
this.et4.Content = time4;
}
else
{
this.st4.Visibility = Visibility.Collapsed;
this.et4.Visibility = Visibility.Collapsed;
}
if (time5 != "")
{
this.st5.Visibility = Visibility.Visible;
this.et5.Visibility = Visibility.Visible;
this.st5.Content = time5;
this.et5.Content = time5;
}
else
{
this.st5.Visibility = Visibility.Collapsed;
this.et5.Visibility = Visibility.Collapsed;
}
if (time6 != "")
{
this.st6.Visibility = Visibility.Visible;
this.et6.Visibility = Visibility.Visible;
this.st6.Content = time6;
this.et6.Content = time6;
}
else
{
this.st6.Visibility = Visibility.Collapsed;
this.et6.Visibility = Visibility.Collapsed;
}
if (time7 != "")
{
this.st7.Visibility = Visibility.Visible;
this.et7.Visibility = Visibility.Visible;
this.st7.Content = time7;
this.et7.Content = time7;
}
else
{
this.st7.Visibility = Visibility.Collapsed;
this.et7.Visibility = Visibility.Collapsed;
}
if (time8 != "")
{
this.st8.Visibility = Visibility.Visible;
this.et8.Visibility = Visibility.Visible;
this.st8.Content = time8;
this.et8.Content = time8;
}
else
{
this.st8.Visibility = Visibility.Collapsed;
this.et8.Visibility = Visibility.Collapsed;
}
if (time9 != "")
{
this.st9.Visibility = Visibility.Visible;
this.et9.Visibility = Visibility.Visible;
this.st9.Content = time9;
this.et9.Content = time9;
}
else
{
this.st9.Visibility = Visibility.Collapsed;
this.et9.Visibility = Visibility.Collapsed;
}
}
public static string DataGridStatistics_ProductCode = null;
public static Boolean Button_machines_sql = false;
private void DataGridStatistics_MouseDoubleClick(object sender, MouseButtonEventArgs e)//数据表双击事件
{
int rownum = DataGridStatistics.SelectedIndex;//获取鼠标选中行并定义变量
if (rownum != -1)//判断鼠标定位是否有效
{
/*定位选中行及指定列单元格文本信息*/
DataGridStatistics_ProductCode = (DataGridStatistics.Columns[0].GetCellContent(DataGridStatistics.Items[rownum]) as TextBlock).Text;//定位第0列,原料代码
string DataGridStatistics_ProductName = (DataGridStatistics.Columns[1].GetCellContent(DataGridStatistics.Items[rownum]) as TextBlock).Text;//定位第1列,原料名称
string DataGridStatistics_unit_price = (DataGridStatistics.Columns[2].GetCellContent(DataGridStatistics.Items[rownum]) as TextBlock).Text;//定位第2列,原料名称
string DataGridStatistics_sum = (DataGridStatistics.Columns[3].GetCellContent(DataGridStatistics.Items[rownum]) as TextBlock).Text;//定位第3列,原料名称
string DataGridStatistics_total_price = (DataGridStatistics.Columns[4].GetCellContent(DataGridStatistics.Items[rownum]) as TextBlock).Text;//定位第4列,原料名称
this.productname.Text = DataGridStatistics_ProductName;//填入原料名
this.productcode.Text = DataGridStatistics_ProductCode;
if(this.productsum.Text != "") this.productsum.Text = DataGridStatistics_sum + "KG";
Button_machines_sql = true;
}
}
public static string query_start = null;//全局变量开始时间
public static string query_end = null;//全局变量结束时间
private void UserControl_Loaded(object sender, RoutedEventArgs e)//打开页面执行
{
this.query_date_start.Text = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd");//填入当天时间前30天
this.query_date_end.Text = DateTime.Now.ToString("yyyy-MM-dd");//填入当天时间
}
public static int Buttontype_sql = -2;//全局变量原料类型
public static Boolean Button_sql = true;//全局变量按钮状态
private void Button_Click(object sender, RoutedEventArgs e)
{
query_start = this.query_date_start.Text;//传递开始日期
date_start_time = this.query_date_start_time.Text;//传递开始时间
query_end = this.query_date_end.Text;//传递结束日期
date_end_time = this.query_date_end_time.Text;//传递结束时间
string t =DateTime.Now.ToString("yyyy-MM-dd");
int query_endT = DateTime.Compare(Convert.ToDateTime(query_end), Convert.ToDateTime(t)); //比较结束时间及当期,小于-1 等于0 大于1
if (query_endT == 0) query_end = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"); //如果结束时间为空则填入当天时间加1天
if (query_end == DateTime.Now.ToString("yyyy-MM-dd")) query_end = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd");
int query_TimeCompare = DateTime.Compare(Convert.ToDateTime(query_start), Convert.ToDateTime(query_end)); //比较开始结束时间,小于-1 等于0 大于1
if (query_TimeCompare == 1)//判断查询时间是否有效,等于1无效
{
MessageBox.Show("SC:无效查询时间", "错误");//返回无效时间弹窗
}
else
{
if (this.stuff_ProductType.Text == "染料") Buttontype_sql = 0;//原料类型0。染料,1助剂,2粉体
if (this.stuff_ProductType.Text == "助剂") Buttontype_sql = 1;
if (this.stuff_ProductType.Text == "粉体助剂") Buttontype_sql = 2;
if (this.stuff_ProductType.Text == "液体染料") Buttontype_sql = 3;
if (this.stuff_ProductType.Text == "全部原料") Buttontype_sql = -1;
Button_sql = true;
}
}
private void DataGridStatistics_mac_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
}
}
}
+8 -5
View File
@@ -58,14 +58,14 @@
<DataGridTemplateColumn Header=" 序号" Width="50" MinWidth="10" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock FontSize="15" Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow}}, Path=Header}" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="10,0,0,0"></TextBlock>
<TextBlock FontSize="15" Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow}}, Path=Header}" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="10,0,0,0"></TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="原料代码" Width="130" FontSize="15" Binding="{Binding ProductCode}" MaxWidth="130" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="原料名称" Width="200" FontSize="15" Binding="{Binding ProductName}" MaxWidth="200" MinWidth="200" CanUserReorder="False"/>
<DataGridTextColumn Header="价格(¥/kg)" Width="100" FontSize="15" Binding="{Binding Price}" MaxWidth="100" MinWidth="100" CanUserReorder="False"/>
<DataGridTextColumn Header="供应商代码" Width="150" FontSize="15" Binding="{Binding ProductUnit}" MaxWidth="150" MinWidth="150" CanUserReorder="False"/>
<DataGridTextColumn Header="供应商" Width="150" FontSize="15" Binding="{Binding SUPPLIER}" MaxWidth="150" MinWidth="150" CanUserReorder="False"/>
<DataGridTextColumn Header="原料类型" Width="80" FontSize="15" MaxWidth="80" MinWidth="70" CanUserReorder="False">
<!--事件名称:原料类型数字转文字显示,转换器ProductTypeSQLConvert-->
<DataGridTextColumn.ElementStyle>
@@ -94,7 +94,9 @@
VerticalAlignment="Top" Width="100" FontSize="18" BorderBrush="{x:Null}" Background="{x:Null}" Grid.Column="1"/>
<RadioButton Content="粉体助剂" x:Name="Button_2" Click="Radiobutton" HorizontalAlignment="Left" Height="40" Margin="995,345,0,0"
VerticalAlignment="Top" Width="100" FontSize="18" BorderBrush="{x:Null}" Background="{x:Null}" Grid.Column="1"/>
<RadioButton Content="全部原料" x:Name="Button_all" Click="Radiobutton" HorizontalAlignment="Left" Height="40" Margin="995,385,0,0"
<RadioButton Content="液体染料" x:Name="Button_3" Click="Radiobutton" HorizontalAlignment="Left" Height="40" Margin="995,385,0,0"
VerticalAlignment="Top" Width="100" FontSize="18" BorderBrush="{x:Null}" Background="{x:Null}" Grid.Column="1"/>
<RadioButton Content="全部原料" x:Name="Button_all" Click="Radiobutton" HorizontalAlignment="Left" Height="40" Margin="995,425,0,0"
VerticalAlignment="Top" Width="100" FontSize="18" BorderBrush="{x:Null}" Background="{x:Null}" Grid.Column="1" IsChecked="True"/>
<!--原料代码-->
<TextBox x:Name="stuff_ProductCode" HorizontalAlignment="Left" Height="30" Margin="105,0,0,100" Text=""
@@ -113,6 +115,7 @@
<ComboBoxItem Content="染料"></ComboBoxItem>
<ComboBoxItem Content="助剂"></ComboBoxItem>
<ComboBoxItem Content="粉体助剂"></ComboBoxItem>
<ComboBoxItem Content="液体染料"></ComboBoxItem>
</ComboBox>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="560,0,0,100" TextWrapping="Wrap" Text="原料类型"
VerticalAlignment="Bottom" Width="100" FontSize="20"/>
@@ -123,7 +126,7 @@
<TextBlock HorizontalAlignment="Left" Height="30" Margin="400,0,0,50" TextWrapping="Wrap" Text="色彩"
VerticalAlignment="Bottom" Width="50" FontSize="20"/>
<!--供应商-->
<TextBox x:Name="stuff_ProductUnit" HorizontalAlignment="Left" Height="30" Margin="105,0,0,50" Text=""
<TextBox x:Name="stuff_SUPPLIER" HorizontalAlignment="Left" Height="30" Margin="105,0,0,50" Text=""
VerticalAlignment="Bottom" Width="130" FontSize="16" MaxLines="1" MaxLength="25"
InputMethod.IsInputMethodEnabled="False"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="15,0,0,50" TextWrapping="Wrap" Text="供应商"
@@ -135,7 +138,7 @@
<TextBlock HorizontalAlignment="Left" Height="30" Margin="255,0,0,50" TextWrapping="Wrap" Text="价格"
VerticalAlignment="Bottom" Width="45" FontSize="20"/>
<!--浓度-->
<TextBox x:Name="stuff_Concentration" HorizontalAlignment="Left" Height="30" Margin="585,0,0,50" Text="0"
<TextBox x:Name="stuff_Concentration" HorizontalAlignment="Left" Height="30" Margin="585,0,0,50" Text="100"
VerticalAlignment="Bottom" Width="50" FontSize="16" MaxLines="1" MaxLength="5"
InputMethod.IsInputMethodEnabled="False"/>
<TextBlock HorizontalAlignment="Left" Height="30" Margin="540,0,0,50" TextWrapping="Wrap" Text="浓度"
+67 -28
View File
@@ -52,7 +52,8 @@ namespace Audit.View
if (radiobutton == "染料") Buttontype_sql = 0;
if (radiobutton == "助剂") Buttontype_sql = 1;
if (radiobutton == "粉体助剂") Buttontype_sql = 2;
StuffView.Button_sql = true;
if (radiobutton == "液体染料") Buttontype_sql = 3;
Button_sql = true;
}
/// <summary>
@@ -60,7 +61,7 @@ namespace Audit.View
/// </summary>
private Product product = new Product();//最终存入sql的实体
private Product product_temp = new Product();//取出自sql的实体缓存
public static Boolean Button_sql = false;
public static Boolean Button_sql = true;
public static int Buttontype_sql = -1;
@@ -69,27 +70,48 @@ namespace Audit.View
Regex re_number = new Regex(@"^[0-9]+(.[0-9]{1,2})?$");//校验用正则表达式有1~2位小数的正实数
Regex re_char = new Regex(@"^[A-Za-z0-9\s@()()/+!!_-]+$");//校验用正则表达式由数字,26个英文字母,空白字符和@()()/+!!_-组成的字符串
int int_stuff_ProductType = 0;
if (this.stuff_ProductType.Text == "染料") int_stuff_ProductType = 0;//原料类型0。染料,1助剂,2粉体
if (this.stuff_ProductType.Text == "助剂") int_stuff_ProductType = 1;
if (this.stuff_ProductType.Text == "粉体助剂") int_stuff_ProductType = 2;
if (re_char.IsMatch(this.stuff_ProductCode.Text) == false) System.Windows.MessageBox.Show("ERR.C0101:无效的原料信息", "错误");//检查原料代码
if (this.stuff_ProductType.Text == "染料") //原料类型0。染料,1助剂,2粉体
{
int_stuff_ProductType = 0;
this.stuff_Concentration.Text = "100";
}
if (this.stuff_ProductType.Text == "助剂")
int_stuff_ProductType = 1;
if (this.stuff_ProductType.Text == "粉体助剂")
{
int_stuff_ProductType = 2;
this.stuff_Concentration.Text = "100";
}
if (this.stuff_ProductType.Text == "液体染料")
int_stuff_ProductType = 3;
if (re_char.IsMatch(this.stuff_ProductCode.Text) == false)
System.Windows.MessageBox.Show("ERR.C0101:无效的原料信息", "错误");//检查原料代码
else
if (string.IsNullOrEmpty(this.stuff_ProductName.Text)) System.Windows.MessageBox.Show("ERR.C0101-2:无效的原料信息", "错误");//检查原料名称
if (string.IsNullOrEmpty(this.stuff_ProductName.Text))
System.Windows.MessageBox.Show("ERR.C0101-2:无效的原料信息", "错误");//检查原料名称
else
if (string.IsNullOrEmpty(this.stuff_ProductType.Text)) System.Windows.MessageBox.Show("ERR.C0101-3:无效的原料信息", "错误");//检查原料类型
if (string.IsNullOrEmpty(this.stuff_ProductType.Text))
System.Windows.MessageBox.Show("ERR.C0101-3:无效的原料信息", "错误");//检查原料类型
else
if (string.IsNullOrEmpty(this.stuff_GRAVITY.Text)) System.Windows.MessageBox.Show("ERR.C0101-1:无效的原料信息", "错误");//检查原料比重
if (string.IsNullOrEmpty(this.stuff_GRAVITY.Text))
System.Windows.MessageBox.Show("ERR.C0101-1:无效的原料信息", "错误");//检查原料比重
else
if (re_number.IsMatch(this.stuff_GRAVITY.Text) == false) System.Windows.MessageBox.Show("ERR.C0102-1:原料信息错误", "错误");//检查比重输入信息
if (re_number.IsMatch(this.stuff_GRAVITY.Text) == false)
System.Windows.MessageBox.Show("ERR.C0102-1:原料信息错误", "错误");//检查比重输入信息
else
if (re_number.IsMatch(this.stuff_Concentration.Text) == false) System.Windows.MessageBox.Show("ERR.C0102-3:原料信息错误", "错误");//检查浓度输入信息
if (re_number.IsMatch(this.stuff_Concentration.Text) == false)
System.Windows.MessageBox.Show("ERR.C0102-3:原料信息错误", "错误");//检查浓度输入信息
else
if (float.Parse(this.stuff_GRAVITY.Text) < 0 || float.Parse(this.stuff_GRAVITY.Text) > 5) System.Windows.MessageBox.Show("ERR.C0102-2:原料信息错误", "错误");//检查比重输入数值
if (float.Parse(this.stuff_GRAVITY.Text) < 0 || float.Parse(this.stuff_GRAVITY.Text) > 5)
System.Windows.MessageBox.Show("ERR.C0102-2:原料信息错误", "错误");//检查比重输入数值
else
if(float.Parse(this.stuff_Concentration.Text) < 0 || float.Parse(this.stuff_Concentration.Text) > 100) System.Windows.MessageBox.Show("ERR.C0102-4:原料信息错误", "错误");//检查浓度输入数值
if(float.Parse(this.stuff_Concentration.Text) < 0 || float.Parse(this.stuff_Concentration.Text) > 100)
System.Windows.MessageBox.Show("ERR.C0102-4:原料信息错误", "错误");//检查浓度输入数值
else
{
if (int_stuff_ProductType == 0)//判断是否为染料,非染料写空
product.ProductCode = this.stuff_ProductCode.Text;//写入原料代码
product.ProductName = this.stuff_ProductName.Text;//写入原料名称
if (int_stuff_ProductType == 0 || int_stuff_ProductType == 3)//判断是否为染料,非染料写空
{
string colorValue = stuff_Color.Background.ToString();//获取色彩框背景色"#FFC1C2C3"
string StuffColor_R = string.Format("{0:X2}", colorValue.Substring(3, 2));//获取红色参数C1
@@ -103,17 +125,34 @@ namespace Audit.View
{
product.Color = null;//色彩栏写空
}
if (string.IsNullOrEmpty(this.stuff_Price.Text) == false) product.Price = Double.Parse(this.stuff_Price.Text);//判断价格数据是否有效,有效写入
if (string.IsNullOrEmpty(this.stuff_ProductUnit.Text) == false) product.ProductUnit = int.Parse(this.stuff_ProductUnit.Text);//判断供应商数据是否有效,有效写入
product.ProductCode = this.stuff_ProductCode.Text;//写入原料代码
product.ProductName = this.stuff_ProductName.Text;//写入原料名称
if (string.IsNullOrEmpty(this.stuff_Price.Text) == false)
product.Price = Double.Parse(this.stuff_Price.Text);//判断价格数据是否有效,有效写入
if (string.IsNullOrEmpty(this.stuff_SUPPLIER.Text) == false)
product.SUPPLIER = this.stuff_SUPPLIER.Text;//判断供应商数据是否有效,有效写
product.GRAVITY = Double.Parse(this.stuff_GRAVITY.Text);//写入原料比重
product.Concentration = Double.Parse(this.stuff_Concentration.Text);//写入原料浓度
product.ProductType = int_stuff_ProductType;//写入原料类型
new ProductProvider().Delete(product_temp);//删除数据库原目标信息。
var count = new ProductProvider().Insert(product);//添加数据库信息。
if (count == 0) System.Windows.MessageBox.Show("ERR.C0110-1:添加失败", "错误");//判断执行是否成功
else Button_sql = true;
if (this.stuff_ProductType.Text == "染料" || this.stuff_ProductType.Text == "粉体助剂")
product.Concentration = 0;
else
product.Concentration = Double.Parse(this.stuff_Concentration.Text);//写入原料浓度
product.ProductType = int_stuff_ProductType;//写入原料类型
product.ProductCode = this.stuff_ProductCode.Text;//写入原料代码
if (new ProductProvider().Selectsql(product).Count == 0)//判断数据库设定目标信息是否存在。
{
var count = new ProductProvider().Insert(product);//添加数据库信息。
if (count == 0)
System.Windows.MessageBox.Show("ERR.C0110-1:添加失败", "错误");//判断执行是否成功
else
Button_sql = true;
}
else
{
var count = new ProductProvider().Update(product);//添加数据库信息。
if (count == 0)
System.Windows.MessageBox.Show("ERR.C0102-5:更新失败", "错误");//执行是否成功
else
Button_sql = true;
}
}
}
@@ -124,7 +163,7 @@ namespace Audit.View
MessageBoxResult showProductName = System.Windows.MessageBox.Show(ShowProductName, "提示", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.Yes);//弹窗提示是否删除目标原料
if (showProductName == MessageBoxResult.Yes)//判断是否删除原料
{
var count = new ProductProvider().Delete(product_temp);//删除数据库目标信息。
var count = new ProductProvider().Delete(product);//删除数据库目标信息。
if (count == 0) System.Windows.MessageBox.Show("ERR.C0110-2:删除失败", "错误");//判断执行是否成功
else Button_sql = true;
}
@@ -139,18 +178,19 @@ namespace Audit.View
string DataGridStuff_ProductCode = (DataGridStuff.Columns[1].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第0列,原料代码
string DataGridStuff_ProductName = (DataGridStuff.Columns[2].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第1列,原料名称
string DataGridStuff_Price = (DataGridStuff.Columns[3].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第2列,价格
string DataGridStuff_ProductUnit = (DataGridStuff.Columns[4].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第3列,供应商
string DataGridstuff_SUPPLIER = (DataGridStuff.Columns[4].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第3列,供应商
string DataGridStuff_ProductType = (DataGridStuff.Columns[5].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第4列,类型
//string DataGridStuff_Color = (DataGridStuff.Columns[6].GetCellContent(DataGridStuff.Items[rownum])as TextBlock).Text;//定位第5列,色彩
string DataGridStuff_Concentration = (DataGridStuff.Columns[7].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第6列选中行单元格文本信息并去除空白字符,浓度
string DataGridStuff_GRAVITY = (DataGridStuff.Columns[8].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Text;//定位第7列,比重
/*stuff_Color.Background = (DataGridStuff.Columns[6].GetCellContent(DataGridStuff.Items[rownum]) as TextBlock).Background;//定位第5列,色彩,背景色传递至色彩框背景色*/
/*填写信息至指定文本框*/
//product_temp.ProductCode = DataGridStuff_ProductCode;//写入sql实体缓存
stuff_ProductCode.Text = DataGridStuff_ProductCode.Trim();//原料代码,去除空白字符
stuff_ProductName.Text = DataGridStuff_ProductName.Trim();//原料名称,去除空白字符
stuff_Price.Text = DataGridStuff_Price;//价格
stuff_ProductType.Text = DataGridStuff_ProductType;//类型
stuff_ProductUnit.Text = DataGridStuff_ProductUnit;//供应商
stuff_SUPPLIER.Text = DataGridstuff_SUPPLIER;//供应商
/*stuff_Color.Text = DataGridStuff_Color;//色彩数据*/
stuff_Concentration.Text = DataGridStuff_Concentration;//浓度
stuff_GRAVITY.Text = DataGridStuff_GRAVITY;//比重
@@ -165,7 +205,6 @@ namespace Audit.View
{
stuff_Color.Background = new SolidColorBrush(System.Windows.Media.Color.FromArgb(255, 255, 255, 255));//白色传递至色彩框背景色
}
product_temp.ProductCode = DataGridStuff_ProductCode;//写入sql实体缓存
}
}