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

📄 ulogin.~pas

📁 相关的销售服务管理行业的一个软件
💻 ~PAS
字号:
unit ulogin;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, Db, DBTables, Mask,DBCtrls, ExtCtrls, ADODB,Registry,
  ComCtrls, DBGridEh;

type
  Tfrmlogin = class(TForm)
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    Image1: TImage;
    ADOQpass: TADOQuery;
    ADOQusers: TADOQuery;
    Panel2: TPanel;
    Label2: TLabel;
    Label5: TLabel;
    Label4: TLabel;
    DBLookupComboBox1: TDBLookupComboBox;
    Label6: TLabel;
    DateTimePicker1: TDateTimePicker;
    Label1: TLabel;
    Label3: TLabel;
    Edit1: TMaskEdit;
    ADOQztcode: TADOQuery;
    DSztcode: TDataSource;
    DBLookupComboBox2: TDBLookupComboBox;
    ADOQztyear: TADOQuery;
    DSztyear: TDataSource;
    Edit2: TEdit;
    DBLookupComboBox3: TDBLookupComboBox;
    DSuser: TDataSource;
    ADOQright: TADOQuery;
    ADOQztright: TADOQuery;
    procedure BitBtn2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure DBLookupComboBox1CloseUp(Sender: TObject);
    procedure DBLookupComboBox2CloseUp(Sender: TObject);
    procedure DBLookupComboBox3CloseUp(Sender: TObject);
    procedure FormCreate(Sender: TObject);
private
    procedure setright;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmlogin: Tfrmlogin;
implementation
  uses Umain,U_DM,udata, SYS_DataModal, DatabaseSet, UDataVar;

{$R *.DFM}

procedure Tfrmlogin.BitBtn2Click(Sender: TObject);
begin
    frmlogin.Close ;
    //application.Terminate ; ADOConnection,ADOCon1
end;

procedure Tfrmlogin.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    ADOQusers.close;  ADOQpass.close;
    ADOQright.close;  ADOQztcode.close;
    ADOQztyear.close;
    //DM1.ADOCon1.Close;
    frmlogin:= nil;
    action := cafree;
end;

procedure Tfrmlogin.FormShow(Sender: TObject);
begin
   //Connectdatabaseuser;
   DateTimePicker1.DateTime :=date;
   DBLookupComboBox1.SetFocus ;
   ADOQztcode.Close;
   ADOQztcode.open;
end;

procedure Tfrmlogin.BitBtn1Click(Sender: TObject);
begin
   if DBLookupComboBox3.Text = '' then
      begin
        Application.MessageBox('请选择用户!','错误',16);
        exit;
      end;
   if not Userstate then
      begin
        Application.MessageBox('该用户已被禁用!','错误',16);
        exit;
      end;
   if edit1.text = userpassword then
      begin
        Connectdatabaseuser;
        try
          Dm.ADOConnection.Connected:=true;
        except
          Application.MessageBox('数据库连接失败','连接数据库',16);
          screen.cursor := 0;
          exit;
        end;
        //frmlogin.close;
        frmmain.StatusBar1.Panels[0].Text :='  就绪';
        frmmain.StatusBar1.Panels[2].Text :='  操作员:  '+UserName;
        frmmain.StatusBar1.Panels[3].Text :='  销售管理';
        frmmain.StatusBar1.Panels[4].Text :='  日期:  '+datetostr(date);
        setright;
        frmmain.N3.Enabled :=false; frmmain.N4.Enabled :=true;
        frmmain.N17.Enabled :=true; frmmain.N21.Enabled :=true;
        frmmain.N10.Enabled:=true; frmmain.N11.Enabled :=true;
        frmmain.N20.Enabled:=true; frmmain.N26.Enabled:=true;
        frmmain.n41.Enabled :=true;
        frmmain.N27.Enabled:=true;
        frmmain.Outlook1.Enabled:=true;
        frmlogin.close;
        
      end
   else
      begin
        Application.MessageBox('密码错误 请重新输入!','错误',16);
        edit1.text:='';
        edit1.SetFocus ;
        exit;
      end;
end;

procedure Tfrmlogin.setright;  // 设置权限
var
  i,j,k:integer;
  ss:string;
begin
   if userrole = '帐套管理员' then
     begin
       for i:=0 to frmmain.MainMenu1.Items.Count - 1 do
         begin
           frmmain.MainMenu1.Items[i].Enabled :=true;
           for j := 0 to frmmain.MainMenu1.Items[i].Count - 1 do
             begin
               frmmain.MainMenu1.Items[i].Items[j].Enabled:=true;
             end;
         end;
     end
   else
     begin
   with ADOQright do
     begin
       close;
       parameters[0].Value :=userid;
       parameters[1].Value :=DBLookupComboBox1.Text ;
       parameters[2].Value :=Mcode;             //各模块编码
       open;
       while not EOF do
         begin
           for i:=0 to frmmain.MainMenu1.Items.Count - 1 do
             begin
               if frmmain.MainMenu1.Items[i].Tag = 1 then
                 begin
                   frmmain.MainMenu1.Items[i].Enabled :=true;
                   for j := 0 to frmmain.MainMenu1.Items[i].Count - 1 do
                     begin
                        if (frmmain.MainMenu1.Items[i].Items[j].Tag = 1) and
                           (Fieldbyname('Tag').asboolean) then
                           begin
                             frmmain.MainMenu1.Items[i].Items[j].Enabled:=true;
                             ADOQright.next;
                           end
                        else if not frmmain.MainMenu1.Items[i].Items[j].IsLine then
                           begin
                             frmmain.MainMenu1.Items[i].Items[j].Enabled:=false;
                             ADOQright.next;
                           end;
                     end;
                 end;
             end;
         end;
     end;
   end;
end;

procedure Tfrmlogin.DBLookupComboBox1CloseUp(Sender: TObject);
begin
   ADOQusers.Close;
   Edit1.text:='';   Edit2.text:='';
   with ADOQztyear do
     begin
       close;
       parameters[0].Value :=DBLookupComboBox1.Text ;
       open;
     end;
end;

procedure Tfrmlogin.DBLookupComboBox2CloseUp(Sender: TObject);
begin
   Edit2.text:= ADOQztyear.fieldbyname('ztname').asstring;
   Udataname:=ADOQztyear.fieldbyname('dataname').asstring;
   udatauser:=ADOQztyear.fieldbyname('datauser').asstring;
   udatapass:=ADOQztyear.fieldbyname('dpassword').asstring;
   udataserver:=ADOQztyear.fieldbyname('dserver').asstring;
   with ADOQusers do
     begin
       close;
       parameters[0].Value := DBLookupComboBox1.text;
       open;
     end;
end;

procedure Tfrmlogin.DBLookupComboBox3CloseUp(Sender: TObject);
begin
   with ADOQpass do
     begin
       close;
       parameters[0].Value := ADOQusers.fieldbyname('userid').asstring;
       open;
       Userid:=Fieldbyname('userid').asstring;
       Username:=Fieldbyname('username').asstring;
       UserpassWord:=Fieldbyname('Userpass').asstring;
       Userstate:=Fieldbyname('userstate').asboolean;
     end;
   with ADOQztright do
     begin
       close;
       parameters[0].Value := DBLookupComboBox1.text;
       parameters[1].Value := Userid;
       open;
       userrole:=Fieldbyname('userrole').asstring;
     end;
end;

procedure Tfrmlogin.FormCreate(Sender: TObject);
begin
  {if not ConSuccess then
    frmDataBaseSet.showModal;}
end;

end.

⌨️ 快捷键说明

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