Files
Delphi-Projects/V-0.6/UserPage_u.pas
zastian00@gmail.com 9ac24e70c7 V-0.6
2019-08-06 15:48:08 +02:00

140 lines
3.6 KiB
ObjectPascal

unit UserPage_u;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.Grids,
Vcl.Samples.Calendar, Vcl.Menus, Vcl.ExtCtrls;
type
TfrmUserPage = class(TForm)
redtGoles: TRichEdit;
MainMenu1: TMainMenu;
Logout1: TMenuItem;
caleUser: TCalendar;
Panel1: TPanel;
btnClockIn: TButton;
btnClockOut: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ComboBox1Change(Sender: TObject);
procedure Logout1Click(Sender: TObject);
procedure caleUserChange(Sender: TObject);
procedure btnClockInClick(Sender: TObject);
procedure btnClockOutClick(Sender: TObject);
private
{ Private declarations }
var
iDay : Integer;
public
{ Public declarations }
var
closed : Boolean;
sUserInUse : string;
end;
var
frmUserPage: TfrmUserPage;
implementation
{$R *.dfm}
uses Business_u, Login_u;
procedure TfrmUserPage.btnClockInClick(Sender: TObject);
var
iConfirm : Integer;
begin
DataUser.adoUser.SQL.Clear;
DataUser.adoUser.SQL.Add('INSERT INTO ClockLog(InOut,DateLog,TimeLog,Username) VALUES(:par0,:par1,:par2,:par3)');
DataUser.adoUser.Parameters.ParamByName('par0').Value:='In';
DataUser.adoUser.Parameters.ParamByName('par1').Value:=DateToStr(Date);
DataUser.adoUser.Parameters.ParamByName('par2').Value:=TimeToStr(time);
DataUser.adoUser.Parameters.ParamByName('par3').Value:=sUserInUse;
iConfirm:=MessageDlg('Confirm Clock in', mtConfirmation, mbYesNo, 7);
if iConfirm = 7 then exit;
if iConfirm = 6 then DataUser.adoUser.ExecSQL;
end;
procedure TfrmUserPage.btnClockOutClick(Sender: TObject);
var
iConfirm : Integer;
begin
DataUser.adoUser.SQL.Clear;
DataUser.adoUser.SQL.Add('INSERT INTO ClockLog(InOut,DateLog,TimeLog,Username) VALUES(:par0,:par1,:par2,:par3)');
DataUser.adoUser.Parameters.ParamByName('par0').Value:='Out';
DataUser.adoUser.Parameters.ParamByName('par1').Value:=Date;
DataUser.adoUser.Parameters.ParamByName('par2').Value:=time;
DataUser.adoUser.Parameters.ParamByName('par3').Value:=sUserInUse;
iConfirm:=MessageDlg('Confirm Clock OUT', mtConfirmation, mbYesNo, 7);
if iConfirm = 7 then exit;
if iConfirm = 6 then DataUser.adoUser.ExecSQL;
end;
procedure TfrmUserPage.Button1Click(Sender: TObject);
begin
closed:=True;
end;
procedure TfrmUserPage.caleUserChange(Sender: TObject);
var
i : Integer;
Goletext : TextFile;
sLine : string ;
begin
iday:=caleUser.Day;
redtGoles.Text:='';
//ShowMessage(sUserName+IntToStr(iDay)+'.txt');
AssignFile(Goletext, sUserInUse+IntToStr(iDay)+'.txt');
if sUserInUse > '' then
begin
if FileExists(sUserInUse+IntToStr(iDay)+'.txt') then
begin
redtGoles.Text:='';
reset(Goletext);
while not Eof(Goletext) do
begin
Readln(Goletext, sLine);
redtGoles.Lines.Add(sLine);
end;
end
else
begin
Rewrite(Goletext);
end;
end
else
exit;
CloseFile(Goletext);
end;
procedure TfrmUserPage.ComboBox1Change(Sender: TObject);
begin
// if ComboBox1.Text = 'LogOut' then
// closed:= True;
end;
procedure TfrmUserPage.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Application.Terminate;
end;
procedure TfrmUserPage.FormCreate(Sender: TObject);
begin
iDay:=caleUser.Day;
closed:=False;
end;
procedure TfrmUserPage.Logout1Click(Sender: TObject);
begin
frmBusiness.show;
frmUserPage.Free;
end;
end.