⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 load.pas

📁 一个源码客户信息管理系统
💻 PAS
字号:
unit Load;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, RzTabs, ExtCtrls, RzButton, StdCtrls, Mask, RzEdit, RzCmboBx;

type
  TLoadForm = class(TForm)
    Image1: TImage;
    RzEdit1: TRzEdit;
    RzBitBtn1: TRzBitBtn;
    RzBitBtn2: TRzBitBtn;
    RzComboBox1: TRzComboBox;
    procedure FormShow(Sender: TObject);
    procedure RzBitBtn1Click(Sender: TObject);
    //如果登陆成功,则设定用户权限
    procedure SetUserPower;
    //记下用户登陆记录
    procedure UserLanding;
    //记下用户退出时的时间
    procedure UserExitDate;
  private
    { Private declarations }
  public
    { Public declarations }
    LandingUser    : String;    //登陆用户名
    LandingTime    : TDateTime;    //登陆时间
    Degree         : Integer;   //登陆编号
  end;

var
  LoadForm: TLoadForm;
  Loads   : Integer;
implementation

uses DM, MAIN;

{$R *.dfm}

procedure TLoadForm.FormShow(Sender: TObject);
var
   I : integer;
begin
  Loads:=1;
  RzComboBox1.Items.Clear;
  with DM1.ADODataSet11 do try
     Open;
     First;
     for i:=0 to RecordCount-1 do begin
        RzComboBox1.Items.Add(FieldByName('用户名').AsString);
        next;
     end;
  except
  end;
end;

procedure TLoadForm.RzBitBtn1Click(Sender: TObject);
begin
//检查用户输入的密码是否正确
  if RzComboBox1.ItemIndex<0 then begin
     messagebox(Handle,'请选择一个正确的用户名!','提示',MB_OK+MB_ICONINFORMATION);
     RzComboBox1.SetFocus;
     Exit;
  end;
  with DM1.ADODataSet11 do try
      if not Locate('用户名',RzCombobox1.Text,[])then begin
         Messagebox(Handle,'找不到该用户名,请检查您选择的用户名是否正确或与管理员联系!','错误',MB_OK+MB_ICONWARNING);
         RzComboBox1.SetFocus;
         Exit;
      end else begin
         if (RzEdit1.Text<>FieldByName('密码').AsString) then begin
            if loads<3 then begin
               Messagebox(Handle,pchar('您输入的密码有误,您还有'+IntToStr(3-Loads)+'次机会重新输入!'),'错误',MB_OK+MB_ICONWARNING);
               RzEdit1.SetFocus;
               Inc(Loads);
               Exit;
            end else LoadForm.Close;
         end else begin
            MainForm.LogoIn:=true;
            SetUserPower;
            UserLanding;
            //记下登陆用户名
            LandingUser:=RzCombobox1.Text;
            MainForm.RzStatusPane2.Caption:='用户:'+LandingUser;
            LoadForm.Close;
         end;
      end;
  except
  end;
end;

procedure TLoadForm.SetUserPower;
begin
//设定用户权限
with DM1.ADODataSet11 do try
     MainForm.power:=FieldByName('权限管理').AsBoolean;
     mainform.password:=FieldByName('修改密码').AsBoolean;
     MainForm.print:=FieldByName('打印报表').AsBoolean;
     MainForm.DataOut:=FieldByName('导出数据').AsBoolean;
     Mainform.BackUp:=FieldByName('备份还原').AsBoolean;
     MainForm.Log:=FieldByName('查看日志').AsBoolean;
except
end;
end;

procedure TLoadForm.UserExitDate;
begin
//记下用户退出时间
   with DM1.LogData do try
      //如果本次登陆记录被删除
      if not Locate('Degree',Degree,[])then begin
         Append;
         FieldByName('LoadDate').AsDateTime:=LandingTime;
         FieldByName('UserName').AsString:=LandingUser;
         FieldByName('OutDate').AsDateTime:=Now;
         UpdateBatch;
      end else begin
         Edit;
         FieldByName('OutDate').AsDateTime:=Now;
         UpdateBatch;
      end;
   except
   end;
end;

procedure TLoadForm.UserLanding;
begin
//记录用户登陆记录
   with DM1.LogData do try
      Append;
      FieldByName('LoadDate').AsDateTime:=Now;
      FieldByName('UserName').AsString:=RzCombobox1.Text;
      LandingTime:=Now;
      UpdateBatch;
      Degree:=FieldByName('Degree').AsInteger;
      Requery;
   except
   end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -