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

📄 main.pas

📁 我自己写的一个有关酒店管理系统的代码 大家
💻 PAS
字号:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, DB, ADODB, DBTables;

type
  TMainForm = class(TForm)
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N6: TMenuItem;
    N9: TMenuItem;
    N10: TMenuItem;
    N11: TMenuItem;
    N12: TMenuItem;
    N13: TMenuItem;
    N14: TMenuItem;
    N15: TMenuItem;
    N16: TMenuItem;
    N17: TMenuItem;
    N18: TMenuItem;
    N19: TMenuItem;
    N20: TMenuItem;
    N21: TMenuItem;
    N22: TMenuItem;
    N23: TMenuItem;
    N24: TMenuItem;
    N25: TMenuItem;
    N26: TMenuItem;
    N27: TMenuItem;
    Query1: TQuery;
    Database1: TDatabase;
    procedure N6Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure N14Click(Sender: TObject);
    procedure N15Click(Sender: TObject);
    procedure N17Click(Sender: TObject);
    procedure N18Click(Sender: TObject);
    procedure N19Click(Sender: TObject);
    procedure N20Click(Sender: TObject);
    procedure N22Click(Sender: TObject);
    procedure N23Click(Sender: TObject);
    procedure N24Click(Sender: TObject);
    procedure N25Click(Sender: TObject);
    procedure N26Click(Sender: TObject);
    procedure N27Click(Sender: TObject);
    procedure Database1Login(Database: TDatabase; LoginParams: TStrings);
    procedure N21Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  MainForm: TMainForm;
  username,password:string;
implementation
 uses checkuser,//用户检测
      operatormanage,//用户管理
      changepassword,//密码管理
      roomprice,//客房单价设置
      roommanage,//客房管理
      roombrowse,//客房查询
      card,//设置信用卡
      bookroom,//订房管理
      guest_query,//客户查询
      tf,//客人退房
      dtszcx,//当日收支查询
      dtszcxrpt,//打印当天报表
      booklscx,//订房历史信息查询
      szlscx,//收支历史查询
      zjmxcx,//资金明细查询
      cancelbook;//退订
{$R *.dfm}
//退出系统模块
procedure TMainForm.N6Click(Sender: TObject);
begin
    database1.Close; 
    Close;
end;
//系统启动时,进行用户名和密码检测
procedure TMainForm.FormActivate(Sender: TObject);
var
    i:integer;
    pass:string;
    qx1,qx2,qx3,qx4,qx5:boolean;
begin
    i:=3;//在用户名或密码不正确的情况下,可重试3次
    pass:='';
    while i>0 do
    begin
          checkuserform.ShowModal;
          if username<>'' then
          begin
                query1.Params.Clear;
                query1.Params.Add;
                query1.Params[0].name:='s0';
                query1.params[0].DataType:=ftstring;
                query1.Params[0].Size:=8;
                query1.Params[0].Value:=username;
                query1.SQL.clear;
                query1.SQL.add('Select * from operator where name=:s0');
                query1.open;
                if (query1.RecordCount=1) and (query1.FieldByName('password').AsString=password) then
                begin
                      i:=0;
                      qx1:=query1.FieldByName('right_1').Asboolean;
                      qx2:=query1.FieldByName('right_2').Asboolean;
                      qx3:=query1.FieldByName('right_3').Asboolean;
                      qx4:=query1.FieldByName('right_4').Asboolean;
                      qx5:=query1.FieldByName('right_5').Asboolean;
                end
                else
                      Application.MessageBox('用户名或密码错误,请检查!','提示信息',mb_ok);
          end
          else
              //adodataset1.Close;
              close;
          i:=i-1;
    end;
    query1.Close;
n2.Enabled:=false;
    n4.Enabled:=false;
    n18.Enabled:=false;
    n19.Enabled:=false;
    n20.Enabled:=false;
    n21.Enabled:=false;
    n22.Enabled:=false;
    n23.Enabled:=false;
    n24.Enabled:=false;
    n14.Enabled:=false;
    n15.Enabled:=false;
    n17.Enabled:=false;
    n25.Enabled:=false;
    n26.Enabled:=false;
    n27.Enabled:=false;
    if qx1 then
    begin
        //系统管理权限
        n2.Enabled:=true;
        n4.Enabled:=true;
        n18.Enabled:=true;
    end;
    if qx2 then
    begin
        //订房权限
        n19.Enabled:=true;
        n20.Enabled:=true;
        n21.Enabled:=true;
    end;
    if qx3 then
    begin
        //退房权限
        n22.Enabled:=true;
        n23.Enabled:=true;
        n24.Enabled:=true;
    end;
    if qx4 then
    begin
        //客房管理权限
        n14.Enabled:=true;
        n15.Enabled:=true;
        n17.Enabled:=true;
    end;
    if qx5 then
    begin
        //历史信息查询权限 
        n25.Enabled:=true;
        n26.Enabled:=true;
        n27.Enabled:=true;
    end;
