📄 c_tf.pas
字号:
unit c_tf;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, ExtCtrls;
type
Tcfrm_tf = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
DateTimePicker1: TDateTimePicker;
Label4: TLabel;
DateTimePicker2: TDateTimePicker;
Label5: TLabel;
GroupBox2: TGroupBox;
Label6: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
StatusBar1: TStatusBar;
BitBtn3: TBitBtn;
Edit3: TEdit;
Label7: TLabel;
Label8: TLabel;
Edit4: TEdit;
procedure Edit1Exit(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
cfrm_tf: Tcfrm_tf;
implementation
uses c_datam, publicvar;
{$R *.dfm}
procedure Tcfrm_tf.Edit1Exit(Sender: TObject);
var mes:string;
begin
if edit1.Text='' then
begin
edit1.SetFocus;
exit;
end
else
begin
dm.ADO_room.Open;
dm.ADO_room.First;
if dm.ADO_room.Locate('Room_id',edit1.Text,[]) then
begin
edit2.Text:=dm.ADO_room.fieldbyname('Cost').AsString;
DatetimePicker1.Date:=dm.ADO_room.fieldbyname('state_time').AsDateTime;
DatetimePicker2.Date:=dm.ADO_room.fieldbyname('end_time').AsDateTime;
edit4.Text:=dm.ADO_room.fieldbyname('customer_name').AsString;
end
else
begin
mes:='房间: <'+dm.ADO_room.fieldbyname('Room_id').AsString
+'> 没有住客,不能退房!';
application.MessageBox(pchar(mes),pchar('提示')
,+MB_ICONQUESTION);
edit1.Text:='';
edit1.SetFocus;
end;
dm.ADO_room.Close;
end;
end;
procedure Tcfrm_tf.BitBtn2Click(Sender: TObject);
begin
dm.ado_inroom.open;
dm.ado_inroom.locate('Room_id',edit1.text,[]);
dm.ado_inroom.delete;
with dm.ADO_room do
begin
open;
First;
Locate('Room_id',edit1.Text,[]);
edit;
fieldbyname('Room_state').AsString:='空';
fieldbyname('customer_name').AsString:='';
fieldbyname('state_time').AsString:='';
fieldbyname('end_time').AsString:='';
post;
end;
with dm.ado_roombenefit do
begin
open;
append;
fieldbyname('Room_id').asstring:=edit1.text;
fieldbyname('benefit').asfloat:=strtofloat(edit3.Text);
fieldbyname('bdate').asdatetime:=date();
post;
close;
end;
showmessage('结帐完成!');
edit3.text:='';
edit1.text:='';
edit2.text:='';
end;
procedure Tcfrm_tf.BitBtn3Click(Sender: TObject);
var mes:string;
begin
mes:='是否取消退房操作,本次的结果将不保存!';
if application.MessageBox(pchar(mes),pchar('等待确认')
,+MB_ICONQUESTION+mb_okcancel+MB_DEFBUTTON2)=idok then
begin
edit1.Text:='';
edit2.text:='';
edit3.text:='';
edit4.Text:='';
GroupBox1.Enabled:=true;
GroupBox2.Enabled:=false;
end;
end;
procedure Tcfrm_tf.BitBtn1Click(Sender: TObject);
var
money,rentdate:real;//应收金额,出租天数
begin
rentdate:=trunc(datetimepicker2.Date)-trunc(datetimepicker1.Date);
if rentdate=0 then rentdate:=1;
money:=rentdate*strtofloat(edit2.text);
edit3.text:=floattostr(money);
end;
procedure Tcfrm_tf.FormCreate(Sender: TObject);
begin
StatusBar1.Panels[0].Text:='当前用户:'+username;
StatusBar1.Panels[1].Text:=datetostr(date());
Datetimepicker1.date:=Date();
Datetimepicker2.date:=Date();
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -