📄 unt_outform.pas
字号:
unit unt_OutForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons,dateutils;
type
TOutForm = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Edit11: TEdit;
Edit12: TEdit;
Edit13: TEdit;
Edit14: TEdit;
procedure BitBtn2Click(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Edit1Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure savezjqstable;
procedure savetozjqslstable;
procedure savetoszlstable;
procedure savetodtsztable;
end;
var
OutForm: TOutForm;
implementation
uses Main, unt_CheckUser, unt_OutRep;
{$R *.dfm}
procedure TOutForm.savetoszlstable;
var
sSql: String;
begin
sSql := 'insert into Szhistorytable(bookno,roomno,name,certi_no,factfee,note1,oper_date,operator) values('''
+ edit1.text + ''',''' + edit2.text + ''',''' + edit3.text + ''','''
+ edit4.text + ''',' + edit12.text + ',''' + '退房'
+ ''',''' + edit6.text + ''',''' + Main.username + ''')';
mainForm.exeSql(mainForm.query1,sSql,'2');
end;
procedure TOutForm.savetodtsztable;
var
sSql: String;
begin
sSql := 'insert into dtsztable(bookno,roomno,name,certi_no,factfee,note1,oper_date,operator) values('''
+ edit1.text + ''',''' + edit2.text + ''',''' + edit3.text + ''','''
+ edit4.text + ''',' + edit12.text + ',''' + '退房'
+ ''',''' + edit6.text + ''',''' + Main.username + ''')';
mainForm.exeSql(mainForm.query1,sSql,'2');
end;
procedure TOutForm.savetozjqslstable;
var
sSql: String;
begin
sSql := 'insert into zjmxtable(bookno,roomno,name,certi_no,'
+ 'note1,registerday,accountday,operator) values('''
+ edit1.text + ''',''' + edit2.text + ''',''' + edit3.text
+ ''',''' + edit4.text + ''',''' + '退房' + ''',''' + Edit5.Text
+ ''',#' + FormatDateTime('yyyy-mm-dd',Now) + '#''' + Main.username + ''')';
mainForm.exeSql(mainForm.query1,sSql,'2');
end;
procedure TOutForm.savezjqstable;
var
sSql: String;
begin
sSql := 'insert into zjqstable(bookno,roomno,name,certi_no,'
+ 'note1,registerday,accountday,operator) values('''
+ edit1.text + ''',''' + edit2.text + ''',''' + edit3.text
+ ''',''' + edit4.text + ''',''' + '退房' + ''',''' + Edit5.Text
+ ''',#' + FormatDateTime('yyyy-mm-dd',Now) + '#''' + Main.username + ''')';
mainForm.exeSql(mainForm.query1,sSql,'2');
end;
procedure TOutForm.BitBtn2Click(Sender: TObject);
begin
OutForm.Close;
end;
procedure TOutForm.Edit1Exit(Sender: TObject);
var
sSql: String;
day,stime:integer;
sum:real;
begin
sSql := 'select * from Bookroom where bookno=''' + Edit1.Text + '''';
mainForm.exeSql(mainForm.query1,sSql,'1');
if mainForm.query1.RecordCount=0 then
Application.MessageBox('您输入的订房编号错误,请检查!','提示信息',mb_ok)
else
begin
edit2.text:=mainForm.query1.fieldbyname('roomno').asstring;
edit3.text:=mainForm.query1.fieldbyname('name').asstring;
edit4.text:=mainForm.query1.fieldbyname('certi_no').asstring;
edit14.Text := mainForm.query1.fieldbyname('note1').asstring;
edit5.text:=DateTimetostr(mainForm.query1.fieldbyname('registerday').asDatetime);
edit6.Text:=datetimetostr(now);
edit7.text:=IntToStr(mainForm.query1.fieldbyname('roomprice').asinteger);
edit8.text:=FloatToStr(mainForm.query1.fieldbyname('discount').asfloat);
edit9.text:=IntToStr(mainForm.query1.fieldbyname('otherfee').asinteger);
edit11.text:=IntToStr(mainForm.query1.fieldbyname('deposit').asinteger);
if mainForm.query1.fieldbyname('hour_id').asboolean then
edit13.text:='钟点房'
else
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)*strtoint(edit7.text)+strtoint(edit9.text)
else if stime>12 then
sum:=(day+0.5)*strtofloat(edit8.text)*strtoint(edit7.text)+strtoint(edit9.text)
else
sum:=day*strtofloat(edit8.text)*strtoint(edit7.text)+strtoint(edit9.text);
edit10.text:=floattostr(sum);
edit12.text:=floattostr(sum - mainForm.query1.fieldbyname('deposit').asinteger);
end;
BitBtn1.Enabled := True;
end;
procedure TOutForm.BitBtn1Click(Sender: TObject);
var
sSql: String;
begin
savetoszlstable;
savetodtsztable;
savezjqstable;
savetozjqslstable;
sSql := 'update room_manager set use_id=0 where roomno=''' + Edit2.Text + '''';
mainForm.exeSql(mainForm.query1,sSql,'2');
sSql := 'delete from bookroom where bookno=''' + Edit1.Text + '''';
mainForm.exeSql(mainForm.query1,sSql,'2');
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 := '';
BitBtn1.Enabled := False;
end;
procedure TOutForm.FormShow(Sender: TObject);
begin
BitBtn1.Enabled := False;
end;
procedure TOutForm.Edit1Change(Sender: TObject);
begin
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 := '';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -