📄 unit13.pas
字号:
unit Unit13;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, DateUtils;
type
TFormCZXXJS = class(TForm)
Panel1: TPanel;
GroupBox1: TGroupBox;
Panel2: TPanel;
Panel3: TPanel;
BitBtn2: TBitBtn;
BitBtn1: TBitBtn;
Label7: TLabel;
Edit7: TEdit;
BitBtn3: TBitBtn;
GroupBox2: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Edit4: TEdit;
Label4: TLabel;
Label5: TLabel;
Label2: TLabel;
Edit2: TEdit;
Edit5: TEdit;
Label6: TLabel;
Label3: TLabel;
Edit3: TEdit;
Edit6: TEdit;
Label9: TLabel;
Label10: TLabel;
Label12: TLabel;
Label8: TLabel;
Edit8: TEdit;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FormCZXXJS: TFormCZXXJS;
dj,tj :integer;
implementation
uses unit3;
{$R *.dfm}
procedure TFormCZXXJS.BitBtn2Click(Sender: TObject);
begin
formczxxjs.Close;
end;
procedure TFormCZXXJS.BitBtn1Click(Sender: TObject);
begin
dj:=10;
TJ:=20;
edit8.Clear;
label10.Caption:='';
label12.Caption:='';
if edit1.Text = '' then
application.MessageBox('房屋编号不能为空!','提示',64)
else if edit2.Text = '' then
application.MessageBox('住户编号不能为空!','提示',64)
else if edit3.Text = '' then
application.MessageBox('房屋类别不能为空!','提示',64)
else if edit4.Text = '' then
application.MessageBox('出租数量不能为空!','提示',64)
else if edit5.Text = '' then
application.MessageBox('出租时间不能为空!','提示',64)
else if edit6.Text = '' then
application.MessageBox('租房方式不能为空!','提示',64)
else
begin
try
if (trim(edit3.Text) = '单间') and (trim(edit6.Text) = '月租') then
begin
edit8.Text:=inttostr(strtoint(edit4.Text)*dj*(DaysBetween(now,strtodatetime(trim(edit5.Text))) div 30));
if (DaysBetween(now,strtodatetime(trim(edit5.Text))) mod 30) >= 16 then
begin
edit8.Text:=inttostr(strtoint(edit8.Text)+strtoint(edit4.Text)*dj);
label10.Caption:=inttostr(DaysBetween(now,strtodatetime(trim(edit5.Text))) div 30)+' 月';
label12.Caption:=inttostr(DaysBetween(now,strtodatetime(trim(edit5.Text))) mod 30)+' 天';
label10.Visible:=true;
label12.Visible:=true;
end
end
else if (trim(edit3.Text) = '单间') and (trim(edit6.Text) = '年租') then
begin
edit8.Text:=inttostr(strtoint(edit4.Text)*dj*(MonthsBetween(now,strtodatetime(trim(edit5.Text))) div 12));
if (DaysBetween(now,strtodatetime(trim(edit5.Text))) mod 12) >= 7 then
begin
edit8.Text:=inttostr(strtoint(edit8.Text)+strtoint(edit4.Text)*dj);
label10.Caption:=inttostr(MonthsBetween(now,strtodatetime(trim(edit5.Text))) div 12)+' 年';
label12.Caption:=inttostr(MonthsBetween(now,strtodatetime(trim(edit5.Text))) mod 12)+' 月';
label10.Visible:=true;
label12.Visible:=true;
end
end
else if (trim(edit3.Text) = '套间') and (trim(edit6.Text) = '月租') then
begin
edit8.Text:=inttostr(strtoint(edit4.Text)*tj*(DaysBetween(now,strtodatetime(trim(edit5.Text))) div 30));
if (DaysBetween(now,strtodatetime(trim(edit5.Text))) mod 30) >= 16 then
begin
edit8.Text:=inttostr(strtoint(edit8.Text)+strtoint(edit4.Text)*dj);
label10.Caption:=inttostr(DaysBetween(now,strtodatetime(trim(edit5.Text))) div 30)+' 月';
label12.Caption:=inttostr(DaysBetween(now,strtodatetime(trim(edit5.Text))) mod 30)+' 天';
label10.Visible:=true;
label12.Visible:=true;
end
end
else
begin
edit8.Text:=inttostr(strtoint(edit4.Text)*dj*(MonthsBetween(now,strtodatetime(trim(edit5.Text))) div 12));
if (DaysBetween(now,strtodatetime(trim(edit5.Text))) mod 12) >= 7 then
begin
edit8.Text:=inttostr(strtoint(edit8.Text)+strtoint(edit4.Text)*dj);
label10.Caption:=inttostr(MonthsBetween(now,strtodatetime(trim(edit5.Text))) div 12)+' 年';
label12.Caption:=inttostr(MonthsBetween(now,strtodatetime(trim(edit5.Text))) mod 12)+' 月';
label10.Visible:=true;
label12.Visible:=true;
end
end
//application.MessageBox('结算租金成功!','提示',64);
except
application.MessageBox('结算失败!','提示',64);
FormCZXXJS.Close;
end;
end;
//结算后被住户所退的房屋应在现有房屋中增加一条并且在住户信息中将其删除
try
database.ADO_XYFW.Connection:=database.ADOConnection1;
database.ADO_XYFW.Close;
database.ADO_XYFW.SQL.Add('insert into 现有房屋表 values(:a,:b,:c,:d)');
database.ADO_XYFW.Parameters.ParamByName('a').Value:=trim(edit1.Text);
database.ADO_XYFW.Parameters.ParamByName('b').Value:=trim(edit3.Text);
database.ADO_XYFW.Parameters.ParamByName('c').Value:=strtoint('1');
database.ADO_XYFW.Parameters.ParamByName('d').Value:='空';
database.ADO_XYFW.ExecSQL;
except
application.MessageBox('更新数据库时出错!','提示',64);
FormCZXXJS.Close;
end;
try
database.ADO_ZHDJZ.Connection:=database.ADOConnection1;
database.ADO_ZHDJZ.Close;
database.ADO_ZHDJZ.SQL.Clear;
database.ADO_ZHDJZ.SQL.Add('delete 住户登记表 where 住户编号=:a');
database.ADO_ZHDJZ.Parameters.ParamByName('a').Value:=trim(edit2.Text);
database.ADO_ZHDJZ.ExecSQL;
except
application.MessageBox('更新数据库时出错!','提示',64);
FormCZXXJS.Close;
end;
end;
procedure TFormCZXXJS.BitBtn3Click(Sender: TObject);
begin
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit8.Clear;
label10.Visible:=false;
label12.Visible:=false;
if edit7.Text = '' then
application.MessageBox('住户编号不能为空!','提示',64)
else
begin
try
database.ADO_CZXXJS.Close;
database.ADO_CZXXJs.SQL.Clear;
database.ADO_CZXXJs.SQL.Add('select * from 出租信息表 where');
database.ADO_CZXXJs.SQL.Add('住户编号');
database.ADO_CZXXJs.SQL.Add('=');
database.ADO_CZXXJs.SQL.Add(':a');
database.ADO_CZXXJS.Parameters.ParamByName('a').Value:=trim(edit7.Text);
database.ADO_CZXXJS.Open;
except
MessageDlg('系统出错!',mtWarning,[MbOK],0);
FormCZXXJS.Close;
end;
if database.ADO_CZXXJS.RecordCount = 0 then
application.MessageBox('数据库中没有相关记录!','提示',64)
else
begin
edit1.Text:=database.ADO_CZXXJs.Fields[0].Value;
edit2.Text:=database.ADO_CZXXJs.Fields[1].Value;
edit3.Text:=database.ADO_CZXXJS.Fields[2].Value;
edit4.Text:=inttostr(database.ADO_CZXXJS.Fields[3].Value);
edit5.Text:=datetimetostr(database.ADO_CZXXJs.Fields[4].Value);
edit6.Text:=database.ADO_CZXXJS.Fields[5].Value;
end;
end;
end;
procedure TFormCZXXJS.FormShow(Sender: TObject);
begin
database.ADO_CZXXJs.Connection:=database.ADOConnection1;
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit7.Clear;
edit8.Clear;
edit7.SetFocus;
label10.Visible:=false;
label12.Visible:=false;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -