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

📄 unit23.~pas

📁 酒店住宿管理系统,有完整的文件和源码, 可以下载使用
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:



procedure Ttfform.BitBtn2Click(Sender: TObject);
begin
{edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
edit7.Text:='';
edit8.Text:='';
edit9.Text:='';
edit10.Text:='';
edit11.Text:='';
edit12.Text:='';
edit13.Text:='';
edit14.Text:='';}
initiate;
adodataset1.Close;
adotable1.Close;
close;
end;

procedure Ttfform.BitBtn1Click(Sender: TObject);

var
    adodataset2:TAdoDataset;
begin
    //订房历史表
    savetobookroomhistorytable;
    //当天收支数据表
    savetodtsztable;
    //收支历史表
    savetoszhistorytable;
    //资金清算历史表
//    savetozjqshistorytable;
    //客房管理
    adodataset2:=TAdodataset.Create(self);
    adodataset2.Connection:=adoconnection1;
    adodataset2.Parameters.Clear;
    adodataset2.Parameters.add;
    adodataset2.Parameters[0].name:='s0';
    adodataset2.Parameters[0].DataType:=ftstring;
    adodataset2.Parameters[0].Size:=6;
    adodataset2.Parameters[0].Direction:=pdinput;
    adodataset2.Parameters[0].Value:=adodataset1.fieldbyname('房间编号').asstring;;
    adodataset2.CommandText:='select *from 客房管理 where 客房编号=:s0';
    adodataset2.Active:=true;
    adodataset2.Edit;
    adodataset2.FieldByName('使用标志').asboolean:=false;
    adodataset2.post;
    adodataset2.close;
    //资金清算表
    savetozjqstable;
    adodataset1.Delete;
    adodataset1.Refresh;
    while application.MessageBox('是否打印订房单(Yes/No)','提示信息',mb_yesno)=IDYes do
    begin
    tfprint.QRLabel3.Caption:=edit1.Text;
    tfprint.QRLabel5.Caption:=edit2.Text;
    tfprint.QRLabel7.Caption:=edit3.Text;
    tfprint.QRLabel9.Caption:=edit4.Text;
    tfprint.QRLabel11.Caption:=edit5.Text;
    tfprint.QRLabel13.Caption:=edit6.Text;
    tfprint.QRLabel15.Caption:=edit7.Text;
    tfprint.QRLabel17.Caption:=edit8.Text;
    tfprint.QRLabel19.Caption:=edit11.Text;
    tfprint.QRLabel21.Caption:=edit9.Text;
    tfprint.QRLabel27.Caption:=edit10.Text;
    tfprint.QRLabel29.Caption:=edit12.Text;
    tfprint.QRLabel31.Caption:=edit14.Text;
    tfprint.QRLabel23.Caption:=denglu.usename;
    tfprint.QRLabel25.Caption:=datetimetostr(now);
    tfprint.QuickRep1.PreviewModal;
    end;

bitbtn1.Enabled:=false;
end;

//procedure Ttfform.Edit1Change(Sender: TObject);

//end;
{procedure Ttfform.Edit1Exit(Sender: TObject);
var
      day,stime:integer;
      sum:real;
begin
      if trim(edit1.Text)='' then
      begin
      Application.MessageBox('请输入的订房编号!','提示信息',mb_ok);
      exit;
      end
      else
      begin
      adodataset1.Close;
      adodataset1.Parameters.clear;
      adodataset1.Parameters.AddParameter;
      adodataset1.Parameters[0].name:='s0';
      adodataset1.Parameters[0].DataType:=ftstring;
      adodataset1.Parameters[0].Size:=12;
      adodataset1.Parameters[0].Direction:=pdinput;
      adodataset1.Parameters[0].Value:=edit1.text;
      adodataset1.Parameters.AddParameter;
    adodataset1.Parameters[1].Name:='s1';
    adodataset1.Parameters[1].DataType:=ftboolean;
    adodataset1.Parameters[1].Direction:=pdinput;
    adodataset1.Parameters[1].Value:=false;
      adodataset1.commandtext:='select * from 订房数据表 where 订房序号=:s0 and 预订标志=:s1';
      adodataset1.open;
      if adodataset1.RecordCount=0 then
         begin
         Application.MessageBox('您输入的订房编号错误,请检查!','提示信息',mb_ok);
          bitbtn1.Enabled:=false;
         end
      else
      begin

          edit2.text:=adodataset1.fieldbyname('房间编号').asstring;
          edit3.text:=adodataset1.fieldbyname('客户名称').asstring;
          edit4.text:=adodataset1.fieldbyname('证件号码').asstring;
          edit5.text:=DateTimetostr(adodataset1.fieldbyname('登记日期').asDatetime);
          edit6.Text:=datetimetostr(now);
          edit7.text:=IntToStr(adodataset1.fieldbyname('住房单价').asinteger);
          edit8.text:=FloatToStr(adodataset1.fieldbyname('折扣率').asfloat);
          edit9.text:=IntToStr(adodataset1.fieldbyname('其他费用').asinteger);
          edit11.text:=IntToStr(adodataset1.fieldbyname('押金数').asinteger);
          if adodataset1.fieldbyname('钟点房').asboolean then
              begin
              edit13.text:='钟点房';
              day:=daysbetween(dateof(strtodatetime(edit6.text)),dateof(strtodatetime(edit5.text)));
              stime:=hourof(strtodatetime(edit6.text));
              if stime>18 then
                 sum:=(day+1)*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text)
              else if stime>12 then
                 sum:=(day+0.5)*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text)
              else
                 sum:=day*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text);
              end
          else
              begin
              edit13.text:='住宿';
              day:=daysbetween(dateof(strtodatetime(edit6.text)),dateof(strtodatetime(edit5.text)));


              sum:=day*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text);
              end;
          edit10.text:=floattostr(sum);
          edit12.text:=floattostr(sum-adodataset1.fieldbyname('押金数').asinteger);
      bitbtn1.Enabled:=true;
      end;
      
      end;
