Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in
Toggle navigation
G
GS.Terminal.VisitorSelfService
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
终端组
GS.Terminal.VisitorSelfService
Commits
2acf19e8
Commit
2acf19e8
authored
Jul 29, 2020
by
姜春辉
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完成身份验证页面各种验证方式的切换逻辑
parent
a74a4562
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
286 additions
and
61 deletions
+286
-61
Config.xml
Addons/GS.Terminal.DeviceManager/Config.xml
+1
-2
Device.Implement.BostexCardReader.dll
...eviceManager/Device/Device.Implement.BostexCardReader.dll
+0
-0
Device.Implement.GPIO.dll
...S.Terminal.DeviceManager/Device/Device.Implement.GPIO.dll
+0
-0
Device.Implement.SecondCardReader.dll
...eviceManager/Device/Device.Implement.SecondCardReader.dll
+0
-0
GS.Terminal.DeviceManager.DeviceLocker.dll
...Manager/Device/GS.Terminal.DeviceManager.DeviceLocker.dll
+0
-0
GS.Terminal.DeviceManager.dll
...s/GS.Terminal.DeviceManager/GS.Terminal.DeviceManager.dll
+0
-0
GS.Terminal.VisitorSelfService.csproj
....VisitorSelfService/GS.Terminal.VisitorSelfService.csproj
+9
-3
AuthenticationPageHandler.cs
...isitorSelfService.Logic/Core/AuthenticationPageHandler.cs
+51
-1
MenuPageHandler.cs
...Terminal.VisitorSelfService.Logic/Core/MenuPageHandler.cs
+1
-1
GS.Terminal.VisitorSelfService.Logic.csproj
...Service.Logic/GS.Terminal.VisitorSelfService.Logic.csproj
+1
-0
DeviceManager.cs
...inal.VisitorSelfService.Logic/ThirdAddon/DeviceManager.cs
+10
-0
FastRecognization.cs
....VisitorSelfService.Logic/ThirdAddon/FastRecognization.cs
+5
-0
ViewModel.cs
...odelView/ViewModels/Pages/AuthenticationPage/ViewModel.cs
+75
-1
ViewModels.csproj
...torSelfService/ViewModelView/ViewModels/ViewModels.csproj
+1
-0
Index.xaml
...e/ViewModelView/Views/Pages/AuthenticationPage/Index.xaml
+4
-52
Style.xaml
...e/ViewModelView/Views/Pages/AuthenticationPage/Style.xaml
+124
-1
auth_mode_current_idcard.png
...iewModelView/Views/Resources/auth_mode_current_idcard.png
+0
-0
auth_mode_current_qrcode.png
...iewModelView/Views/Resources/auth_mode_current_qrcode.png
+0
-0
Views.csproj
...minal.VisitorSelfService/ViewModelView/Views/Views.csproj
+4
-0
No files found.
Addons/GS.Terminal.DeviceManager/Config.xml
View file @
2acf19e8
...
...
@@ -30,8 +30,7 @@
<Property
Name=
"Tag"
Caption=
"标识"
></Property>
</Declare>
<Datas>
<Data
DisplayName=
"ActiveCard1"
Type=
"Card"
Descript=
"BOSTEX读卡器主动"
VID=
"1A86"
PID=
"5523"
MI=
"3"
isVirtual=
"false"
ImplDLLName=
"Device.Implement.BostexCardReader.dll"
isWatch=
"true"
isPolling=
"true"
AllowFind=
"true"
Interval=
"600"
Tag=
""
/>
<Data
DisplayName=
"门锁控制"
Type=
"GPIO"
Descript=
"门锁控制"
VID=
""
PID=
""
MI=
"22"
isVirtual=
"true"
ImplDLLName=
"Device.Implement.GPIO.dll"
isWatch=
"true"
isPolling=
"false"
AllowFind=
"false"
Interval=
"1000"
Tag=
""
/>
<Data
DisplayName=
"DKQ_A16D_Second"
Type=
"Second"
Descript=
"新中新二代证阅读器DKQ-A16D"
VID=
"0316"
PID=
"5020"
MI=
""
isVirtual=
"false"
ImplDLLName=
"Device.Implement.SecondCardReader.dll"
isWatch=
"true"
isPolling=
"false"
AllowFind=
"true"
Interval=
"300"
Tag=
""
/>
</Datas>
</Structure>
</Structures>
...
...
Addons/GS.Terminal.DeviceManager/Device/Device.Implement.BostexCardReader.dll
deleted
100644 → 0
View file @
a74a4562
File deleted
Addons/GS.Terminal.DeviceManager/Device/Device.Implement.GPIO.dll
deleted
100644 → 0
View file @
a74a4562
File deleted
Addons/GS.Terminal.DeviceManager/Device/Device.Implement.SecondCardReader.dll
0 → 100644
View file @
2acf19e8
File added
Addons/GS.Terminal.DeviceManager/Device/GS.Terminal.DeviceManager.DeviceLocker.dll
0 → 100644
View file @
2acf19e8
File added
Addons/GS.Terminal.DeviceManager/GS.Terminal.DeviceManager.dll
View file @
2acf19e8
No preview for this file type
Src/GS.Terminal.VisitorSelfService/GS.Terminal.VisitorSelfService/GS.Terminal.VisitorSelfService.csproj
View file @
2acf19e8
...
...
@@ -107,6 +107,14 @@
<Generator>
MSBuild:Compile
</Generator>
<SubType>
Designer
</SubType>
</ApplicationDefinition>
<Content
Include=
"..\..\..\Addons\GS.Terminal.DeviceManager\Device\Device.Implement.SecondCardReader.dll"
>
<Link>
Addons\GS.Terminal.DeviceManager\Device\Device.Implement.SecondCardReader.dll
</Link>
<CopyToOutputDirectory>
Always
</CopyToOutputDirectory>
</Content>
<Content
Include=
"..\..\..\Addons\GS.Terminal.DeviceManager\Device\GS.Terminal.DeviceManager.DeviceLocker.dll"
>
<Link>
Addons\GS.Terminal.DeviceManager\Device\GS.Terminal.DeviceManager.DeviceLocker.dll
</Link>
<CopyToOutputDirectory>
Always
</CopyToOutputDirectory>
</Content>
<Content
Include=
"Addons\GS.Terminal.MainShell\Images\logo.png"
>
<CopyToOutputDirectory>
Always
</CopyToOutputDirectory>
</Content>
...
...
@@ -297,9 +305,7 @@
<ItemGroup>
<None
Include=
"App.config"
/>
</ItemGroup>
<ItemGroup>
<Folder
Include=
"Addons\GS.Terminal.DeviceManager\Device\"
/>
</ItemGroup>
<ItemGroup
/>
<ItemGroup>
<Content
Include=
"DataSpaceConfig.xml"
>
<CopyToOutputDirectory>
Always
</CopyToOutputDirectory>
...
...
Src/GS.Terminal.VisitorSelfService/Logic/GS.Terminal.VisitorSelfService.Logic/Core/AuthenticationPageHandler.cs
View file @
2acf19e8
using
System
;
using
GalaSoft.MvvmLight.Threading
;
using
OpenCvSharp
;
using
OpenCvSharp.Extensions
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
...
...
@@ -8,9 +11,56 @@ namespace GS.Terminal.VisitorSelfService.Logic.Core
{
public
class
AuthenticationPageHandler
:
Corebase
<
ViewModels
.
Pages
.
AuthenticationPage
.
ViewModel
>
{
private
string
_FaceEngineId
=
string
.
Empty
;
public
override
void
Init
()
{
VM
.
OnExitClick
+=
VM_OnExitClick
;
VM
.
OnNavigateInto
+=
VM_OnNavigateInto
;
VM
.
OnNavigateOut
+=
VM_OnNavigateOut
;
VM
.
OnAuthModeChanged
+=
VM_OnAuthModeChanged
;
_FaceEngineId
=
ThirdAddon
.
FastRecognization
.
CreateFastFaceRecognized
(
null
,
null
,
null
,
0.85f
);
ThirdAddon
.
FastRecognization
.
Pause
(
_FaceEngineId
);
ThirdAddon
.
FastRecognization
.
RegistFeatureExtracted
(
_FaceEngineId
,
FaceFeatureExtracted
);
}
private
void
VM_OnAuthModeChanged
(
ViewModels
.
Pages
.
AuthenticationPage
.
AuthenticationMode
nowMode
)
{
if
(
nowMode
==
ViewModels
.
Pages
.
AuthenticationPage
.
AuthenticationMode
.
Face
)
{
ThirdAddon
.
FaceRecognization
.
RegistOutPutMatEvent
(
VideoOut
);
ThirdAddon
.
FastRecognization
.
Restart
(
_FaceEngineId
);
}
else
{
ThirdAddon
.
FastRecognization
.
Pause
(
_FaceEngineId
);
ThirdAddon
.
FaceRecognization
.
UnRegistOutPutMatEvent
(
VideoOut
);
}
}
private
void
FaceFeatureExtracted
(
byte
[]
feature
,
string
fid
)
{
}
private
void
VM_OnNavigateOut
()
{
ThirdAddon
.
FastRecognization
.
Pause
(
_FaceEngineId
);
ThirdAddon
.
FaceRecognization
.
UnRegistOutPutMatEvent
(
VideoOut
);
}
private
void
VM_OnNavigateInto
()
{
//启动摄像头
ThirdAddon
.
FaceRecognization
.
RegistOutPutMatEvent
(
VideoOut
);
ThirdAddon
.
FastRecognization
.
Restart
(
_FaceEngineId
);
}
private
void
VideoOut
(
Mat
mat
)
{
DispatcherHelper
.
CheckBeginInvokeOnUI
(()
=>
{
VM
.
VideoOutput
=
mat
.
ToBitmapSource
();
});
}
private
void
VM_OnExitClick
()
...
...
Src/GS.Terminal.VisitorSelfService/Logic/GS.Terminal.VisitorSelfService.Logic/Core/MenuPageHandler.cs
View file @
2acf19e8
...
...
@@ -22,7 +22,7 @@ namespace GS.Terminal.VisitorSelfService.Logic.Core
}
else
{
var
result
=
DeviceManager
.
CallDeviceByTypeWithDynamic
(
"Second"
);
}
}
}
...
...
Src/GS.Terminal.VisitorSelfService/Logic/GS.Terminal.VisitorSelfService.Logic/GS.Terminal.VisitorSelfService.Logic.csproj
View file @
2acf19e8
...
...
@@ -77,6 +77,7 @@
<Reference
Include=
"OpenCvSharp.UserInterface, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6adad1e807fea099, processorArchitecture=MSIL"
>
<HintPath>
..\..\packages\OpenCvSharp3-AnyCPU.4.0.0.20181129\lib\net40\OpenCvSharp.UserInterface.dll
</HintPath>
</Reference>
<Reference
Include=
"PresentationCore"
/>
<Reference
Include=
"PresentationFramework"
/>
<Reference
Include=
"System"
/>
<Reference
Include=
"System.Core"
/>
...
...
Src/GS.Terminal.VisitorSelfService/Logic/GS.Terminal.VisitorSelfService.Logic/ThirdAddon/DeviceManager.cs
View file @
2acf19e8
...
...
@@ -34,6 +34,16 @@ namespace GS.Terminal.VisitorSelfService.Logic.ThirdAddon
_Service
?.
RemoveCardCallback
(
GetCallback
);
}
public
static
string
CallDeviceByTypeWithJson
(
string
deviceType
,
params
string
[]
callParameters
)
{
return
_DeviceTiggerService
?.
CallDeviceByTypeWithJson
(
deviceType
,
callParameters
);
}
public
static
dynamic
CallDeviceByTypeWithDynamic
(
string
deviceType
,
params
string
[]
callParameters
)
{
return
_DeviceTiggerService
?.
CallDeviceByTypeWithDynamic
(
deviceType
,
callParameters
);
}
public
static
dynamic
CallGPIO
(
string
arg
)
{
return
_DeviceTiggerService
?.
CallGPIO
(
arg
);
...
...
Src/GS.Terminal.VisitorSelfService/Logic/GS.Terminal.VisitorSelfService.Logic/ThirdAddon/FastRecognization.cs
View file @
2acf19e8
...
...
@@ -62,5 +62,10 @@ namespace GS.Terminal.VisitorSelfService.Logic.ThirdAddon
_Service
.
Restart
(
fid
);
}
}
public
static
void
RegistFeatureExtracted
(
string
fid
,
Action
<
byte
[],
string
>
action
)
{
_Service
.
RegistFeatureExtracted
(
fid
,
action
);
}
}
}
Src/GS.Terminal.VisitorSelfService/ViewModelView/ViewModels/Pages/AuthenticationPage/ViewModel.cs
View file @
2acf19e8
...
...
@@ -6,22 +6,96 @@ using System.Collections.Generic;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
using
System.Windows.Media
;
namespace
ViewModels.Pages.AuthenticationPage
{
public
partial
class
ViewModel
:
ViewModelBase
,
IViewModel
public
enum
AuthenticationMode
{
Face
,
IdCard
,
QRCode
}
public
delegate
void
AuthModeChangedDelegate
(
AuthenticationMode
nowMode
);
public
partial
class
ViewModel
:
ViewModelBase
,
IViewModel
,
IViewModelBehavior
{
public
string
ViewID
=>
"bbf0b764-4029-4db8-8beb-97b9627a4ac5"
;
public
event
Action
OnExitClick
;
public
event
Action
OnNavigateInto
;
public
event
Action
OnNavigateOut
;
public
event
AuthModeChangedDelegate
OnAuthModeChanged
;
public
RelayCommand
ExitCommand
=>
new
RelayCommand
(()
=>
{
OnExitClick
?.
Invoke
();
});
public
RelayCommand
<
string
>
ChangeAuthModeCommand
=>
new
RelayCommand
<
string
>(
para
=>
{
AuthMode
=
(
AuthenticationMode
)
int
.
Parse
(
para
);
});
private
ImageSource
_VideoOutput
;
public
ImageSource
VideoOutput
{
get
{
return
_VideoOutput
;
}
set
{
_VideoOutput
=
value
;
RaisePropertyChanged
(
"VideoOutput"
);
}
}
private
AuthenticationMode
_AuthMode
=
AuthenticationMode
.
Face
;
public
AuthenticationMode
AuthMode
{
get
{
return
_AuthMode
;
}
set
{
_AuthMode
=
value
;
RaisePropertyChanged
(
"AuthMode"
);
OnAuthModeChanged
?.
Invoke
(
value
);
}
}
private
bool
_EnableFace
=
true
;
public
bool
EnableFace
{
get
{
return
_EnableFace
;
}
set
{
_EnableFace
=
value
;
RaisePropertyChanged
(
"EnableFace"
);
}
}
private
bool
_EnableIdCard
=
true
;
public
bool
EnableIdCard
{
get
{
return
_EnableIdCard
;
}
set
{
_EnableIdCard
=
value
;
RaisePropertyChanged
(
"EnableIdCard"
);
}
}
private
bool
_EnableQRCode
=
true
;
public
bool
EnableQRCode
{
get
{
return
_EnableQRCode
;
}
set
{
_EnableQRCode
=
value
;
RaisePropertyChanged
(
"EnableQRCode"
);
}
}
public
void
Reset
()
{
}
public
void
NavigateInto
(
IViewModel
from
)
{
OnNavigateInto
?.
Invoke
();
}
public
void
NavigateOut
(
IViewModel
to
)
{
OnNavigateOut
?.
Invoke
();
}
}
}
Src/GS.Terminal.VisitorSelfService/ViewModelView/ViewModels/ViewModels.csproj
View file @
2acf19e8
...
...
@@ -49,6 +49,7 @@
<Reference
Include=
"GS.Terminal.LogicShell.Interface"
>
<HintPath>
..\..\..\..\Addons\GS.Terminal.LogicShell\GS.Terminal.LogicShell.Interface.dll
</HintPath>
</Reference>
<Reference
Include=
"PresentationCore"
/>
<Reference
Include=
"System"
/>
<Reference
Include=
"System.ComponentModel.Composition"
/>
<Reference
Include=
"System.Core"
/>
...
...
Src/GS.Terminal.VisitorSelfService/ViewModelView/Views/Pages/AuthenticationPage/Index.xaml
View file @
2acf19e8
...
...
@@ -23,62 +23,14 @@
<RowDefinition/>
<RowDefinition Height="140"/>
</Grid.RowDefinitions>
<StackPanel>
<TextBlock Text="正在通过人脸识别您的身份" FontSize="60" HorizontalAlignment="Center"/>
<Border>
<Grid Margin="0,100,0,0">
<Border Width="600" Height="600" BorderThickness="10" BorderBrush="#02eea6" CornerRadius="300">
<!--580*580-->
<Image/>
</Border>
</Grid>
</Border>
</StackPanel>
<ContentControl Style="{StaticResource Authentication_CurrentMode}"/>
<!--识别方式-->
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="其他识别方式" FontSize="30" HorizontalAlignment="Center" VerticalAlignment="Top"/>
<Grid Grid.Row="1" VerticalAlignment="Top">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Button VerticalAlignment="Center" HorizontalAlignment="Center">
<Button.Template>
<ControlTemplate TargetType="Button">
<StackPanel>
<gs:ImageButtonFix Command="{TemplateBinding Command}" CommandParameter="{TemplateBinding CommandParameter}"
Width="330" Height="250" HorizontalAlignment="Center" VerticalAlignment="Center"
Image="/Views;component/Resources/auth_mode_idcard.png" />
<TextBlock Text="二代证识别" HorizontalAlignment="Center" FontSize="36"/>
</StackPanel>
</ControlTemplate>
</Button.Template>
</Button>
<Button Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Center">
<Button.Template>
<ControlTemplate TargetType="Button">
<StackPanel>
<gs:ImageButtonFix Command="{TemplateBinding Command}" CommandParameter="{TemplateBinding CommandParameter}"
Width="330" Height="250" HorizontalAlignment="Center" VerticalAlignment="Center"
Image="/Views;component/Resources/auth_mode_qrcode.png" />
<TextBlock Text="预约二维码识别" HorizontalAlignment="Center" FontSize="36"/>
</StackPanel>
</ControlTemplate>
</Button.Template>
</Button>
</Grid>
</Grid>
<ContentControl Grid.Row="1" Template="{StaticResource Authentication_OtherMode}"/>
<Button Grid.Row="2" Template="{StaticResource CommonButton}"
Command="{Binding ExitCommand}"
Width="250" Height="60" Content="退出" Foreground="#2a2b2d" FontSize="24">
</Button>
Width="250" Height="60" Content="退出" Foreground="#2a2b2d" FontSize="24"/>
</Grid>
</Grid>
</Page>
Src/GS.Terminal.VisitorSelfService/ViewModelView/Views/Pages/AuthenticationPage/Style.xaml
View file @
2acf19e8
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:gs="clr-namespace:Develop.Extension.Wpf;assembly=Develop.Extension.Wpf"
xmlns:local="clr-namespace:Views.Pages.AuthenticationPage">
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>
<ControlTemplate x:Key="Authentication_CurrentMode_Face" TargetType="ContentControl">
<StackPanel>
<TextBlock Text="正在通过人脸识别您的身份" FontSize="60" HorizontalAlignment="Center"/>
<Border>
<Grid Margin="0,100,0,0">
<Border Width="600" Height="600" BorderThickness="10" BorderBrush="#02eea6" CornerRadius="300">
<!--580*580-->
<Image Source="{Binding VideoOutput}" Stretch="Fill">
<Image.Clip>
<GeometryGroup FillRule="Nonzero">
<EllipseGeometry RadiusX="290" RadiusY="290" Center="290, 290"></EllipseGeometry>
</GeometryGroup>
</Image.Clip>
</Image>
</Border>
</Grid>
</Border>
</StackPanel>
</ControlTemplate>
<ControlTemplate x:Key="Authentication_CurrentMode_IdCard" TargetType="ContentControl">
<StackPanel>
<TextBlock FontSize="72" HorizontalAlignment="Center">
<Run Text="请将二代身份证"/>
<LineBreak/>
<Run Text="放置到读卡区域"/>
</TextBlock>
<Image Source="/Views;component/Resources/auth_mode_current_idcard.png"/>
</StackPanel>
</ControlTemplate>
<ControlTemplate x:Key="Authentication_CurrentMode_QRCode" TargetType="ContentControl">
<StackPanel>
<TextBlock FontSize="72" HorizontalAlignment="Center">
<Run Text="请将预约二维码"/>
<LineBreak/>
<Run Text="放置到扫码区域"/>
</TextBlock>
<Image Source="/Views;component/Resources/auth_mode_current_qrcode.png"/>
</StackPanel>
</ControlTemplate>
<Style x:Key="Authentication_CurrentMode" TargetType="ContentControl">
<Setter Property="Template" Value="{StaticResource Authentication_CurrentMode_QRCode}"/>
<Style.Triggers>
<DataTrigger Binding="{Binding AuthMode}" Value="0">
<Setter Property="Template" Value="{StaticResource Authentication_CurrentMode_Face}"/>
</DataTrigger>
<DataTrigger Binding="{Binding AuthMode}" Value="1">
<Setter Property="Template" Value="{StaticResource Authentication_CurrentMode_IdCard}"/>
</DataTrigger>
<DataTrigger Binding="{Binding AuthMode}" Value="2">
<Setter Property="Template" Value="{StaticResource Authentication_CurrentMode_QRCode}"/>
</DataTrigger>
</Style.Triggers>
</Style>
<ControlTemplate x:Key="Authentication_OtherMode" TargetType="ContentControl">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="其他识别方式" FontSize="30" HorizontalAlignment="Center" VerticalAlignment="Top"/>
<StackPanel Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Top" Height="296">
<Border Visibility="{Binding EnableIdCard, Converter={StaticResource BooleanToVisibilityConverter}}">
<Button x:Name="PART_idcard" Command="{Binding ChangeAuthModeCommand}" CommandParameter="1" Width="330" Height="296" Margin="50,0,50,0">
<Button.Template>
<ControlTemplate TargetType="Button">
<StackPanel>
<gs:ImageButtonFix Command="{TemplateBinding Command}" CommandParameter="{TemplateBinding CommandParameter}"
Width="330" Height="250" HorizontalAlignment="Center" VerticalAlignment="Center"
Image="/Views;component/Resources/auth_mode_idcard.png" />
<TextBlock Text="二代证识别" HorizontalAlignment="Center" FontSize="36"/>
</StackPanel>
</ControlTemplate>
</Button.Template>
</Button>
</Border>
<Border Visibility="{Binding EnableQRCode, Converter={StaticResource BooleanToVisibilityConverter}}">
<Button x:Name="PART_qrcode" Command="{Binding ChangeAuthModeCommand}" CommandParameter="2" Width="330" Height="296" Margin="50,0,50,0">
<Button.Template>
<ControlTemplate TargetType="Button">
<StackPanel>
<gs:ImageButtonFix Command="{TemplateBinding Command}" CommandParameter="{TemplateBinding CommandParameter}"
Width="330" Height="250" HorizontalAlignment="Center" VerticalAlignment="Center"
Image="/Views;component/Resources/auth_mode_qrcode.png" />
<TextBlock Text="预约二维码识别" HorizontalAlignment="Center" FontSize="36"/>
</StackPanel>
</ControlTemplate>
</Button.Template>
</Button>
</Border>
<Border Visibility="{Binding EnableFace, Converter={StaticResource BooleanToVisibilityConverter}}">
<Button x:Name="PART_face" Command="{Binding ChangeAuthModeCommand}" CommandParameter="0" Width="330" Height="296" Margin="50,0,50,0">
<Button.Template>
<ControlTemplate TargetType="Button">
<StackPanel>
<gs:ImageButtonFix Command="{TemplateBinding Command}" CommandParameter="{TemplateBinding CommandParameter}"
Width="330" Height="250" HorizontalAlignment="Center" VerticalAlignment="Center"
Image="/Views;component/Resources/auth_mode_face.png" />
<TextBlock Text="刷脸识别" HorizontalAlignment="Center" FontSize="36"/>
</StackPanel>
</ControlTemplate>
</Button.Template>
</Button>
</Border>
</StackPanel>
</Grid>
<ControlTemplate.Triggers>
<DataTrigger Binding="{Binding AuthMode}" Value="0">
<Setter Property="Visibility" Value="Collapsed" TargetName="PART_face"/>
</DataTrigger>
<DataTrigger Binding="{Binding AuthMode}" Value="1">
<Setter Property="Visibility" Value="Collapsed" TargetName="PART_idcard"/>
</DataTrigger>
<DataTrigger Binding="{Binding AuthMode}" Value="2">
<Setter Property="Visibility" Value="Collapsed" TargetName="PART_qrcode"/>
</DataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</ResourceDictionary>
\ No newline at end of file
Src/GS.Terminal.VisitorSelfService/ViewModelView/Views/Resources/auth_mode_current_idcard.png
0 → 100644
View file @
2acf19e8
19.1 KB
Src/GS.Terminal.VisitorSelfService/ViewModelView/Views/Resources/auth_mode_current_qrcode.png
0 → 100644
View file @
2acf19e8
9.18 KB
Src/GS.Terminal.VisitorSelfService/ViewModelView/Views/Views.csproj
View file @
2acf19e8
...
...
@@ -177,5 +177,9 @@
<Resource
Include=
"Resources\history_appointment.png"
/>
<Resource
Include=
"Resources\history_visit.png"
/>
</ItemGroup>
<ItemGroup>
<Resource
Include=
"Resources\auth_mode_current_idcard.png"
/>
<Resource
Include=
"Resources\auth_mode_current_qrcode.png"
/>
</ItemGroup>
<Import
Project=
"$(MSBuildToolsPath)\Microsoft.CSharp.targets"
/>
</Project>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment