sc 1 year ago
parent
commit
468b63fd8b
  1. 4
      ConvertMoels/GramsSQLConvert.cs
  2. 2
      Properties/Resources.en-US.resx
  3. 2
      Properties/Resources.zh-CN.resx
  4. 12
      View/WorkOrderView.xaml
  5. 72
      View/WorkOrderView.xaml.cs
  6. 2
      ViewModel/WorkOrderViewModel.cs

4
ConvertMoels/GramsSQLConvert.cs

@ -12,8 +12,8 @@ namespace DyeingComputer.ConvertMoels
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
bool G = System.Convert.ToBoolean(value);
if (!G)//判断单元格值是否为零
string G = System.Convert.ToString(value);
if (G=="0")//判断单元格值是否为零
{
return "black";//零返回
}

2
Properties/Resources.en-US.resx

@ -163,7 +163,7 @@
<value>Temperature</value>
</data>
<data name="lock" xml:space="preserve">
<value>Lock</value>
<value>Lock/Unlock</value>
</data>
<data name="New" xml:space="preserve">
<value>New</value>

2
Properties/Resources.zh-CN.resx

@ -163,7 +163,7 @@
<value>温度</value>
</data>
<data name="lock" xml:space="preserve">
<value>锁定</value>
<value>锁定/解锁</value>
</data>
<data name="New" xml:space="preserve">
<value>新建</value>

12
View/WorkOrderView.xaml

@ -18,12 +18,12 @@
<Grid VerticalAlignment="Top">
<Grid VerticalAlignment="Top">
<Rectangle Margin="0,0,0,0" Fill="#FFCCCCCC" VerticalAlignment="Top" Height="40"/>
<Button Content="{x:Static lang:Resources._lock}" x:Name="WorkOrderView_lock" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="0,0,0,0" VerticalAlignment="Top" Width="200" Background="White"/>
<Button Content="{x:Static lang:Resources.New}" x:Name="WorkOrderView_new" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="200,0,0,0" VerticalAlignment="Top" Width="200" Background="White"/>
<Button Content="{x:Static lang:Resources.Delete}" x:Name="WorkOrderView_del" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="400,0,0,0" VerticalAlignment="Top" Width="200" Background="White"/>
<Button Content="{x:Static lang:Resources.Redye}" x:Name="WorkOrderView_redy" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="600,0,0,0" VerticalAlignment="Top" Width="200" Background="White"/>
<Button Content="{x:Static lang:Resources._lock}" x:Name="WorkOrderView_lock" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="0,0,0,0" VerticalAlignment="Top" Width="200" Background="White" Click="WorkOrderView_lock_Click"/>
<Button Content="{x:Static lang:Resources.New}" x:Name="WorkOrderView_new" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="200,0,0,0" VerticalAlignment="Top" Width="200" Background="White" Click="WorkOrderView_new_Click"/>
<Button Content="{x:Static lang:Resources.Delete}" x:Name="WorkOrderView_del" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="400,0,0,0" VerticalAlignment="Top" Width="200" Background="White" Click="WorkOrderView_del_Click"/>
<Button Content="{x:Static lang:Resources.Redye}" x:Name="WorkOrderView_redy" FontSize="20" HorizontalAlignment="Left" Height="40" Margin="600,0,0,0" VerticalAlignment="Top" Width="200" Background="White" Click="WorkOrderView_redy_Click"/>
<DataGrid x:Name="Grid" AlternationCount="2" IsReadOnly="True" ItemsSource="{Binding sql}"
<DataGrid x:Name="Grid" AlternationCount="2" IsReadOnly="True" ItemsSource="{Binding sql}" SelectionChanged="Grid_SelectionChanged"
Margin="0,40,0,0" Height="400" d:ItemsSource="{d:SampleData ItemCount=20}" AutoGenerateColumns="False" MinColumnWidth="30"
HorizontalGridLinesBrush="#FFC9C9C9" VerticalGridLinesBrush="#FFC9C9C9" GridLinesVisibility="All" BorderBrush="#CCCCCC"
BorderThickness="1,1,1,1" ColumnHeaderHeight="40" HorizontalContentAlignment="Right" Grid.ColumnSpan="2"
@ -70,6 +70,8 @@
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="{x:Static lang:Resources.ProcessName}" Width="200" Binding="{Binding ProcessName}" IsReadOnly="True"/>
<DataGridTextColumn Header="ProcessID" Binding="{Binding ProcessID}" Width="0" MinWidth="0" MaxWidth="0"/>
<DataGridTextColumn Header="lock" Binding="{Binding lock}" Width="0" MinWidth="0" MaxWidth="0"/>
<DataGridTextColumn Header="{x:Static lang:Resources.State}" Width="90" IsReadOnly="True">
<!--事件名称:工作状态数字转文字显示,转换器StatenConvert-->
<DataGridTextColumn.ElementStyle>