end; }

procedure Ttfform.FormClose(Sender: TObject; var Action: TCloseAction);
begin
initiate;
adodataset1.Close;
adotable1.Close;
close;
end;

procedure Ttfform.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
      day,stime:integer;
      sum:real;
begin
if key=13 then

begin
      if trim(edit1.Text)='' then
      begin
      Application.MessageBox('请输入的订房编号!','提示信息',mb_ok);
      exit;
      end
      else
      begin
      adodataset1.Close;
      adodataset1.Parameters.clear;
      adodataset1.Parameters.AddParameter;
      adodataset1.Parameters[0].name:='s0';
      adodataset1.Parameters[0].DataType:=ftstring;
      adodataset1.Parameters[0].Size:=12;
      adodataset1.Parameters[0].Direction:=pdinput;
      adodataset1.Parameters[0].Value:=edit1.text;
      adodataset1.Parameters.AddParameter;
    adodataset1.Parameters[1].Name:='s1';
    adodataset1.Parameters[1].DataType:=ftboolean;
    adodataset1.Parameters[1].Direction:=pdinput;
    adodataset1.Parameters[1].Value:=false;
      adodataset1.commandtext:='select * from 订房数据表 where 订房序号=:s0 and 预订标志=:s1';
      adodataset1.open;
      if adodataset1.RecordCount=0 then
         begin
         Application.MessageBox('您输入的订房编号错误,请检查!','提示信息',mb_ok);
          bitbtn1.Enabled:=false;
         end
      else
      begin

          edit2.text:=adodataset1.fieldbyname('房间编号').asstring;
          edit3.text:=adodataset1.fieldbyname('客户名称').asstring;
          edit4.text:=adodataset1.fieldbyname('证件号码').asstring;
          edit5.text:=DateTimetostr(adodataset1.fieldbyname('登记日期').asDatetime);
          edit6.Text:=datetimetostr(now);
          edit7.text:=IntToStr(adodataset1.fieldbyname('住房单价').asinteger);
          edit8.text:=FloatToStr(adodataset1.fieldbyname('折扣率').asfloat);
          edit9.text:=IntToStr(adodataset1.fieldbyname('其他费用').asinteger);
          edit11.text:=IntToStr(adodataset1.fieldbyname('押金数').asinteger);
          if adodataset1.fieldbyname('钟点房').asboolean then
              begin
              edit13.text:='钟点房';
              day:=daysbetween(dateof(strtodatetime(edit6.text)),dateof(strtodatetime(edit5.text)));
              stime:=hourof(strtodatetime(edit6.text));
              if stime>18 then
                 sum:=(day+1)*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text)
              else if stime>12 then
                 sum:=(day+0.5)*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text)
              else
                 sum:=day*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text);
              end
          else
              begin
              edit13.text:='住宿';
              day:=daysbetween(dateof(strtodatetime(edit6.text)),dateof(strtodatetime(edit5.text)));


              sum:=day*(strtofloat(edit8.text)/100)*strtoint(edit7.text)+strtoint(edit9.text);
              end;
          edit10.text:=floattostr(sum);
          edit12.text:=floattostr(sum-adodataset1.fieldbyname('押金数').asinteger);
      bitbtn1.Enabled:=true;
      end;
      
      end;
end;


end;


procedure Ttfform.BitBtn3Click(Sender: TObject);
begin
initiate;
end;

end.

⌨️ 快捷键说明

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