@@ -50,13 +50,19 @@ | |||||
<None Remove="Image\内部.png" /> | <None Remove="Image\内部.png" /> | ||||
<None Remove="Image\告警.png" /> | <None Remove="Image\告警.png" /> | ||||
<None Remove="Image\告警\Wifi_NO.ico" /> | <None Remove="Image\告警\Wifi_NO.ico" /> | ||||
<None Remove="Image\告警\Wifi_NO.png" /> | |||||
<None Remove="Image\告警\Wifi_OK.ico" /> | <None Remove="Image\告警\Wifi_OK.ico" /> | ||||
<None Remove="Image\告警\Wifi_OK.png" /> | |||||
<None Remove="Image\告警\严重告警.png" /> | |||||
<None Remove="Image\告警\告警.png" /> | <None Remove="Image\告警\告警.png" /> | ||||
<None Remove="Image\告警\成功0ecb74.png" /> | <None Remove="Image\告警\成功0ecb74.png" /> | ||||
<None Remove="Image\告警\报错.png" /> | <None Remove="Image\告警\报错.png" /> | ||||
<None Remove="Image\告警\提醒359fda.png" /> | <None Remove="Image\告警\提醒359fda.png" /> | ||||
<None Remove="Image\告警\无告警.png" /> | |||||
<None Remove="Image\告警\无告警1.png" /> | |||||
<None Remove="Image\告警\正常.png" /> | <None Remove="Image\告警\正常.png" /> | ||||
<None Remove="Image\告警\消息.png" /> | <None Remove="Image\告警\消息.png" /> | ||||
<None Remove="Image\告警\轻微告警.png" /> | |||||
<None Remove="Image\告警\预警f44b4b.png" /> | <None Remove="Image\告警\预警f44b4b.png" /> | ||||
<None Remove="Image\图层1.png" /> | <None Remove="Image\图层1.png" /> | ||||
<None Remove="Image\圆形.png" /> | <None Remove="Image\圆形.png" /> | ||||
@@ -130,8 +136,10 @@ | |||||
<None Remove="Image\表格\表格顶左.png" /> | <None Remove="Image\表格\表格顶左.png" /> | ||||
<None Remove="Image\表格标题背景2.png" /> | <None Remove="Image\表格标题背景2.png" /> | ||||
<None Remove="Image\边框效果2.png" /> | <None Remove="Image\边框效果2.png" /> | ||||
<None Remove="Image\边角.png" /> | |||||
<None Remove="Image\退出.png" /> | <None Remove="Image\退出.png" /> | ||||
<None Remove="Image\退出按钮.png" /> | <None Remove="Image\退出按钮.png" /> | ||||
<None Remove="Image\阴影边框.png" /> | |||||
<None Remove="Image\顶部.png" /> | <None Remove="Image\顶部.png" /> | ||||
<None Remove="Image\顶部切图\Button_No.png" /> | <None Remove="Image\顶部切图\Button_No.png" /> | ||||
<None Remove="Image\顶部切图\Button_Select.png" /> | <None Remove="Image\顶部切图\Button_Select.png" /> | ||||
@@ -149,10 +157,21 @@ | |||||
<None Remove="Image\黑菠萝科技.png" /> | <None Remove="Image\黑菠萝科技.png" /> | ||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | |||||
<Resource Include="Image\告警\Wifi_NO.png" /> | |||||
<Resource Include="Image\告警\Wifi_OK.png" /> | |||||
<Resource Include="Image\告警\严重告警.png" /> | |||||
<Resource Include="Image\告警\无告警.png" /> | |||||
<Resource Include="Image\告警\无告警1.png" /> | |||||
<Resource Include="Image\告警\轻微告警.png" /> | |||||
<Resource Include="Image\边角.png" /> | |||||
</ItemGroup> | |||||
<ItemGroup> | <ItemGroup> | ||||
<Resource Include="Image\HBL.png" /> | <Resource Include="Image\HBL.png" /> | ||||
<Resource Include="Image\告警\Wifi_NO.ico" /> | <Resource Include="Image\告警\Wifi_NO.ico" /> | ||||
<Resource Include="Image\告警\Wifi_OK.ico" /> | <Resource Include="Image\告警\Wifi_OK.ico" /> | ||||
<Resource Include="Image\阴影边框.png" /> | |||||
<Resource Include="Image\顶部切图\Button_No.png" /> | <Resource Include="Image\顶部切图\Button_No.png" /> | ||||
<Resource Include="Image\顶部切图\Button_Select.png" /> | <Resource Include="Image\顶部切图\Button_Select.png" /> | ||||
<Resource Include="Image\顶部切图\Top_L.png" /> | <Resource Include="Image\顶部切图\Top_L.png" /> | ||||
@@ -169,6 +188,10 @@ | |||||
<Folder Include="Themes\" /> | <Folder Include="Themes\" /> | ||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | |||||
<PackageReference Include="BPA.Message" Version="1.0.11" /> | |||||
</ItemGroup> | |||||
<ItemGroup> | <ItemGroup> | ||||
<Resource Include="Fonts\iconfont.ttf" /> | <Resource Include="Fonts\iconfont.ttf" /> | ||||
<Resource Include="Image\bg.png" /> | <Resource Include="Image\bg.png" /> | ||||
@@ -0,0 +1,46 @@ | |||||
using BPA.Message.Enum; | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.Globalization; | |||||
using System.Linq; | |||||
using System.Text; | |||||
using System.Threading.Tasks; | |||||
using System.Windows.Data; | |||||
using System.Windows.Media; | |||||
namespace BPASmartClient.CustomResource.Converters | |||||
{ | |||||
public class ColorConverter : IValueConverter | |||||
{ | |||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) | |||||
{ | |||||
SolidColorBrush returnValue = new SolidColorBrush(Color.FromArgb(255, 0, 204, 255)); | |||||
switch ((ORDER_STATUS)value) | |||||
{ | |||||
case ORDER_STATUS.WAIT: | |||||
returnValue = new SolidColorBrush(Color.FromArgb(255, 0, 204, 255)); | |||||
break; | |||||
case ORDER_STATUS.COOKING: | |||||
returnValue = new SolidColorBrush(Color.FromArgb(255, 0, 255, 127)); | |||||
break; | |||||
case ORDER_STATUS.COMPLETED_COOK: | |||||
returnValue = new SolidColorBrush(Color.FromArgb(255, 255, 215, 00)); | |||||
break; | |||||
case ORDER_STATUS.COMPLETED_TAKE: | |||||
returnValue = new SolidColorBrush(Color.FromArgb(255, 102, 204, 153)); | |||||
break; | |||||
case ORDER_STATUS.ERR_NOT_REPLY_WHEN_COOKING: | |||||
returnValue = new SolidColorBrush(Color.FromArgb(255, 255, 0, 0)); | |||||
break; | |||||
default: | |||||
break; | |||||
} | |||||
return returnValue; | |||||
} | |||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) | |||||
{ | |||||
throw new NotImplementedException(); | |||||
} | |||||
} | |||||
} |
@@ -0,0 +1,45 @@ | |||||
using BPA.Message.Enum; | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.Globalization; | |||||
using System.Linq; | |||||
using System.Text; | |||||
using System.Threading.Tasks; | |||||
using System.Windows.Data; | |||||
namespace BPASmartClient.CustomResource.Converters | |||||
{ | |||||
public class TextConverter : IValueConverter | |||||
{ | |||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) | |||||
{ | |||||
string Text = string.Empty; | |||||
switch ((ORDER_STATUS)value) | |||||
{ | |||||
case ORDER_STATUS.WAIT: | |||||
Text = "等待制作"; | |||||
break; | |||||
case ORDER_STATUS.COOKING: | |||||
Text = "开始制作"; | |||||
break; | |||||
case ORDER_STATUS.COMPLETED_COOK: | |||||
Text = "等待取餐"; | |||||
break; | |||||
case ORDER_STATUS.COMPLETED_TAKE: | |||||
Text = "取餐完成"; | |||||
break; | |||||
case ORDER_STATUS.ERR_NOT_REPLY_WHEN_COOKING: | |||||
Text = "制作超时"; | |||||
break; | |||||
default: | |||||
break; | |||||
} | |||||
return Text; | |||||
} | |||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) | |||||
{ | |||||
throw new NotImplementedException(); | |||||
} | |||||
} | |||||
} |
@@ -0,0 +1,24 @@ | |||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> | |||||
<Style x:Key="TitleBarStyle" TargetType="Button"> | |||||
<Setter Property="Foreground" Value="#5500c2f4" /> | |||||
<Setter Property="FontSize" Value="24" /> | |||||
<Setter Property="FontFamily" Value="../Fonts/#iconfont" /> | |||||
<Setter Property="Template"> | |||||
<Setter.Value> | |||||
<ControlTemplate TargetType="Button"> | |||||
<Border Name="TitleBarBr" Background="Transparent"> | |||||
<ContentPresenter | |||||
Margin="{TemplateBinding Margin}" | |||||
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" | |||||
VerticalAlignment="{TemplateBinding VerticalContentAlignment}" /> | |||||
</Border> | |||||
<ControlTemplate.Triggers> | |||||
<Trigger Property="IsMouseOver" Value="true"> | |||||
<Setter TargetName="TitleBarBr" Property="Background" Value="#33ffffff" /> | |||||
</Trigger> | |||||
</ControlTemplate.Triggers> | |||||
</ControlTemplate> | |||||
</Setter.Value> | |||||
</Setter> | |||||
</Style> | |||||
</ResourceDictionary> |
@@ -1,4 +0,0 @@ | |||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" | |||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> | |||||
</ResourceDictionary> |
@@ -527,7 +527,7 @@ | |||||
<Setter Property="HorizontalContentAlignment" Value="Center"/> | <Setter Property="HorizontalContentAlignment" Value="Center"/> | ||||
<Setter Property="SnapsToDevicePixels" Value="true"/> | <Setter Property="SnapsToDevicePixels" Value="true"/> | ||||
<Setter Property="Foreground" Value="#abf4ff"></Setter> | <Setter Property="Foreground" Value="#abf4ff"></Setter> | ||||
<Setter Property="FontSize" Value="12"></Setter> | |||||
<Setter Property="FontSize" Value="10"></Setter> | |||||
<Setter Property="Template"> | <Setter Property="Template"> | ||||
<Setter.Value> | <Setter.Value> | ||||
<ControlTemplate TargetType="{x:Type DataGridRow}"> | <ControlTemplate TargetType="{x:Type DataGridRow}"> | ||||
@@ -1396,6 +1396,22 @@ | |||||
</Setter> | </Setter> | ||||
</Style> | </Style> | ||||
<Style x:Key="Separator1" TargetType="{x:Type Separator}"> | |||||
<Setter Property="Height" Value="1"/> | |||||
<Setter Property="Margin" Value="0,4,0,4"/> | |||||
<Setter Property="Template"> | |||||
<Setter.Value> | |||||
<ControlTemplate TargetType="{x:Type Separator}"> | |||||
<Border > | |||||
<Border.Background> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/顶部线条.png" /> | |||||
</Border.Background> | |||||
</Border> | |||||
</ControlTemplate> | |||||
</Setter.Value> | |||||
</Setter> | |||||
</Style> | |||||
<!-- TopLevelHeader --> | <!-- TopLevelHeader --> | ||||
<ControlTemplate x:Key="{x:Static MenuItem.TopLevelHeaderTemplateKey}" TargetType="{x:Type MenuItem}"> | <ControlTemplate x:Key="{x:Static MenuItem.TopLevelHeaderTemplateKey}" TargetType="{x:Type MenuItem}"> | ||||
<Border Name="Border" Cursor="Hand" > | <Border Name="Border" Cursor="Hand" > | ||||
@@ -1768,8 +1784,10 @@ | |||||
<Setter.Value> | <Setter.Value> | ||||
<ControlTemplate TargetType="{x:Type CheckBox}"> | <ControlTemplate TargetType="{x:Type CheckBox}"> | ||||
<StackPanel Background="Transparent" SnapsToDevicePixels="True" Orientation="Horizontal"> | <StackPanel Background="Transparent" SnapsToDevicePixels="True" Orientation="Horizontal"> | ||||
<Image x:Name="image1" Source="/BPASmartClient.CustomResource;component/Image/Cb_HalfChecked.png" Width="12" Height="14"></Image> | |||||
<Grid> | |||||
<Image Source="/BPASmartClient.CustomResource;component/Image/Cb_HalfChecked.png" Width="12" Height="14"></Image> | |||||
<Image x:Name="image1" Source="/BPASmartClient.CustomResource;component/Image/Cb_HalfChecked.png" Width="12" Height="14"></Image> | |||||
</Grid> | |||||
<ContentPresenter Content="{TemplateBinding Content}" ContentStringFormat="{TemplateBinding ContentStringFormat}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> | <ContentPresenter Content="{TemplateBinding Content}" ContentStringFormat="{TemplateBinding ContentStringFormat}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> | ||||
</StackPanel> | </StackPanel> | ||||
<ControlTemplate.Triggers> | <ControlTemplate.Triggers> | ||||
@@ -21,22 +21,23 @@ | |||||
<!--#region ToggleButton--> | <!--#region ToggleButton--> | ||||
<Style x:Key="StatusBtnStyle告警" TargetType="ToggleButton"> | <Style x:Key="StatusBtnStyle告警" TargetType="ToggleButton"> | ||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="Width" Value="36"></Setter> | |||||
<Setter Property="Height" Value="32"></Setter> | |||||
<Setter Property="Width" Value="30"></Setter> | |||||
<Setter Property="Height" Value="19"></Setter> | |||||
<Setter Property="Cursor" Value="Hand"></Setter> | <Setter Property="Cursor" Value="Hand"></Setter> | ||||
<Setter Property="IsChecked" Value="{Binding IsCheck,Mode=TwoWay}"></Setter> | <Setter Property="IsChecked" Value="{Binding IsCheck,Mode=TwoWay}"></Setter> | ||||
<Setter Property="Template"> | <Setter Property="Template"> | ||||
<Setter.Value> | <Setter.Value> | ||||
<ControlTemplate TargetType="ToggleButton"> | <ControlTemplate TargetType="ToggleButton"> | ||||
<Grid Cursor="Hand"> | <Grid Cursor="Hand"> | ||||
<Border x:Name="bd1" Cursor="Hand" Visibility="Collapsed" Width="25" Height="13" HorizontalAlignment="Right" Panel.ZIndex="100" VerticalAlignment="Top" Margin="0,-5,-5,0" CornerRadius="3" Background="#33FF0000" > | |||||
<TextBlock Text="{Binding ListNum}" Foreground="#FF2AA7D3" HorizontalAlignment="Center"></TextBlock> | |||||
<Border x:Name="bd1" Cursor="Hand" Visibility="Collapsed" Width="25" Height="13" HorizontalAlignment="Right" Panel.ZIndex="100" VerticalAlignment="Top" Margin="0,-10,-5,0" CornerRadius="3" Background="#2600CAFF" > | |||||
<TextBlock Text="{Binding ListNum}" Foreground="#FF00E6F7" HorizontalAlignment="Center" FontSize="8"></TextBlock> | |||||
<!----> | |||||
</Border> | </Border> | ||||
<Image x:Name="image1" Width="{TemplateBinding Width}" Height="{TemplateBinding Height}" Source="/BPASmartClient.CustomResource;component/Image/告警.png" Panel.ZIndex="0" Stretch="UniformToFill" ></Image> | |||||
<Image x:Name="image1" Width="{TemplateBinding Width}" Height="{TemplateBinding Height}" Source="/BPASmartClient.CustomResource;component/Image/告警/无告警.png" Panel.ZIndex="0" UseLayoutRounding="True" SnapsToDevicePixels="True" RenderOptions.BitmapScalingMode="HighQuality" ></Image> | |||||
</Grid> | </Grid> | ||||
<ControlTemplate.Triggers> | <ControlTemplate.Triggers> | ||||
<Trigger Property="IsChecked" Value="true"> | <Trigger Property="IsChecked" Value="true"> | ||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/有告警.png"></Setter> | |||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/告警/严重告警.png"></Setter> | |||||
</Trigger> | </Trigger> | ||||
<MultiDataTrigger> | <MultiDataTrigger> | ||||
<MultiDataTrigger.Conditions> | <MultiDataTrigger.Conditions> | ||||
@@ -44,7 +45,7 @@ | |||||
<Condition Binding="{Binding IsAlarm}" Value="true"></Condition> | <Condition Binding="{Binding IsAlarm}" Value="true"></Condition> | ||||
</MultiDataTrigger.Conditions> | </MultiDataTrigger.Conditions> | ||||
<MultiDataTrigger.Setters> | <MultiDataTrigger.Setters> | ||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/有告警.png"></Setter> | |||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/告警/严重告警.png"></Setter> | |||||
<Setter TargetName="bd1" Property="Visibility" Value="Visible"></Setter> | <Setter TargetName="bd1" Property="Visibility" Value="Visible"></Setter> | ||||
</MultiDataTrigger.Setters> | </MultiDataTrigger.Setters> | ||||
</MultiDataTrigger> | </MultiDataTrigger> | ||||
@@ -65,11 +66,11 @@ | |||||
<Setter.Value> | <Setter.Value> | ||||
<ControlTemplate TargetType="ToggleButton"> | <ControlTemplate TargetType="ToggleButton"> | ||||
<Grid Cursor="Hand"> | <Grid Cursor="Hand"> | ||||
<Image x:Name="image1" Width="{TemplateBinding Width}" Height="{TemplateBinding Height}" Source="/BPASmartClient.CustomResource;component/Image/告警/Wifi_NO.ico" Panel.ZIndex="0" ></Image> | |||||
<Image x:Name="image1" Width="{TemplateBinding Width}" Height="{TemplateBinding Height}" Source="/BPASmartClient.CustomResource;component/Image/告警/Wifi_NO.png" Panel.ZIndex="0" UseLayoutRounding="True" SnapsToDevicePixels="True" RenderOptions.BitmapScalingMode="HighQuality"></Image> | |||||
</Grid> | </Grid> | ||||
<ControlTemplate.Triggers> | <ControlTemplate.Triggers> | ||||
<Trigger Property="IsChecked" Value="true"> | <Trigger Property="IsChecked" Value="true"> | ||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/告警/Wifi_OK.ico"></Setter> | |||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/告警/Wifi_OK.png"></Setter> | |||||
</Trigger> | </Trigger> | ||||
<MultiDataTrigger> | <MultiDataTrigger> | ||||
<MultiDataTrigger.Conditions> | <MultiDataTrigger.Conditions> | ||||
@@ -77,7 +78,7 @@ | |||||
<Condition Binding="{Binding IsAlarm}" Value="true"></Condition> | <Condition Binding="{Binding IsAlarm}" Value="true"></Condition> | ||||
</MultiDataTrigger.Conditions> | </MultiDataTrigger.Conditions> | ||||
<MultiDataTrigger.Setters> | <MultiDataTrigger.Setters> | ||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/告警/Wifi_OK.ico"></Setter> | |||||
<Setter TargetName="image1" Property="Source" Value="/BPASmartClient.CustomResource;component/Image/告警/Wifi_OK.png"></Setter> | |||||
</MultiDataTrigger.Setters> | </MultiDataTrigger.Setters> | ||||
</MultiDataTrigger> | </MultiDataTrigger> | ||||
</ControlTemplate.Triggers> | </ControlTemplate.Triggers> | ||||
@@ -89,6 +90,14 @@ | |||||
<!--#endregion--> | <!--#endregion--> | ||||
<!--#region Image --> | <!--#region Image --> | ||||
<Style TargetType="Image"> | |||||
<Style.Setters> | |||||
<Setter Property="UseLayoutRounding" Value="True"></Setter> | |||||
<Setter Property="SnapsToDevicePixels" Value="True"></Setter> | |||||
<Setter Property="RenderOptions.BitmapScalingMode" Value="HighQuality"></Setter> | |||||
</Style.Setters> | |||||
</Style> | |||||
<Style x:Key="imagetop_L" TargetType="Image"> | <Style x:Key="imagetop_L" TargetType="Image"> | ||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="Height" Value="80"></Setter> | <Setter Property="Height" Value="80"></Setter> | ||||
@@ -274,10 +283,30 @@ | |||||
</Style.Setters> | </Style.Setters> | ||||
</Style> | </Style> | ||||
<Style x:Key="bordertop矩形" TargetType="Border"> | |||||
<Style x:Key="border阴影边框" TargetType="Border"> | |||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="Height" Value="50"></Setter> | <Setter Property="Height" Value="50"></Setter> | ||||
<Setter Property="VerticalAlignment" Value="Top"></Setter> | <Setter Property="VerticalAlignment" Value="Top"></Setter> | ||||
<Setter Property="Background"> | |||||
<Setter.Value> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/阴影边框.png"/> | |||||
</Setter.Value> | |||||
</Setter> | |||||
</Style.Setters> | |||||
</Style> | |||||
<Style x:Key="border边角" TargetType="Border"> | |||||
<Style.Setters> | |||||
<Setter Property="Background"> | |||||
<Setter.Value> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/边角.png"/> | |||||
</Setter.Value> | |||||
</Setter> | |||||
</Style.Setters> | |||||
</Style> | |||||
<Style x:Key="bordertop矩形" TargetType="Border"> | |||||
<Style.Setters> | |||||
<Setter Property="Background"> | <Setter Property="Background"> | ||||
<Setter.Value> | <Setter.Value> | ||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/顶部切图/顶部矩形.png"/> | <ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/顶部切图/顶部矩形.png"/> | ||||
@@ -285,7 +314,7 @@ | |||||
</Setter> | </Setter> | ||||
</Style.Setters> | </Style.Setters> | ||||
</Style> | </Style> | ||||
<Style x:Key="bordertopTitle" TargetType="Border"> | <Style x:Key="bordertopTitle" TargetType="Border"> | ||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="Height" Value="100"></Setter> | <Setter Property="Height" Value="100"></Setter> | ||||
@@ -297,6 +326,16 @@ | |||||
</Style.Setters> | </Style.Setters> | ||||
</Style> | </Style> | ||||
<Style x:Key="borderFromTitle" TargetType="Border"> | |||||
<Style.Setters> | |||||
<Setter Property="Background"> | |||||
<Setter.Value> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/tittle.png"/> | |||||
</Setter.Value> | |||||
</Setter> | |||||
</Style.Setters> | |||||
</Style> | |||||
<Style x:Key="border窗体背景1" TargetType="Border"> | <Style x:Key="border窗体背景1" TargetType="Border"> | ||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="Background"> | <Setter Property="Background"> | ||||
@@ -542,11 +581,11 @@ | |||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="HorizontalAlignment" Value="Right"></Setter> | <Setter Property="HorizontalAlignment" Value="Right"></Setter> | ||||
<Setter Property="VerticalAlignment" Value="Bottom"></Setter> | <Setter Property="VerticalAlignment" Value="Bottom"></Setter> | ||||
<Setter Property="Height" Value="20"></Setter> | |||||
<Setter Property="Width" Value="20"></Setter> | |||||
<Setter Property="Height" Value="23"></Setter> | |||||
<Setter Property="Width" Value="22"></Setter> | |||||
<Setter Property="Background"> | <Setter Property="Background"> | ||||
<Setter.Value> | <Setter.Value> | ||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/表格/表格底右.png" Stretch="None"/> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/窗体样式/From/右下.png" Stretch="None"/> | |||||
</Setter.Value> | </Setter.Value> | ||||
</Setter> | </Setter> | ||||
</Style.Setters> | </Style.Setters> | ||||
@@ -556,11 +595,11 @@ | |||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="HorizontalAlignment" Value="Left"></Setter> | <Setter Property="HorizontalAlignment" Value="Left"></Setter> | ||||
<Setter Property="VerticalAlignment" Value="Bottom"></Setter> | <Setter Property="VerticalAlignment" Value="Bottom"></Setter> | ||||
<Setter Property="Height" Value="20"></Setter> | |||||
<Setter Property="Width" Value="20"></Setter> | |||||
<Setter Property="Height" Value="22"></Setter> | |||||
<Setter Property="Width" Value="23"></Setter> | |||||
<Setter Property="Background"> | <Setter Property="Background"> | ||||
<Setter.Value> | <Setter.Value> | ||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/表格/表格底左.png" Stretch="None"/> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/窗体样式/From/左下.png" Stretch="None"/> | |||||
</Setter.Value> | </Setter.Value> | ||||
</Setter> | </Setter> | ||||
</Style.Setters> | </Style.Setters> | ||||
@@ -570,11 +609,11 @@ | |||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="HorizontalAlignment" Value="Left"></Setter> | <Setter Property="HorizontalAlignment" Value="Left"></Setter> | ||||
<Setter Property="VerticalAlignment" Value="Top"></Setter> | <Setter Property="VerticalAlignment" Value="Top"></Setter> | ||||
<Setter Property="Height" Value="90"></Setter> | |||||
<Setter Property="Width" Value="20"></Setter> | |||||
<Setter Property="Height" Value="22"></Setter> | |||||
<Setter Property="Width" Value="23"></Setter> | |||||
<Setter Property="Background"> | <Setter Property="Background"> | ||||
<Setter.Value> | <Setter.Value> | ||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/表格/表格顶左.png" Stretch="None"/> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/窗体样式/From/左边.png" Stretch="None"/> | |||||
</Setter.Value> | </Setter.Value> | ||||
</Setter> | </Setter> | ||||
</Style.Setters> | </Style.Setters> | ||||
@@ -584,11 +623,11 @@ | |||||
<Style.Setters> | <Style.Setters> | ||||
<Setter Property="HorizontalAlignment" Value="Right"></Setter> | <Setter Property="HorizontalAlignment" Value="Right"></Setter> | ||||
<Setter Property="VerticalAlignment" Value="Top"></Setter> | <Setter Property="VerticalAlignment" Value="Top"></Setter> | ||||
<Setter Property="Height" Value="20"></Setter> | |||||
<Setter Property="Width" Value="20"></Setter> | |||||
<Setter Property="Height" Value="23"></Setter> | |||||
<Setter Property="Width" Value="22"></Setter> | |||||
<Setter Property="Background"> | <Setter Property="Background"> | ||||
<Setter.Value> | <Setter.Value> | ||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/表格/表格顶右.png" Stretch="None"/> | |||||
<ImageBrush ImageSource="/BPASmartClient.CustomResource;component/Image/窗体样式/From/右上.png" Stretch="None"/> | |||||
</Setter.Value> | </Setter.Value> | ||||
</Setter> | </Setter> | ||||
</Style.Setters> | </Style.Setters> | ||||
@@ -669,7 +708,7 @@ | |||||
</VisualStateManager.VisualStateGroups> | </VisualStateManager.VisualStateGroups> | ||||
<StackPanel HorizontalAlignment="Center" Margin="5" Orientation="Horizontal"> | <StackPanel HorizontalAlignment="Center" Margin="5" Orientation="Horizontal"> | ||||
<Image Source="/BPASmartClient.CustomResource;component/Image/退出.png" Width="16" ></Image> | <Image Source="/BPASmartClient.CustomResource;component/Image/退出.png" Width="16" ></Image> | ||||
<TextBlock Margin="5,0,0,0" x:Name="textBlock" Text="{TemplateBinding Content}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Foreground="#A5FFFFFF" /> | |||||
<TextBlock Margin="5,0,0,0" x:Name="textBlock" Text="{TemplateBinding Content}" FontSize="14" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Foreground="#A5FFFFFF" /> | |||||
</StackPanel> | </StackPanel> | ||||
</Border> | </Border> | ||||
@@ -0,0 +1,32 @@ | |||||
<UserControl x:Class=" BPASmartClient.CustomResource.UserControls.DateTimeUI" | |||||
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:BPASmartClient.CustomResource.UserControls" | |||||
mc:Ignorable="d" | |||||
d:DesignHeight="50" d:DesignWidth="100"> | |||||
<UserControl.Resources> | |||||
<ResourceDictionary> | |||||
<ResourceDictionary.MergedDictionaries> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/GenricStyle.xaml"/> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/MyStyle.xaml"/> | |||||
</ResourceDictionary.MergedDictionaries> | |||||
</ResourceDictionary> | |||||
</UserControl.Resources> | |||||
<Grid> | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition Height="30"></RowDefinition> | |||||
<RowDefinition></RowDefinition> | |||||
</Grid.RowDefinitions> | |||||
<StackPanel Orientation="Horizontal" Grid.Row="0"> | |||||
<TextBlock x:Name="time" FontSize="16">14:48:30</TextBlock> | |||||
<Image Style="{DynamicResource timeImage}" Margin="10,0,0,0"></Image> | |||||
</StackPanel> | |||||
<StackPanel Grid.Row="1" Orientation="Horizontal"> | |||||
<TextBlock x:Name="dateRL" FontSize="10">星期一</TextBlock> | |||||
<TextBlock x:Name="date" Margin="10,0,0,0" FontSize="10">2021-11-13</TextBlock> | |||||
</StackPanel> | |||||
</Grid> | |||||
</UserControl> |
@@ -0,0 +1,56 @@ | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.Linq; | |||||
using System.Text; | |||||
using System.Threading; | |||||
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 BPASmartClient.CustomResource.UserControls | |||||
{ | |||||
/// <summary> | |||||
/// DateTimeUI.xaml 的交互逻辑 | |||||
/// </summary> | |||||
public partial class DateTimeUI : UserControl | |||||
{ | |||||
public DateTimeUI() | |||||
{ | |||||
InitializeComponent(); | |||||
Task.Run(new Action(() => | |||||
{ | |||||
while (true) | |||||
{ | |||||
this.Dispatcher.Invoke(new Action(() => | |||||
{ | |||||
time.Text = DateTime.Now.ToString("HH:mm:ss"); | |||||
date.Text = DateTime.Now.ToString("yyyy-MM-dd"); | |||||
if (DateTime.Now.DayOfWeek == DayOfWeek.Monday) | |||||
dateRL.Text = "星期一"; | |||||
else if (DateTime.Now.DayOfWeek == DayOfWeek.Tuesday) | |||||
dateRL.Text = "星期二"; | |||||
else if (DateTime.Now.DayOfWeek == DayOfWeek.Wednesday) | |||||
dateRL.Text = "星期三"; | |||||
else if (DateTime.Now.DayOfWeek == DayOfWeek.Thursday) | |||||
dateRL.Text = "星期四"; | |||||
else if (DateTime.Now.DayOfWeek == DayOfWeek.Friday) | |||||
dateRL.Text = "星期五"; | |||||
else if (DateTime.Now.DayOfWeek == DayOfWeek.Saturday) | |||||
dateRL.Text = "星期六"; | |||||
else if (DateTime.Now.DayOfWeek == DayOfWeek.Sunday) | |||||
dateRL.Text = "星期天"; | |||||
})); | |||||
Thread.Sleep(500); | |||||
} | |||||
})); | |||||
} | |||||
} | |||||
} |
@@ -10,4 +10,10 @@ | |||||
<PackageReference Include="Microsoft.Toolkit.Mvvm" Version="7.1.2" /> | <PackageReference Include="Microsoft.Toolkit.Mvvm" Version="7.1.2" /> | ||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | |||||
<ProjectReference Include="..\BPASmartClient.Business\BPASmartClient.Business.csproj" /> | |||||
<ProjectReference Include="..\BPASmartClient.Helper\BPASmartClient.Helper.csproj" /> | |||||
<ProjectReference Include="..\BPASmartClient.Model\BPASmartClient.Model.csproj" /> | |||||
</ItemGroup> | |||||
</Project> | </Project> |
@@ -0,0 +1,251 @@ | |||||
using BPASmartClient.Message; | |||||
using Microsoft.Toolkit.Mvvm.ComponentModel; | |||||
using Microsoft.Toolkit.Mvvm.Input; | |||||
using Microsoft.Win32; | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.Collections.ObjectModel; | |||||
using System.Diagnostics; | |||||
using System.IO; | |||||
using System.Linq; | |||||
using System.Text; | |||||
using System.Threading.Tasks; | |||||
using System.Windows; | |||||
using System.Windows.Media; | |||||
using System.Windows.Threading; | |||||
namespace BPASmartClient.ViewModel | |||||
{ | |||||
/// <summary> | |||||
/// 日志界面 | |||||
/// </summary> | |||||
public class LogViewModel :ObservableObject | |||||
{ | |||||
public DispatcherTimer dispatcherTimer; | |||||
private ObservableCollection<LogModel> _LogModels; | |||||
public ObservableCollection<LogModel> LogDataGrid | |||||
{ | |||||
get | |||||
{ | |||||
return _LogModels; | |||||
} | |||||
set | |||||
{ | |||||
if (_LogModels == value) | |||||
return; | |||||
_LogModels = value; | |||||
OnPropertyChanged("LogDataGrid"); | |||||
} | |||||
} | |||||
public LogViewModel() | |||||
{ | |||||
LogDataGrid = new ObservableCollection<LogModel>(); | |||||
MessageLog.GetInstance.InfoNotify = new Action<string>((s) => | |||||
{ | |||||
System.Windows.Application.Current.Dispatcher.Invoke((Action)(() => | |||||
{ | |||||
LogDataGrid.Insert(0,new LogModel { message = s,type = "Info" }); | |||||
})); | |||||
}); | |||||
MessageLog.GetInstance.ExInfoNotify = new Action<string>((s) => | |||||
{ | |||||
System.Windows.Application.Current.Dispatcher.Invoke((Action)(() => | |||||
{ | |||||
LogDataGrid.Insert(0,new LogModel { message = s,type = "Error" }); | |||||
})); | |||||
}); | |||||
ExcelCommand = new RelayCommand(() => | |||||
{ | |||||
ExcellOrder(); | |||||
}); | |||||
//dispatcherTimer = new DispatcherTimer { Interval = TimeSpan.FromSeconds(1) };//1秒一流转 | |||||
//dispatcherTimer.Tick += delegate | |||||
//{ | |||||
// if (TimedClear) | |||||
// { | |||||
// } | |||||
//}; | |||||
//dispatcherTimer.Start(); | |||||
} | |||||
/// <summary> | |||||
/// 导出数据 | |||||
/// </summary> | |||||
public void ExcellOrder() | |||||
{ | |||||
if (LogDataGrid.Count > 0) | |||||
{ | |||||
string text = "时间 类型 日志内容\n"; | |||||
LogDataGrid?.ToList().ForEach(temp => | |||||
{ | |||||
text = text + temp.time + " " + temp.type + " " + temp.message+ "\n"; | |||||
}); | |||||
SaveFileDialog openfile = new SaveFileDialog(); | |||||
openfile.Filter = "Txt文件(*.txt)|*.txt"; | |||||
if (openfile.ShowDialog() == false) | |||||
{ | |||||
return; | |||||
} | |||||
string path = openfile.FileName; | |||||
if (!System.IO.File.Exists(path)) | |||||
{ | |||||
//没有则创建这个文件 | |||||
FileStream fs1 = new FileStream(path,FileMode.Create,FileAccess.Write);//创建写入文件 | |||||
StreamWriter sw = new StreamWriter(fs1); | |||||
sw.WriteLine(text);//开始写入值 | |||||
sw.Close(); | |||||
fs1.Close(); | |||||
} | |||||
else | |||||
{ | |||||
FileStream fs = new FileStream(path,FileMode.Open,FileAccess.Write); | |||||
StreamWriter sr = new StreamWriter(fs); | |||||
sr.WriteLine(text);//开始写入值 | |||||
sr.Close(); | |||||
fs.Close(); | |||||
} | |||||
string msg = string.Format("记录导出完成,共导出记录{0}条,是否打开!",LogDataGrid.Count); | |||||
if (System.Windows.MessageBox.Show(msg,"提示",MessageBoxButton.OKCancel) == MessageBoxResult.OK) | |||||
{ | |||||
OpenFile(openfile.FileName); | |||||
} | |||||
} | |||||
else | |||||
System.Windows.MessageBox.Show("无数据!"); | |||||
} | |||||
/// <summary> | |||||
/// 打开指定路径下文件,比如:Word、Excel、Dll、图片等都可以(前提是你已经安装打开程序的对应软件) | |||||
/// </summary> | |||||
/// <param name="NewFileName">eg:D:\Test\模版8.doc</param> | |||||
/// <param name="NewFileName">eg:D:\Test\模版8.doc</param> | |||||
private void OpenFile(string NewFileName) | |||||
{ | |||||
Process process = new Process(); | |||||
ProcessStartInfo processStartInfo = new ProcessStartInfo(NewFileName); | |||||
process.StartInfo = processStartInfo; | |||||
#region 下面这段被注释掉代码(可以用来全屏打开代码) | |||||
//建立新的系统进程 | |||||
////System.Diagnostics.Process process = new System.Diagnostics.Process(); | |||||
//设置文件名,此处为图片的真实路径 + 文件名(需要有后缀) | |||||
////process.StartInfo.FileName = NewFileName; | |||||
//此为关键部分。设置进程运行参数,此时为最大化窗口显示图片。 | |||||
////process.StartInfo.Arguments = "rundll32.exe C://WINDOWS//system32//shimgvw.dll,ImageView_Fullscreen"; | |||||
// 此项为是否使用Shell执行程序,因系统默认为true,此项也可不设,但若设置必须为true | |||||
process.StartInfo.UseShellExecute = true; | |||||
#endregion | |||||
try | |||||
{ | |||||
process.Start(); | |||||
try | |||||
{ | |||||
// process.WaitForExit(); | |||||
} | |||||
catch (Exception ex) | |||||
{ | |||||
throw ex; | |||||
} | |||||
} | |||||
catch (Exception ex) | |||||
{ | |||||
throw ex; | |||||
} | |||||
finally | |||||
{ | |||||
try | |||||
{ | |||||
if (process != null) | |||||
{ | |||||
process.Close(); | |||||
process = null; | |||||
} | |||||
} | |||||
catch { } | |||||
} | |||||
} | |||||
private bool _RealTimeModel = true; | |||||
public bool RealTimeModel | |||||
{ | |||||
get | |||||
{ | |||||
return _RealTimeModel; | |||||
} | |||||
set | |||||
{ | |||||
if (_RealTimeModel == value) | |||||
return; | |||||
_RealTimeModel = value; | |||||
OnPropertyChanged("RealTimeModel"); | |||||
} | |||||
} | |||||
private bool _TimedClear = true; | |||||
public bool TimedClear | |||||
{ | |||||
get | |||||
{ | |||||
return _TimedClear; | |||||
} | |||||
set | |||||
{ | |||||
if (_TimedClear == value) | |||||
return; | |||||
_TimedClear = value; | |||||
OnPropertyChanged("TimedClear"); | |||||
} | |||||
} | |||||
public RelayCommand ExcelCommand { get; set; } | |||||
} | |||||
public class LogModel :ObservableObject | |||||
{ | |||||
public string time { get; set; } | |||||
private string _type; | |||||
public string type | |||||
{ | |||||
get | |||||
{ | |||||
return _type; | |||||
} | |||||
set | |||||
{ | |||||
if (_type == value) | |||||
return; | |||||
_type = value; | |||||
if(_type== "Error") foreground = new SolidColorBrush((System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString("#ed0032")); | |||||
OnPropertyChanged("type"); | |||||
} | |||||
} | |||||
public string message { get; set; } | |||||
private Brush _foreground; | |||||
public Brush foreground | |||||
{ | |||||
get | |||||
{ | |||||
return _foreground; | |||||
} | |||||
set | |||||
{ | |||||
if (_foreground == value) | |||||
return; | |||||
_foreground = value; | |||||
OnPropertyChanged("foreground"); | |||||
} | |||||
} | |||||
public LogModel() | |||||
{ | |||||
foreground=new SolidColorBrush((System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString("#21bb2e")); | |||||
time =DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); | |||||
} | |||||
} | |||||
} |
@@ -0,0 +1,25 @@ | |||||
using BPASmartClient.Business; | |||||
using Microsoft.Toolkit.Mvvm.ComponentModel; | |||||
using Microsoft.Toolkit.Mvvm.Input; | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.Linq; | |||||
using System.Reflection; | |||||
using System.Text; | |||||
using System.Threading.Tasks; | |||||
using System.Windows; | |||||
using System.Windows.Input; | |||||
namespace BPASmartClient.ViewModel | |||||
{ | |||||
/// <summary> | |||||
/// 主界面 | |||||
/// </summary> | |||||
public class MainViewModel :ObservableObject | |||||
{ | |||||
public MainViewModel() | |||||
{ | |||||
} | |||||
} | |||||
} |
@@ -1,18 +1,115 @@ | |||||
using System; | using System; | ||||
using System.Collections.ObjectModel; | |||||
using System.Linq; | |||||
using System.Threading; | |||||
using BPA.Message.Enum; | |||||
using BPASmartClient.Helper; | |||||
using BPASmartClient.Model; | |||||
using Microsoft.Toolkit.Mvvm.ComponentModel; | using Microsoft.Toolkit.Mvvm.ComponentModel; | ||||
using Microsoft.Toolkit.Mvvm.Input; | |||||
using Microsoft.Toolkit.Mvvm.Messaging; | |||||
namespace BPASmartClient.ViewModel | namespace BPASmartClient.ViewModel | ||||
{ | { | ||||
public class OrderListDialogViewModel : ObservableObject | public class OrderListDialogViewModel : ObservableObject | ||||
{ | { | ||||
public static bool IsAutoClose = false; | |||||
public OrderListDialogViewModel() | public OrderListDialogViewModel() | ||||
{ | { | ||||
Init(); | |||||
} | |||||
private void Init() | |||||
{ | |||||
CloseButton(); | |||||
CancelButton(); | |||||
ConfirmButton(); | |||||
if (Json<KeepDataBase>.Data.orderLists.Count > 0) | |||||
{ | |||||
ThreadManage.GetInstance().Start(new Action(() => | |||||
{ | |||||
Thread.Sleep(10000); | |||||
if (!IsAutoClose) WeakReferenceMessenger.Default.Send("false", "Close"); | |||||
}), "延时退出"); | |||||
} | |||||
AllSelected = true; | |||||
} | } | ||||
/// <summary> | |||||
/// 关闭按钮 | |||||
/// </summary> | |||||
private void CloseButton() | |||||
{ | |||||
CloseCommand = new RelayCommand(() => | |||||
{ | |||||
Json<KeepDataBase>.Data.orderLists.Clear(); | |||||
WeakReferenceMessenger.Default.Send("false", "Close"); | |||||
Json<KeepDataBase>.Save(); | |||||
}); | |||||
} | |||||
/// <summary> | |||||
/// 取消按钮 | |||||
/// </summary> | |||||
private void CancelButton() | |||||
{ | |||||
CancelCommand = new RelayCommand(() => | |||||
{ | |||||
Json<KeepDataBase>.Data.orderLists.Clear(); | |||||
WeakReferenceMessenger.Default.Send("false", "Close"); | |||||
Json<KeepDataBase>.Save(); | |||||
}); | |||||
} | |||||
/// <summary> | |||||
/// 确定按钮 | |||||
/// </summary> | |||||
private void ConfirmButton() | |||||
{ | |||||
ConfirmCommand = new RelayCommand(() => | |||||
{ | |||||
var res = orderStatusLists.Where(p => p.IsSelected == true).ToList(); | |||||
if (res != null) | |||||
{ | |||||
Json<KeepDataBase>.Data.orderLists.Clear(); | |||||
foreach (var item in res) | |||||
{ | |||||
item.OrderStatus = ORDER_STATUS.WAIT; | |||||
Json<KeepDataBase>.Data.orderLists.Add(item); | |||||
} | |||||
} | |||||
WeakReferenceMessenger.Default.Send("true", "Close"); | |||||
}); | |||||
} | |||||
/// <summary> | |||||
/// 全选标志 | |||||
/// </summary> | |||||
public bool AllSelected | |||||
{ | |||||
get { return _mAllSelected; } | |||||
set | |||||
{ | |||||
_mAllSelected = value; | |||||
OnPropertyChanged(); | |||||
for (int i = 0; i < orderStatusLists.Count; i++) | |||||
{ | |||||
orderStatusLists.ElementAt(i).IsSelected = value; | |||||
} | |||||
} | |||||
} | |||||
private bool _mAllSelected = true; | |||||
public RelayCommand CloseCommand { get; set; } | |||||
public RelayCommand CancelCommand { get; set; } | |||||
public RelayCommand ConfirmCommand { get; set; } | |||||
public ObservableCollection<OrderData> orderStatusLists | |||||
{ | |||||
get { return Json<KeepDataBase>.Data.orderLists; } | |||||
set { Json<KeepDataBase>.Data.orderLists = value; } | |||||
} | |||||
} | } | ||||
} | } |
@@ -0,0 +1,124 @@ | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.Collections.ObjectModel; | |||||
using System.Linq; | |||||
using System.Text; | |||||
using System.Threading.Tasks; | |||||
using System.Windows; | |||||
using BPA.Message; | |||||
using BPA.Message.Enum; | |||||
using BPASmartClient.Helper; | |||||
using BPASmartClient.Model; | |||||
using Microsoft.Toolkit.Mvvm.ComponentModel; | |||||
namespace BPASmartClient.ViewModel | |||||
{ | |||||
public class OrderStatusViewModel : ObservableObject | |||||
{ | |||||
public OrderStatusViewModel() | |||||
{ | |||||
} | |||||
/// <summary> | |||||
/// 订单状态列表 | |||||
/// </summary> | |||||
public static ObservableCollection<OrderData> orderStatusLists | |||||
{ | |||||
get { return Json<KeepDataBase>.Data.orderLists; } | |||||
set { Json<KeepDataBase>.Data.orderLists = value; } | |||||
} | |||||
/// <summary> | |||||
/// 等待取餐列表 | |||||
/// </summary> | |||||
public static ObservableCollection<OrderData> WaitTakeMeal { get; set; } = new ObservableCollection<OrderData>(); | |||||
/// <summary> | |||||
/// MQTT 大屏取餐通知委托 | |||||
/// </summary> | |||||
public void MqttReceive() | |||||
{ | |||||
//清除订单数据 | |||||
ActionManage.GetInstance.Register(new Action(() => | |||||
{ | |||||
Application.Current.Dispatcher.Invoke(() => | |||||
{ | |||||
orderStatusLists.Clear(); | |||||
WaitTakeMeal.Clear(); | |||||
}); | |||||
}), "ClearOrders"); | |||||
ActionManage.GetInstance.Register(new Action<object>((o) => | |||||
{ | |||||
if (o is MorkOrderPush morkOrderpush) | |||||
{ | |||||
System.Windows.Application.Current?.Dispatcher.BeginInvoke((Action)delegate | |||||
{ | |||||
var result = orderStatusLists.FirstOrDefault(p => p.OrderPush.SuborderId == morkOrderpush.SuborderId); | |||||
if (result == null) | |||||
{ | |||||
orderStatusLists.Add(new OrderData() | |||||
{ | |||||
OrderPush = morkOrderpush, | |||||
OrderStatus = ORDER_STATUS.WAIT, | |||||
IsSelected = true, | |||||
StartDate = DateTime.Now.ToString("HH:mm:ss") | |||||
}); | |||||
} | |||||
}); | |||||
} | |||||
}), "AddOrder"); | |||||
ActionManage.GetInstance.Register(new Action<object>((o) => | |||||
{ | |||||
if (o is OrderStatusChange orderStatusChange) | |||||
{ | |||||
Application.Current?.Dispatcher.BeginInvoke((Action)delegate | |||||
{ | |||||
int index = Array.FindIndex(orderStatusLists.ToArray(), p => p.OrderPush.SuborderId == orderStatusChange.SuborderId); | |||||
switch (orderStatusChange.CookingStatus) | |||||
{ | |||||
case ORDER_STATUS.COOKING: | |||||
if (index >= 0 && index < orderStatusLists.Count) | |||||
orderStatusLists.ElementAt(index).OrderStatus = orderStatusChange.CookingStatus; | |||||
break; | |||||
case ORDER_STATUS.COMPLETED_COOK: | |||||
if (index >= 0 && index < orderStatusLists.Count) | |||||
{ | |||||
Application.Current.Dispatcher.BeginInvoke((Action)delegate | |||||
{ | |||||
orderStatusLists.ElementAt(index).OrderStatus = orderStatusChange.CookingStatus; | |||||
orderStatusLists.ElementAt(index).EndDate = DateTime.Now.ToString("HH:mm:ss"); | |||||
TimeSpan timeSpan = DateTime.Now.Subtract(Convert.ToDateTime(orderStatusLists.ElementAt(index).StartDate)); | |||||
orderStatusLists.ElementAt(index).CompleteDate = $"{timeSpan.TotalSeconds.ToString("0.00")} S"; | |||||
WaitTakeMeal.Insert(0, orderStatusLists.ElementAt(index)); | |||||
orderStatusLists.RemoveAt(index); | |||||
}); | |||||
} | |||||
break; | |||||
case ORDER_STATUS.COMPLETED_TAKE: | |||||
var re = WaitTakeMeal.FirstOrDefault(p => p.OrderPush.SuborderId == orderStatusChange.SuborderId); | |||||
if (re != null) | |||||
{ | |||||
Application.Current.Dispatcher.BeginInvoke((Action)delegate | |||||
{ | |||||
WaitTakeMeal.Remove(re); | |||||
Json<KeepDataBase>.Data.orderLists.Remove(re); | |||||
}); | |||||
} | |||||
break; | |||||
default: | |||||
break; | |||||
} | |||||
}); | |||||
} | |||||
}), "OrderStatusChange"); | |||||
} | |||||
} | |||||
} |
@@ -1,9 +1,28 @@ | |||||
<Application x:Class="BPASmartClient.App" | |||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" | |||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" | |||||
xmlns:local="clr-namespace:BPASmartClient" | |||||
StartupUri="MainWindow.xaml"> | |||||
<Application | |||||
x:Class="BPASmartClient.App" | |||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" | |||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" | |||||
xmlns:con="clr-namespace:BPASmartClient.CustomResource.Converters;assembly=BPASmartClient.CustomResource" | |||||
xmlns:local="clr-namespace:BPASmartClient"> | |||||
<Application.Resources> | <Application.Resources> | ||||
<ResourceDictionary> | |||||
<ResourceDictionary.MergedDictionaries> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/RecDictionarys/RecCheckBox.xaml" /> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/RecDictionarys/RecTitleBarButton.xaml" /> | |||||
<!--<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/GenricStyle.xaml"/> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/MyStyle.xaml"/>--> | |||||
<ResourceDictionary> | |||||
<con:ColorConverter x:Key="ColorConverter" /> | |||||
<con:TextConverter x:Key="TextConverter" /> | |||||
</ResourceDictionary> | |||||
<ResourceDictionary> | |||||
<ImageBrush x:Key="hbl" ImageSource="pack://application:,,,/BPASmartClient.CustomResource;component/Image/HBL.png" /> | |||||
</ResourceDictionary> | |||||
</ResourceDictionary.MergedDictionaries> | |||||
</ResourceDictionary> | |||||
</Application.Resources> | </Application.Resources> | ||||
</Application> | </Application> |
@@ -1,17 +1,105 @@ | |||||
using System; | |||||
using BPASmartClient.Helper; | |||||
using BPASmartClient.Message; | |||||
using BPASmartClient.Model; | |||||
using System; | |||||
using System.Collections.Generic; | using System.Collections.Generic; | ||||
using System.Configuration; | using System.Configuration; | ||||
using System.Data; | using System.Data; | ||||
using System.Drawing; | |||||
using System.Linq; | using System.Linq; | ||||
using System.Threading.Tasks; | using System.Threading.Tasks; | ||||
using System.Windows; | using System.Windows; | ||||
using System.Windows.Forms; | |||||
namespace BPASmartClient | namespace BPASmartClient | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Interaction logic for App.xaml | /// Interaction logic for App.xaml | ||||
/// </summary> | /// </summary> | ||||
public partial class App : Application | |||||
public partial class App : System.Windows.Application | |||||
{ | { | ||||
protected override void OnStartup(StartupEventArgs e) | |||||
{ | |||||
base.OnStartup(e); | |||||
SystemHelper.GetInstance.CreateDesktopShortcut(); | |||||
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; | |||||
MainWindow mainView = new MainWindow(); | |||||
mainView.Show(); | |||||
SplitScreenDisplay(); | |||||
NoCompleteOrderInit(); | |||||
} | |||||
/// <summary> | |||||
/// 分屏显示 | |||||
/// </summary> | |||||
private void SplitScreenDisplay() | |||||
{ | |||||
if (Screen.AllScreens.Length == 3) | |||||
{ | |||||
//left = new MORKD_Window_Left(); | |||||
//right = new MORKD_Window_Right(); | |||||
//Screen[] screen = Screen.AllScreens; | |||||
//Rectangle[] rectangle = new Rectangle[screen.Length]; | |||||
//Window[] windows = new Window[screen.Length]; | |||||
//windows[0] = mainView; | |||||
//windows[1] = left; | |||||
//windows[2] = right; | |||||
//for (int i = 0; i < screen.Length; i++) | |||||
//{ | |||||
// rectangle[i] = screen[i].WorkingArea; | |||||
// windows[i].Height = rectangle[i].Height; | |||||
// windows[i].Width = rectangle[i].Width; | |||||
// windows[i].Top = rectangle[i].Top; | |||||
// windows[i].Left = rectangle[i].Left; | |||||
//} | |||||
//left.Show(); | |||||
//right.Show(); | |||||
//windows[1].Owner = windows[0]; | |||||
//windows[2].Owner = windows[0]; | |||||
} | |||||
} | |||||
/// <summary> | |||||
/// 未完成订单初始化 | |||||
/// </summary> | |||||
private void NoCompleteOrderInit() | |||||
{ | |||||
if (Json<KeepDataBase>.Data.orderLists.Count > 0) | |||||
{ | |||||
OrderListDialogView listDialogView = new OrderListDialogView(); | |||||
listDialogView.ShowDialog(); | |||||
} | |||||
} | |||||
private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) | |||||
{ | |||||
var ErroLog = e.ExceptionObject.ToString(); | |||||
MessageLog.GetInstance.Show(ErroLog); | |||||
TextHelper.GetInstance.WriteTextInfo(ErroLog, "ErroLog"); | |||||
//SqlHelper.GetInstance.Save(); | |||||
//MainConsole.Main.GetInstance.DataSave(); | |||||
//IotReport.GetInstance.HttpAddLog(new BPA.Message.API请求.LogTable | |||||
//{ | |||||
// ClientId = InternetInfo.ClientId.ToString(), | |||||
// LogTime = DateTime.Now, | |||||
// LogType = "1", | |||||
// LogMessage = ErroLog, | |||||
// LogVla = "异常", | |||||
//}); | |||||
// Process.Start($"{AppDomain.CurrentDomain.BaseDirectory}{AppDomain.CurrentDomain.FriendlyName}.exe"); | |||||
} | |||||
protected override void OnExit(ExitEventArgs e) | |||||
{ | |||||
base.OnExit(e); | |||||
//IotReport.Close(); | |||||
//SqlHelper.GetInstance.Save(); | |||||
//MainConsole.Main.GetInstance.DataSave(); | |||||
ThreadManage.GetInstance().Dispose(); | |||||
System.Environment.Exit(0); | |||||
} | |||||
} | } | ||||
} | } |
@@ -5,6 +5,7 @@ | |||||
<TargetFramework>net6.0-windows</TargetFramework> | <TargetFramework>net6.0-windows</TargetFramework> | ||||
<Nullable>enable</Nullable> | <Nullable>enable</Nullable> | ||||
<UseWPF>true</UseWPF> | <UseWPF>true</UseWPF> | ||||
<UseWindowsForms>true</UseWindowsForms> | |||||
<StartupObject>BPASmartClient.App</StartupObject> | <StartupObject>BPASmartClient.App</StartupObject> | ||||
</PropertyGroup> | </PropertyGroup> | ||||
@@ -0,0 +1,103 @@ | |||||
<UserControl x:Class="BPASmartClient.Control.LogOrAlarmView" | |||||
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:BPASmartClient.Control" | |||||
mc:Ignorable="d" | |||||
d:DesignHeight="450" d:DesignWidth="800"> | |||||
<UserControl.Resources> | |||||
<ResourceDictionary> | |||||
<ResourceDictionary.MergedDictionaries> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/GenricStyle.xaml"/> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/MyStyle.xaml"/> | |||||
</ResourceDictionary.MergedDictionaries> | |||||
</ResourceDictionary> | |||||
</UserControl.Resources> | |||||
<!--底部窗体栏--> | |||||
<Grid > | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition Height="45"/> | |||||
<RowDefinition/> | |||||
</Grid.RowDefinitions> | |||||
<!--查询按钮栏--> | |||||
<StackPanel Orientation="Horizontal" Margin="10,0,10,0"> | |||||
<ComboBox SelectedIndex="0" Width="80"> | |||||
<ComboBoxItem>一般日志</ComboBoxItem> | |||||
<ComboBoxItem>错误日志</ComboBoxItem> | |||||
<ComboBoxItem>告警信息</ComboBoxItem> | |||||
</ComboBox> | |||||
<Button Margin="10,0,0,0">查询</Button> | |||||
<Button Margin="10,0,0,0">导出</Button> | |||||
<CheckBox Margin="10,0,0,0" IsChecked="True">实时模式</CheckBox> | |||||
<CheckBox Margin="10,0,0,0" IsChecked="True">定时清除</CheckBox> | |||||
</StackPanel> | |||||
<!--表格栏--> | |||||
<Grid Grid.Row="1"> | |||||
<DataGrid x:Name="datagrid" Margin="10" ItemsSource="{Binding EquiPment1, UpdateSourceTrigger=PropertyChanged}" Grid.Row="2"> | |||||
<DataGrid.Columns> | |||||
<DataGridTemplateColumn Header="紧急程度" Width="2*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<Ellipse Width="12" Height="12" ToolTip="{Binding Status, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Fill="{Binding color, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="报警时间或恢复时间" Width="4.4*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding Name, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Foreground="#00ccff"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="类型" Width="4.4*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding Status, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Foreground="#00ccff"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="状态" Width="4.4*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding Status, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Foreground="#00ccff"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="变量名" Width="4.4*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding Status, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Foreground="#00ccff"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="报警值或恢复值" Width="4.4*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding Status, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Foreground="#00ccff"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="参考值" Width="4.4*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding Status, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Foreground="#00ccff"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="操作" Width="2*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding Status, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Foreground="#00ccff"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
</DataGrid.Columns> | |||||
</DataGrid> | |||||
</Grid> | |||||
</Grid> | |||||
</UserControl> |
@@ -0,0 +1,28 @@ | |||||
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 BPASmartClient.Control | |||||
{ | |||||
/// <summary> | |||||
/// LogOrAlarmView.xaml 的交互逻辑 | |||||
/// </summary> | |||||
public partial class LogOrAlarmView :UserControl | |||||
{ | |||||
public LogOrAlarmView() | |||||
{ | |||||
InitializeComponent(); | |||||
} | |||||
} | |||||
} |
@@ -0,0 +1,65 @@ | |||||
<UserControl x:Class="BPASmartClient.Control.LogView" | |||||
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:vm="clr-namespace:BPASmartClient.ViewModel;assembly=BPASmartClient.ViewModel" | |||||
xmlns:local="clr-namespace:BPASmartClient.Control" | |||||
mc:Ignorable="d" | |||||
d:DesignHeight="450" d:DesignWidth="800"> | |||||
<UserControl.Resources> | |||||
<ResourceDictionary> | |||||
<ResourceDictionary.MergedDictionaries> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/GenricStyle.xaml"/> | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/MyStyle.xaml"/> | |||||
</ResourceDictionary.MergedDictionaries> | |||||
</ResourceDictionary> | |||||
</UserControl.Resources> | |||||
<UserControl.DataContext> | |||||
<vm:LogViewModel></vm:LogViewModel> | |||||
</UserControl.DataContext> | |||||
<!--底部窗体栏--> | |||||
<Grid > | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition Height="45"/> | |||||
<RowDefinition/> | |||||
</Grid.RowDefinitions> | |||||
<!--查询按钮栏--> | |||||
<StackPanel Orientation="Horizontal" Margin="10,0,10,0"> | |||||
<CheckBox Margin="10,0,0,0" IsChecked="{Binding RealTimeModel, UpdateSourceTrigger=PropertyChanged}" >实时模式</CheckBox> | |||||
<CheckBox Margin="10,0,0,0" IsChecked="{Binding TimedClear, UpdateSourceTrigger=PropertyChanged}">定时清除</CheckBox> | |||||
<Button Margin="10,0,0,0" Cursor="Hand" Command="{Binding ExcelCommand}">导出</Button> | |||||
</StackPanel> | |||||
<!--表格栏--> | |||||
<Grid Grid.Row="1"> | |||||
<DataGrid Margin="10" ItemsSource="{Binding LogDataGrid, UpdateSourceTrigger=PropertyChanged}" Grid.Row="2"> | |||||
<DataGrid.Columns> | |||||
<DataGridTemplateColumn Header="日志时间" Width="300"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding time, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" FontSize="14" Foreground="{Binding foreground, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="日志类型" Width="300"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding type, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" FontSize="14" Foreground="{Binding foreground, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
<DataGridTemplateColumn Header="日志内容" Width="*"> | |||||
<DataGridTemplateColumn.CellTemplate> | |||||
<DataTemplate> | |||||
<TextBlock HorizontalAlignment="Center" Text="{Binding message, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" FontSize="14" Foreground="{Binding foreground, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/> | |||||
</DataTemplate> | |||||
</DataGridTemplateColumn.CellTemplate> | |||||
</DataGridTemplateColumn> | |||||
</DataGrid.Columns> | |||||
</DataGrid> | |||||
</Grid> | |||||
</Grid> | |||||
</UserControl> |
@@ -0,0 +1,28 @@ | |||||
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 BPASmartClient.Control | |||||
{ | |||||
/// <summary> | |||||
/// LogView.xaml 的交互逻辑 | |||||
/// </summary> | |||||
public partial class LogView :UserControl | |||||
{ | |||||
public LogView() | |||||
{ | |||||
InitializeComponent(); | |||||
} | |||||
} | |||||
} |
@@ -0,0 +1,354 @@ | |||||
<UserControl | |||||
x:Class="BPASmartClient.Control.OrderStatusView" | |||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" | |||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" | |||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" | |||||
xmlns:local="clr-namespace:BPASmartClient.Control" | |||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" | |||||
d:DesignHeight="450" | |||||
d:DesignWidth="800" | |||||
Background="{x:Null}" | |||||
mc:Ignorable="d"> | |||||
<UserControl.Resources> | |||||
<SolidColorBrush x:Key="BorderSolid" Color="#5523CACA" /> | |||||
<SolidColorBrush x:Key="FontColor" Color="#FF2AB2E7" /> | |||||
<SolidColorBrush x:Key="TitleFontColor" Color="#ddd" /> | |||||
<SolidColorBrush x:Key="CursorColor" Color="Aqua" /> | |||||
<SolidColorBrush x:Key="TitleBorderColor" Color="#FF2AB2E7" /> | |||||
<SolidColorBrush x:Key="TextBlockForeground" Color="#9934F7F7" /> | |||||
<Style x:Key="TextBlockStyle" TargetType="TextBlock"> | |||||
<Setter Property="FontFamily" Value="楷体" /> | |||||
<Setter Property="FontSize" Value="16" /> | |||||
<Setter Property="Background" Value="Transparent" /> | |||||
<!--<Setter Property="Foreground" Value="{StaticResource FontColor}" />--> | |||||
<Setter Property="VerticalAlignment" Value="Center" /> | |||||
<Setter Property="HorizontalAlignment" Value="Center" /> | |||||
</Style> | |||||
</UserControl.Resources> | |||||
<Grid> | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition /> | |||||
<RowDefinition /> | |||||
</Grid.RowDefinitions> | |||||
<!--#region 制作中的订单列表--> | |||||
<Grid> | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition Height="30" /> | |||||
<RowDefinition /> | |||||
</Grid.RowDefinitions> | |||||
<!--#region 表格标题栏设置--> | |||||
<Grid Background="#dd2AB2E7"> | |||||
<Grid.ColumnDefinitions> | |||||
<ColumnDefinition Width="0.3*" /> | |||||
<ColumnDefinition /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.5*" /> | |||||
</Grid.ColumnDefinitions> | |||||
<TextBlock | |||||
Grid.Column="0" | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="取餐号" /> | |||||
<Grid Grid.Column="1"> | |||||
<TextBlock | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="商品名" /> | |||||
<Border BorderBrush="{StaticResource TitleBorderColor}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<TextBlock | |||||
Grid.Column="2" | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="开始时间" /> | |||||
<Grid Grid.Column="3"> | |||||
<TextBlock | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="结束时间" /> | |||||
<Border BorderBrush="{StaticResource TitleBorderColor}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<Grid Grid.Column="5"> | |||||
<TextBlock | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="制作状态" /> | |||||
<Border BorderBrush="{StaticResource TitleBorderColor}" BorderThickness="0,0,1,0" /> | |||||
</Grid> | |||||
<TextBlock | |||||
Grid.Column="6" | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="完成时间" /> | |||||
</Grid> | |||||
<!--#endregion--> | |||||
<!--#region 表格数据显示--> | |||||
<ScrollViewer | |||||
Grid.Row="1" | |||||
HorizontalScrollBarVisibility="Hidden" | |||||
VerticalScrollBarVisibility="Hidden"> | |||||
<ItemsControl ItemsSource="{Binding orderStatusLists}"> | |||||
<ItemsControl.ItemTemplate> | |||||
<DataTemplate> | |||||
<Grid Height="30"> | |||||
<Grid.ColumnDefinitions> | |||||
<ColumnDefinition Width="0.3*" /> | |||||
<ColumnDefinition /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.5*" /> | |||||
</Grid.ColumnDefinitions> | |||||
<TextBlock | |||||
Grid.Column="0" | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding OrderPush.SortNum}" /> | |||||
<Grid Grid.Column="1"> | |||||
<TextBlock | |||||
Margin="5,0,0,0" | |||||
HorizontalAlignment="Left" | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding OrderPush.GoodsName}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<TextBlock | |||||
Grid.Column="2" | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding StartDate}" /> | |||||
<Grid Grid.Column="3"> | |||||
<TextBlock | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding EndDate}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<Grid Grid.Column="5"> | |||||
<TextBlock | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding OrderStatus, Converter={StaticResource TextConverter}}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="0,0,1,0" /> | |||||
</Grid> | |||||
<Grid Grid.Column="6"> | |||||
<TextBlock | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding CompleteDate}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="0,0,1,0" /> | |||||
</Grid> | |||||
<Border | |||||
Grid.ColumnSpan="8" | |||||
BorderBrush="{StaticResource BorderSolid}" | |||||
BorderThickness="1,0,1,1" /> | |||||
</Grid> | |||||
</DataTemplate> | |||||
</ItemsControl.ItemTemplate> | |||||
</ItemsControl> | |||||
</ScrollViewer> | |||||
<!--#endregion--> | |||||
</Grid> | |||||
<!--#endregion--> | |||||
<!--#region 等待取餐的订单列表--> | |||||
<Grid Grid.Row="1"> | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition Height="30" /> | |||||
<RowDefinition /> | |||||
</Grid.RowDefinitions> | |||||
<!--#region 表格标题栏设置--> | |||||
<Grid Background="#dd2AB2E7"> | |||||
<Grid.ColumnDefinitions> | |||||
<ColumnDefinition Width="0.3*" /> | |||||
<ColumnDefinition /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.5*" /> | |||||
</Grid.ColumnDefinitions> | |||||
<TextBlock | |||||
Grid.Column="0" | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="取餐号" /> | |||||
<Grid Grid.Column="1"> | |||||
<TextBlock | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="商品名" /> | |||||
<Border BorderBrush="{StaticResource TitleBorderColor}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<TextBlock | |||||
Grid.Column="2" | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="开始时间" /> | |||||
<Grid Grid.Column="3"> | |||||
<TextBlock | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="结束时间" /> | |||||
<Border BorderBrush="{StaticResource TitleBorderColor}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<Grid Grid.Column="5"> | |||||
<TextBlock | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="制作状态" /> | |||||
<Border BorderBrush="{StaticResource TitleBorderColor}" BorderThickness="0,0,1,0" /> | |||||
</Grid> | |||||
<TextBlock | |||||
Grid.Column="6" | |||||
HorizontalAlignment="Center" | |||||
VerticalAlignment="Center" | |||||
FontSize="16" | |||||
Foreground="{StaticResource TitleFontColor}" | |||||
Text="完成时间" /> | |||||
</Grid> | |||||
<!--#endregion--> | |||||
<!--#region 表格数据显示--> | |||||
<ScrollViewer | |||||
Grid.Row="1" | |||||
HorizontalScrollBarVisibility="Hidden" | |||||
VerticalScrollBarVisibility="Hidden"> | |||||
<ItemsControl ItemsSource="{Binding WaitTakeMeal}"> | |||||
<ItemsControl.ItemTemplate> | |||||
<DataTemplate> | |||||
<Grid Height="30"> | |||||
<Grid.ColumnDefinitions> | |||||
<ColumnDefinition Width="0.3*" /> | |||||
<ColumnDefinition /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0" /> | |||||
<ColumnDefinition Width="0.7*" /> | |||||
<ColumnDefinition Width="0.5*" /> | |||||
</Grid.ColumnDefinitions> | |||||
<TextBlock | |||||
Grid.Column="0" | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding OrderPush.SortNum}" /> | |||||
<Grid Grid.Column="1"> | |||||
<TextBlock | |||||
Margin="5,0,0,0" | |||||
HorizontalAlignment="Left" | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding OrderPush.GoodsName}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<TextBlock | |||||
Grid.Column="2" | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding StartDate}" /> | |||||
<Grid Grid.Column="3"> | |||||
<TextBlock | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding EndDate}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="1,0,1,0" /> | |||||
</Grid> | |||||
<Grid Grid.Column="5"> | |||||
<TextBlock | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding OrderStatus, Converter={StaticResource TextConverter}}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="0,0,1,0" /> | |||||
</Grid> | |||||
<Grid Grid.Column="6"> | |||||
<TextBlock | |||||
Foreground="{Binding OrderStatus, Converter={StaticResource ColorConverter}}" | |||||
Style="{StaticResource TextBlockStyle}" | |||||
Text="{Binding CompleteDate}" /> | |||||
<Border BorderBrush="{StaticResource BorderSolid}" BorderThickness="0,0,1,0" /> | |||||
</Grid> | |||||
<Border | |||||
Grid.ColumnSpan="8" | |||||
BorderBrush="{StaticResource BorderSolid}" | |||||
BorderThickness="1,0,1,1" /> | |||||
</Grid> | |||||
</DataTemplate> | |||||
</ItemsControl.ItemTemplate> | |||||
</ItemsControl> | |||||
</ScrollViewer> | |||||
<!--#endregion--> | |||||
</Grid> | |||||
<!--#endregion--> | |||||
</Grid> | |||||
</UserControl> |
@@ -0,0 +1,28 @@ | |||||
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 BPASmartClient.Control | |||||
{ | |||||
/// <summary> | |||||
/// OrderStatusView.xaml 的交互逻辑 | |||||
/// </summary> | |||||
public partial class OrderStatusView : UserControl | |||||
{ | |||||
public OrderStatusView() | |||||
{ | |||||
InitializeComponent(); | |||||
} | |||||
} | |||||
} |
@@ -4,7 +4,9 @@ | |||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" | xmlns:d="http://schemas.microsoft.com/expression/blend/2008" | ||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" | xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" | ||||
xmlns:local="clr-namespace:BPASmartClient" | xmlns:local="clr-namespace:BPASmartClient" | ||||
xmlns:vm="clr-namespace:BPASmartClient.ViewModel;assembly=BPASmartClient.ViewModel" | |||||
xmlns:pry="clr-namespace:BPASmartClient.CustomResource.UserControls;assembly=BPASmartClient.CustomResource" | xmlns:pry="clr-namespace:BPASmartClient.CustomResource.UserControls;assembly=BPASmartClient.CustomResource" | ||||
xmlns:control="clr-namespace:BPASmartClient.CustomResource.UserControls;assembly=BPASmartClient.CustomResource" | |||||
Title="MainWindow" Width="1600" | Title="MainWindow" Width="1600" | ||||
Height="900" | Height="900" | ||||
AllowsTransparency="True" | AllowsTransparency="True" | ||||
@@ -19,9 +21,11 @@ | |||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/GenricStyle.xaml"/> | <ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/GenricStyle.xaml"/> | ||||
<ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/MyStyle.xaml"/> | <ResourceDictionary Source="/BPASmartClient.CustomResource;component/Themes/MyStyle.xaml"/> | ||||
</ResourceDictionary.MergedDictionaries> | </ResourceDictionary.MergedDictionaries> | ||||
<Geometry x:Key="Icon_Desgin">M61.141068 400.532698L3.815672 725.688936l61.197513 74.337875 83.560965-473.80941H-0.067734zM79.169555 298.333642h74.315297l-61.208801-74.315297zM359.011862 660.653173l-13.095206 74.337875 53.566168 65.024474 13.095207-74.326586zM455.171319 484.138819v0.011289H287.959077l59.3687 72.068792L107.64034 716.398113 92.908233 800.015522l347.508401-232.259293 1.648189-9.302112h0.011289l13.106496-74.304009h-0.011289zM494.490806 261.181638H187.904926l-13.095207 74.315297 61.208802 74.315298 19.676677-111.478591h157.921418l-26.201702 148.641884h74.315297l32.771884-185.793888h-0.011289z M617.224501 400.543987l-57.359263 325.156238 61.23138 74.326586 83.527098-473.80941H556.00441zM635.23041 298.344931h74.315297L648.325616 224.018345zM982.783966 224.018345h-74.326586l-32.749306 185.805177H717.7415l30.626979 37.163293H869.137893l-62.224809 353.039996 87.410504-74.326586 49.140891-278.71341h74.315298l6.558892-37.163293h-74.326586z</Geometry> | |||||
</ResourceDictionary> | </ResourceDictionary> | ||||
</Window.Resources> | </Window.Resources> | ||||
<Window.DataContext> | |||||
<vm:MainViewModel></vm:MainViewModel> | |||||
</Window.DataContext> | |||||
<Border Style="{DynamicResource border主窗体背景}" x:Name="br" > | <Border Style="{DynamicResource border主窗体背景}" x:Name="br" > | ||||
<Grid> | <Grid> | ||||
@@ -38,41 +42,43 @@ | |||||
</Grid.ColumnDefinitions> | </Grid.ColumnDefinitions> | ||||
<Border Grid.ColumnSpan="2" Style="{DynamicResource bordertop矩形}"></Border> | <Border Grid.ColumnSpan="2" Style="{DynamicResource bordertop矩形}"></Border> | ||||
<Border Style="{DynamicResource bordertopL}"></Border> | <Border Style="{DynamicResource bordertopL}"></Border> | ||||
<Image Margin="10,0,0,0" VerticalAlignment="Center" Style="{DynamicResource imagetop_Title}" ></Image> | |||||
<Image Margin="20,0,0,0" VerticalAlignment="Center" Style="{DynamicResource imagetop_Title}" ></Image> | |||||
<Grid Grid.Column="1"> | <Grid Grid.Column="1"> | ||||
<Menu > | <Menu > | ||||
<MenuItem Header="状态监视" > | <MenuItem Header="状态监视" > | ||||
<MenuItem Header="订单监视" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="RealTimeDataControl" /> | |||||
<MenuItem Header="日志监视" FontSize="12" Click="MenuItem_Click" Tag="LogView" /> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="设备监视" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="RealTimeDataControl" /> | |||||
<MenuItem Header="订单监视" FontSize="12" Click="MenuItem_Click" Tag="OrderStatusView" /> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="告警监视" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="RealTimeDataControl" /> | |||||
<MenuItem Header="设备监视" FontSize="12" Click="MenuItem_Click" Tag="RealTimeDataControl" /> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="IOT监视" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="RealTimeDataControl" /> | |||||
<MenuItem Header="告警监视" FontSize="12" Click="MenuItem_Click" Tag="RealTimeDataControl" /> | |||||
<Separator/> | |||||
<MenuItem Header="IOT监视" FontSize="12" Click="MenuItem_Click" Tag="RealTimeDataControl" /> | |||||
</MenuItem> | </MenuItem> | ||||
<MenuItem Header="综合查询"> | <MenuItem Header="综合查询"> | ||||
<MenuItem Header="告警查询" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="HistoryFaultControl"/> | |||||
<MenuItem Header="告警查询" FontSize="12" Click="MenuItem_Click" Tag="HistoryFaultControl"/> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="日志查询" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="MaintenanceNotificationControl"/> | |||||
<MenuItem Header="日志查询" FontSize="12" Click="MenuItem_Click" Tag="MaintenanceNotificationControl"/> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="维护查询" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="WorkorderManagementControl"/> | |||||
<MenuItem Header="维护查询" FontSize="12" Click="MenuItem_Click" Tag="WorkorderManagementControl"/> | |||||
</MenuItem> | </MenuItem> | ||||
<MenuItem Header="功能列表"> | <MenuItem Header="功能列表"> | ||||
<MenuItem Header="加盟商管理" FontSize="10" Command="{Binding NavChangedCommand}" CommandParameter="OnOffControl"/> | |||||
<MenuItem Header="加盟商管理" FontSize="12" Click="MenuItem_Click" Tag="OnOffControl"/> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="功能列表2" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="SystemParameterControl" /> | |||||
<MenuItem Header="功能列表2" FontSize="12" Click="MenuItem_Click" Tag="SystemParameterControl" /> | |||||
</MenuItem> | </MenuItem> | ||||
<MenuItem Header="参数配置"> | <MenuItem Header="参数配置"> | ||||
<MenuItem Header="参数设置" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="OnOffControl"/> | |||||
<MenuItem Header="参数设置" FontSize="12" Click="MenuItem_Click" Tag="OnOffControl"/> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="系统设置" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="SystemParameterControl" /> | |||||
<MenuItem Header="系统设置" FontSize="12" Click="MenuItem_Click" Tag="SystemParameterControl" /> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="退出程序" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="RealTimevideoControl"/> | |||||
<MenuItem Header="退出程序" FontSize="12" Click="MenuItem_Click" Tag="RealTimevideoControl"/> | |||||
</MenuItem> | </MenuItem> | ||||
<MenuItem Header="系统帮助"> | <MenuItem Header="系统帮助"> | ||||
<MenuItem Header="版本更新历史" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="OnOffControl"/> | |||||
<MenuItem Header="版本更新历史" FontSize="12" Click="MenuItem_Click" Tag="OnOffControl"/> | |||||
<Separator/> | <Separator/> | ||||
<MenuItem Header="帮助文档" FontSize="12" Command="{Binding NavChangedCommand}" CommandParameter="SystemParameterControl" /> | |||||
<MenuItem Header="帮助文档" FontSize="12" Click="MenuItem_Click" Tag="SystemParameterControl" /> | |||||
</MenuItem> | </MenuItem> | ||||
</Menu> | </Menu> | ||||
</Grid> | </Grid> | ||||
@@ -83,34 +89,39 @@ | |||||
<TextBlock FontSize="12">网</TextBlock> | <TextBlock FontSize="12">网</TextBlock> | ||||
<TextBlock FontSize="12">络</TextBlock> | <TextBlock FontSize="12">络</TextBlock> | ||||
</StackPanel> | </StackPanel> | ||||
<ToggleButton Margin="5" VerticalAlignment="Center" ToolTip="网络连接状态" HorizontalAlignment="Center" Style="{DynamicResource StatusBtnStyle网络连接状态}" DataContext="{Binding GaoJingMessage}" Cursor="Hand"/> | |||||
<ToggleButton Margin="5" VerticalAlignment="Center" ToolTip="网络连接状态" HorizontalAlignment="Center" Style="{DynamicResource StatusBtnStyle网络连接状态}" IsChecked="True" DataContext="{Binding GaoJingMessage}" Cursor="Hand"/> | |||||
<Border Style="{DynamicResource border竖线}" /> | <Border Style="{DynamicResource border竖线}" /> | ||||
<ToggleButton VerticalAlignment="Center" ToolTip="告警消息" HorizontalAlignment="Center" Style="{DynamicResource StatusBtnStyle告警}" DataContext="{Binding GaoJingMessage}" Cursor="Hand"/> | <ToggleButton VerticalAlignment="Center" ToolTip="告警消息" HorizontalAlignment="Center" Style="{DynamicResource StatusBtnStyle告警}" DataContext="{Binding GaoJingMessage}" Cursor="Hand"/> | ||||
<Border Style="{DynamicResource border竖线}" /> | <Border Style="{DynamicResource border竖线}" /> | ||||
<Grid Margin="10,0,10,0" VerticalAlignment="Center" > | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition Height="30"/> | |||||
<RowDefinition/> | |||||
</Grid.RowDefinitions> | |||||
<StackPanel Orientation="Horizontal" Grid.Row="0"> | |||||
<TextBlock x:Name="time" FontSize="16" Text="18:00:00"/> | |||||
<Image Style="{DynamicResource timeImage}" Margin="10,0,0,0"/> | |||||
</StackPanel> | |||||
<StackPanel Grid.Row="1" Orientation="Horizontal"> | |||||
<TextBlock x:Name="dateRL" FontSize="10" >星期一</TextBlock> | |||||
<TextBlock x:Name="date" Margin="10,0,0,0" FontSize="10" >2021-11-13</TextBlock> | |||||
</StackPanel> | |||||
</Grid> | |||||
<control:DateTimeUI Margin="10,0,10,0" VerticalAlignment="Center"></control:DateTimeUI> | |||||
<Border Style="{DynamicResource border竖线}" /> | <Border Style="{DynamicResource border竖线}" /> | ||||
<Button x:Name="ButClose" Grid.Column="4" Margin="10,0,20,0" Style="{DynamicResource CommonBtnStyle退出按钮}" VerticalAlignment="Center" ToolTip="退出程序" Cursor="Hand" Content="退出"/> | |||||
<Button x:Name="ButClose" Grid.Column="4" Margin="10,0,20,0" Style="{DynamicResource CommonBtn_返回}" VerticalAlignment="Center" ToolTip="退出程序" Cursor="Hand" Content="退出"/> | |||||
</StackPanel> | </StackPanel> | ||||
</Grid> | </Grid> | ||||
<!--底部窗体--> | <!--底部窗体--> | ||||
<Grid Grid.Row="1" Margin="10"> | <Grid Grid.Row="1" Margin="10"> | ||||
<Button Grid.Row="2" Content="返回" Style="{DynamicResource CommonBtn_返回}" HorizontalAlignment="Left" VerticalAlignment="Top" Click="Button_Click"/> | |||||
<Grid.RowDefinitions> | |||||
<RowDefinition Height="45"/> | |||||
<RowDefinition/> | |||||
</Grid.RowDefinitions> | |||||
<!--顶部装饰--> | |||||
<Border Grid.Row="0" Style="{DynamicResource border右下}" Grid.RowSpan="2" /> | |||||
<Border Grid.Row="0" Style="{DynamicResource border左下}" Grid.RowSpan="2" /> | |||||
<Border Grid.Row="0" Style="{DynamicResource border右上}" Grid.RowSpan="2" /> | |||||
<Border Grid.Row="0" Style="{DynamicResource border左上}" Grid.RowSpan="2" /> | |||||
<Grid Margin="10"> | |||||
<Border Style="{DynamicResource borderFromTitle}" Width="600"></Border> | |||||
<Button Grid.Row="0" Content="返回" Style="{DynamicResource CommonBtn_返回}" HorizontalAlignment="Left" VerticalAlignment="Top" Click="Button_Click" Cursor="Hand"/> | |||||
<TextBlock x:Name="Title" HorizontalAlignment="Center" FontSize="18" Foreground="#feffff">日志监控界面</TextBlock> | |||||
</Grid> | |||||
<!--#region 底部窗体栏--> | |||||
<ContentControl Grid.Row="1" x:Name="contentRegion"/> | |||||
<!--#endregion--> | |||||
<!--<Button Grid.Row="2" Content="返回" Style="{DynamicResource CommonBtn_返回}" HorizontalAlignment="Left" VerticalAlignment="Top" Click="Button_Click"/> | |||||
<Button Grid.Row="2" Visibility="Collapsed" Content="测试" HorizontalAlignment="Left" Margin="153,123,0,0" VerticalAlignment="Top" Click="Button_Click"/> | |||||
<Button Grid.Row="2" Visibility="Collapsed" Content="测试" HorizontalAlignment="Left" Margin="153,123,0,0" VerticalAlignment="Top" Click="Button_Click"/>--> | |||||
</Grid> | </Grid> | ||||
@@ -2,12 +2,14 @@ | |||||
using BPASmartClient.Business; | using BPASmartClient.Business; | ||||
using BPASmartClient.EventBus; | using BPASmartClient.EventBus; | ||||
using BPASmartClient.Helper; | using BPASmartClient.Helper; | ||||
using BPASmartClient.Message; | |||||
using BPASmartClient.Model; | using BPASmartClient.Model; | ||||
using BPASmartClient.Model.冰淇淋.Enum; | using BPASmartClient.Model.冰淇淋.Enum; | ||||
using BPASmartClient.Model.咖啡机.Enum; | using BPASmartClient.Model.咖啡机.Enum; | ||||
using System; | using System; | ||||
using System.Collections.Generic; | using System.Collections.Generic; | ||||
using System.Linq; | using System.Linq; | ||||
using System.Reflection; | |||||
using System.Text; | using System.Text; | ||||
using System.Threading.Tasks; | using System.Threading.Tasks; | ||||
using System.Windows; | using System.Windows; | ||||
@@ -30,8 +32,18 @@ namespace BPASmartClient | |||||
public MainWindow() | public MainWindow() | ||||
{ | { | ||||
InitializeComponent(); | InitializeComponent(); | ||||
this.ButClose.Click += (o, e) => { this.Close(); }; | |||||
this.br.MouseLeftButtonDown += (o, e) => | |||||
Initialize(); | |||||
ThreadManage.GetInstance().Start(new Action(() => | |||||
{ | |||||
new MainConsole().Start(); | |||||
}), "启动主控制台"); | |||||
} | |||||
public void Initialize() | |||||
{ | |||||
this.ButClose.Click += (o,e) => { this.Close(); }; | |||||
this.br.MouseLeftButtonDown += (o,e) => | |||||
{ | { | ||||
if (e.ClickCount > 1) | if (e.ClickCount > 1) | ||||
{ | { | ||||
@@ -42,11 +54,7 @@ namespace BPASmartClient | |||||
} | } | ||||
this.DragMove(); | this.DragMove(); | ||||
}; | }; | ||||
ThreadManage.GetInstance().Start(new Action(() => | |||||
{ | |||||
new MainConsole().Start(); | |||||
}), "启动主控制台"); | |||||
MenuItem_Click(new MenuItem() {Tag= "LogView",Header="日志监视" },null); | |||||
} | } | ||||
private void Button_Click(object sender, RoutedEventArgs e) | private void Button_Click(object sender, RoutedEventArgs e) | ||||
@@ -59,5 +67,27 @@ namespace BPASmartClient | |||||
var temp=BPAPackage.Make(morkOrderPush, 12, BPA.Message.Enum.DeviceClientType.MORKS); | var temp=BPAPackage.Make(morkOrderPush, 12, BPA.Message.Enum.DeviceClientType.MORKS); | ||||
Plugin.GetInstance().GetPlugin<MQTTMgr>().Publish("DOWN/MORKS/ORDER/12", temp.Serialize()); | Plugin.GetInstance().GetPlugin<MQTTMgr>().Publish("DOWN/MORKS/ORDER/12", temp.Serialize()); | ||||
} | } | ||||
/// <summary> | |||||
/// 菜单切换栏 | |||||
/// </summary> | |||||
private void MenuItem_Click(object sender,RoutedEventArgs e) | |||||
{ | |||||
try | |||||
{ | |||||
if (sender is MenuItem) | |||||
{ | |||||
Type type = Type.GetType($"BPASmartClient.Control.{(sender as MenuItem).Tag?.ToString()}"); | |||||
if (type == null) return; | |||||
ConstructorInfo cti = type.GetConstructor(System.Type.EmptyTypes); | |||||
contentRegion.Content = (FrameworkElement)cti.Invoke(null); | |||||
Title.Text = (sender as MenuItem).Header?.ToString()+"界面"; | |||||
} | |||||
} | |||||
catch (Exception ex) | |||||
{ | |||||
MessageLog.GetInstance.ShowEx($"BPASmartClient 中引发错误,MainWindow.xaml.cs 类,描述:[{ex.Message}]"); | |||||
} | |||||
} | |||||
} | } | ||||
} | } |
@@ -20,14 +20,13 @@ | |||||
<Window.DataContext> | <Window.DataContext> | ||||
<vm:OrderListDialogViewModel/> | |||||
<vm:OrderListDialogViewModel /> | |||||
</Window.DataContext> | </Window.DataContext> | ||||
<Window.Resources> | <Window.Resources> | ||||
<ResourceDictionary Source="pack://application:,,,/BPASmartClient.CustomResource;component/RecDictionarys/RecCheckBox.xaml"> | |||||
<ResourceDictionary> | |||||
<ResourceDictionary.MergedDictionaries> | <ResourceDictionary.MergedDictionaries> | ||||
<ResourceDictionary> | <ResourceDictionary> | ||||
<SolidColorBrush x:Key="BorderSolid" Color="#5523CACA" /> | <SolidColorBrush x:Key="BorderSolid" Color="#5523CACA" /> | ||||
<SolidColorBrush x:Key="FontColor" Color="#FF2AB2E7" /> | <SolidColorBrush x:Key="FontColor" Color="#FF2AB2E7" /> | ||||
<SolidColorBrush x:Key="TitleFontColor" Color="#ddd" /> | <SolidColorBrush x:Key="TitleFontColor" Color="#ddd" /> | ||||
@@ -35,6 +34,9 @@ | |||||
<SolidColorBrush x:Key="TitleBorderColor" Color="#552AB2E7" /> | <SolidColorBrush x:Key="TitleBorderColor" Color="#552AB2E7" /> | ||||
<SolidColorBrush x:Key="TextBlockForeground" Color="#9934F7F7" /> | <SolidColorBrush x:Key="TextBlockForeground" Color="#9934F7F7" /> | ||||
<!--<con:ColorConverter x:Key="ColorConverter" /> | |||||
<con:TextConverter x:Key="TextConverter" />--> | |||||
<Style x:Key="buttonStyle" TargetType="Button"> | <Style x:Key="buttonStyle" TargetType="Button"> | ||||
<Setter Property="FontFamily" Value="楷体" /> | <Setter Property="FontFamily" Value="楷体" /> | ||||
<Setter Property="Width" Value="100" /> | <Setter Property="Width" Value="100" /> | ||||
@@ -95,7 +97,7 @@ | |||||
BorderBrush="#55ffffff" | BorderBrush="#55ffffff" | ||||
BorderThickness="0,0,0,1"> | BorderThickness="0,0,0,1"> | ||||
<StackPanel Orientation="Horizontal"> | <StackPanel Orientation="Horizontal"> | ||||
<Image Margin="15,5,0,5" Source="pack://application:,,,/BPASmartClient.CustomResource;component/Image/HBL.png" /> | |||||
<Image Margin="15,5,0,5" Source="pack://application:,,,/BPASmartClient.CustomResource;component/Image/HBL.png" /> | |||||
<TextBlock | <TextBlock | ||||
Name="tbTitle" | Name="tbTitle" | ||||
Margin="10,0" | Margin="10,0" | ||||
@@ -11,6 +11,8 @@ using System.Windows.Input; | |||||
using System.Windows.Media; | using System.Windows.Media; | ||||
using System.Windows.Media.Imaging; | using System.Windows.Media.Imaging; | ||||
using System.Windows.Shapes; | using System.Windows.Shapes; | ||||
using BPASmartClient.ViewModel; | |||||
using Microsoft.Toolkit.Mvvm.Messaging; | |||||
namespace BPASmartClient | namespace BPASmartClient | ||||
{ | { | ||||
@@ -22,6 +24,27 @@ namespace BPASmartClient | |||||
public OrderListDialogView() | public OrderListDialogView() | ||||
{ | { | ||||
InitializeComponent(); | InitializeComponent(); | ||||
this.MoveBorder.MouseLeftButtonDown += (o, e) => | |||||
{ | |||||
this.DragMove(); | |||||
}; | |||||
WeakReferenceMessenger.Default.Register<string, string>(this, "Close", (o, e) => | |||||
{ | |||||
App.Current.Dispatcher.Invoke(new Action(() => | |||||
{ | |||||
this.DialogResult = Convert.ToBoolean(e); | |||||
this.Close(); | |||||
})); | |||||
}); | |||||
} | |||||
int MoveCount = 0; | |||||
private void Window_MouseMove(object sender, MouseEventArgs e) | |||||
{ | |||||
MoveCount += 1; | |||||
if (MoveCount >= 5) OrderListDialogViewModel.IsAutoClose = true; | |||||
} | } | ||||
} | } | ||||
} | } |