72
View/WorkOrderView.xaml.cs

@ -15,7 +15,9 @@ using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Xml.Linq;
using static DyeingComputer.UserClass.SqliteHelper;
using static System.Collections.Specialized.BitVector32;
namespace DyeingComputer.View
{
@ -30,26 +32,84 @@ namespace DyeingComputer.View
InitializeComponent();
workorder_sql();
Workorder_sql();
}
private SQLiteHelper SQLiteHelpers = null; //定义数据库
private readonly string DBAddress = Environment.CurrentDirectory + "\\DataBase\\800COMPUTER.db"; //数据库路径
DataSet sql; //内存数据缓存
public void workorder_sql()
string WorkOrder_Numder;
string Process_Name;
string Process_id;
string _lock;
public void Workorder_sql()
{
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
SQLiteHelpers.Open(); //打开数据库
string Work_Time = DateTime.Now.ToString("yyyy/MM/dd");
string sql_script = "select * from WorkOrder where StartTime > '" + Work_Time + "'";
DataSet sql = SQLiteHelpers.ExecuteDataSet(sql_script, null); //读取计划表
if(sql!=null) Grid.ItemsSource = sql.Tables[0].DefaultView; //转显示计划表
string sql_script = "select * from WorkOrder where StartTime > '" + DateTime.Now.ToString("yyyy/MM/dd") + "'";
if (sql != null) sql.Clear(); //清空缓存
sql = SQLiteHelpers.ExecuteDataSet(sql_script, null); //读取计划表写入缓存
if(sql!=null) Grid.ItemsSource = sql.Tables[0].DefaultView; //转换显示计划表
SQLiteHelpers.Close(); //关闭连接
//sql.Clear(); //清除缓存
//System.GC.Collect();
}
private void WorkOrderView_lock_Click(object sender, RoutedEventArgs e)//锁定按钮
{
Dictionary<string, object> lock_v = new Dictionary<string, object>();//缓存函数
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
SQLiteHelpers.Open(); //打开数据库
if (_lock == "0") //改变lock的状态
{
lock_v.Add("lock", 1);
SQLiteHelpers.Update("WorkOrder", lock_v, "WorkOrder='"+WorkOrder_Numder+"'",null);
}else
{
lock_v.Add("lock", 0);
SQLiteHelpers.Update("WorkOrder", lock_v, "WorkOrder='" + WorkOrder_Numder + "'", null);
}
SQLiteHelpers.Close();
Workorder_sql();
}
private void WorkOrderView_new_Click(object sender, RoutedEventArgs e)//新建按钮
{
}
private void WorkOrderView_del_Click(object sender, RoutedEventArgs e)//删除按钮
{
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
SQLiteHelpers.Open(); //打开数据库
SQLiteHelpers.Delete("WorkOrder", "WorkOrder='"+ WorkOrder_Numder+"'", null);
SQLiteHelpers.Close();
Workorder_sql();
}
private void WorkOrderView_redy_Click(object sender, RoutedEventArgs e)//重染按钮
{
}
private void Grid_SelectionChanged(object sender, SelectionChangedEventArgs e)//表格选择事件
{
int rownum = Grid.SelectedIndex;//获取鼠标选中行并定义变量
if (rownum != -1)//判断鼠标定位是否有效
{
WorkOrder_Numder = (Grid.Columns[0].GetCellContent(Grid.Items[rownum]) as TextBlock).Text;//定位第0列,
Process_Name = (Grid.Columns[1].GetCellContent(Grid.Items[rownum]) as TextBlock).Text;//定位第1列,
Process_id = (Grid.Columns[2].GetCellContent(Grid.Items[rownum]) as TextBlock).Text;//定位第0列,
_lock = (Grid.Columns[3].GetCellContent(Grid.Items[rownum]) as TextBlock).Text;//定位第1列,
}
}
}
}

2
ViewModel/WorkOrderViewModel.cs

@ -13,8 +13,6 @@ namespace DyeingComputer.ViewModel
public class WorkOrderViewModel : ViewModelBase
{
public WorkOrderViewModel()
{

Loading…
Cancel
Save