@@ -14,7 +14,7 @@ interface
14
14
Vcl.Controls,
15
15
Vcl.StdCtrls,
16
16
WEBLib.StdCtrls,
17
- Main.View ;
17
+ Main.View , XData.Web.Client, XData.Web.Connection ;
18
18
19
19
type
20
20
TLoginView = class (TWebForm)
@@ -23,11 +23,14 @@ TLoginView = class(TWebForm)
23
23
edtSenha: TWebEdit;
24
24
btnEntrar: TWebButton;
25
25
ckLembrarMe: TWebCheckBox;
26
+ XDataWebConnection1: TXDataWebConnection;
27
+ XDataWebClient1: TXDataWebClient;
26
28
procedure btnEntrarClick (Sender: TObject);
27
29
procedure WebFormShow (Sender: TObject);
28
30
procedure edtLoginKeyPress (Sender: TObject; var Key: Char);
29
31
procedure edtSenhaKeyPress (Sender: TObject; var Key: Char);
30
32
procedure WebFormCreate (Sender: TObject);
33
+ procedure XDataWebClient1Error (Error: TXDataClientError);
31
34
private
32
35
33
36
public
@@ -52,6 +55,16 @@ procedure TLoginView.WebFormShow(Sender: TObject);
52
55
edtLogin.SetFocus;
53
56
end ;
54
57
58
+ procedure TLoginView.XDataWebClient1Error (Error: TXDataClientError);
59
+ begin
60
+ ShowMessage(
61
+ ' StatusCode: ' + Error.StatusCode.ToString + sLineBreak +
62
+ ' RequestUrl: ' + Error.RequestUrl + sLineBreak +
63
+ ' RequestId: ' + Error.RequestId + sLineBreak +
64
+ ' ErrorCode: ' + Error.ErrorCode + sLineBreak +
65
+ ' ErrorMessage: ' + Error.ErrorMessage);
66
+ end ;
67
+
55
68
procedure TLoginView.edtLoginKeyPress (Sender: TObject; var Key: Char);
56
69
begin
57
70
if Key = #13 then
@@ -65,18 +78,23 @@ procedure TLoginView.edtSenhaKeyPress(Sender: TObject; var Key: Char);
65
78
end ;
66
79
67
80
procedure TLoginView.btnEntrarClick (Sender: TObject);
81
+ var
82
+ LResponse: TXDataClientResponse;
68
83
begin
69
- if edtLogin.Text <> ' admin ' then
84
+ if Trim( edtLogin.Text).IsEmpty or Trim(edtSenha.Text).IsEmpty then
70
85
begin
71
- ShowMessage(' Login inválido ' );
86
+ ShowMessage(' Login e senha devem ser informados ' );
72
87
edtLogin.SetFocus;
73
88
Exit;
74
89
end ;
75
90
76
- if edtSenha.Text <> ' admin' then
91
+ LResponse := TAwait.Exec<TXDataClientResponse>(
92
+ XDataWebClient1.RawInvokeAsync(' ILoginService.Login' , [edtLogin.Text, edtSenha.Text]));
93
+
94
+ if LResponse.StatusCode <> 200 then
77
95
begin
78
- ShowMessage(
5815
' Senha inválido ' );
79
- edtSenha .SetFocus;
96
+ ShowMessage(' Login ou senha informados são inválidos ' );
97
+ edtLogin .SetFocus;
80
98
Exit;
81
99
end ;
82
100
0 commit comments