end;
//调用操作员管理模块
procedure TMainForm.N2Click(Sender: TObject);
begin
      OperatorManageForm.ShowModal; 
end;
//调用用户密码修改模块
procedure TMainForm.N3Click(Sender: TObject);
begin
    ChangePasswordForm.ShowModal; 
end;
//进行数据表初始化模块
procedure TMainForm.N4Click(Sender: TObject);
begin
      //操作员表初始化
      query1.RequestLive:=true;
      query1.Close;
      query1.SQL.clear;
      query1.SQL.add('delete from operator');
      query1.SQL.add('insert into operator(name,password,department,oper_date,right_1,right_2,right_3,right_4,right_5,operator)');
      query1.sql.add('values(:name,:password,:department,:oper_date,:right_1,:right_2,:right_3,:right_4,:right_5,:operator)');
      query1.ParamByName('name').asstring:='admin';
      query1.ParamByName('password').asstring:='12345678';
      query1.ParamByName('department').asstring:='财务处';
      query1.ParamByName('oper_date').asdatetime:=now;
      query1.ParamByName('right_1').asboolean:=true;
      query1.ParamByName('right_2').asboolean:=true;
      query1.ParamByName('right_3').asboolean:=true;
      query1.ParamByName('right_4').asboolean:=true;
      query1.ParamByName('right_5').asboolean:=true;
      query1.ParamByName('operator').asstring:=username;
      //信用卡表初始化
      query1.SQL.add('delete from card');
      //订房数据表初始化
      query1.sql.add('delete from bookroom');
      //订房历史数据表初始化
      query1.sql.Add('delete from bookroomhistroy');
      //当天收支数据表初始化
      query1.sql.add('delete from dtsztable');
      //客房等级表初始化
      query1.sql.add('delete from room');
      //客房数据表初始化
      query1.sql.Add('delete from room_manager');
      //收支历史表初始化
      query1.sql.add('delete from szhistorytable');
      //资金明细表初始化
      query1.sql.Add('delete from zjmxtable');
      //资金清算数据表初始化
      query1.sql.add('delete from zjqstable');
      query1.ExecSQL;
      query1.Close;
      //客房价格表
       application.MessageBox('系统初始化结束,请退出!','提示信息',mb_ok); 
end;
//调用客房等级单价模块
procedure TMainForm.N14Click(Sender: TObject);
begin
    RoomPriceForm.showModal;
end;
//调用客房管理模块
procedure TMainForm.N15Click(Sender: TObject);
begin
    Roomform.ShowModal;
end;
//调用客房查询模块
procedure TMainForm.N17Click(Sender: TObject);
begin
  roomfindform.ShowModal; 
end;
//调用信用卡设置管理模块
procedure TMainForm.N18Click(Sender: TObject);
begin
    cardform.ShowModal;
end;
//调用订房模块
procedure TMainForm.N19Click(Sender: TObject);
begin
      bookroomform.ShowModal;
end;
//调用订房信息查询模块
procedure TMainForm.N20Click(Sender: TObject);
begin
    guestqueryform.ShowModal; 
end;
//调用退房管理模块
procedure TMainForm.N22Click(Sender: TObject);
begin
    tfform.showmodal;
end;
//调用当天收支查询模块
procedure TMainForm.N23Click(Sender: TObject);
begin
      DtszcxForm.ShowModal;
end;
//打印报表模块
procedure TMainForm.N24Click(Sender: TObject);
begin
      dtszcxrptform.Query1.RequestLive:=true;  
      dtszcxrptform.qrlabel13.Caption:=username;
      dtszcxrptform.QRLabel15.Caption:=datetimetostr(now);
      dtszcxrptform.QuickRep1.Preview;
      dtszcxrptform.query1.first;
      while not dtszcxrptform.query1.eof do
      begin
          dtszcxrptform.query1.delete;
      end;
      dtszcxrptform.query1.close; 
end;
//调用订房历史查询
procedure TMainForm.N25Click(Sender: TObject);
begin
    dflscxform.ShowModal; 
end;
//调用收支历史查询
procedure TMainForm.N26Click(Sender: TObject);
begin
      szlscxform.showmodal;
end;
//调用资金明细查询模块
procedure TMainForm.N27Click(Sender: TObject);
begin
    zjmxcxform.ShowModal; 
end;
//数据库口令和密码验证模块
procedure TMainForm.Database1Login(Database: TDatabase;
  LoginParams: TStrings);
begin
    loginparams.Clear;
    loginparams.add('username=jdgl');
    loginparams.add('password=jdgl');
end;
//调用取消订房模块
procedure TMainForm.N21Click(Sender: TObject);
begin
    cancelbookform.ShowModal; 
end;

end.

⌨️ 快捷键说明

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