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

📄 mc_fwxzgl.pas

📁 物业管理 1.建立一个WYGL数据库
💻 PAS
字号:
unit MC_FWXZGL;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  DBTables, Db, Grids, DBGrids, DBCtrls, StdCtrls, Buttons, ExtCtrls,Variants;

type
  TFWXZGL = class(TForm)
    GroupBox1: TGroupBox;
    DBLookupComboBox1: TDBLookupComboBox;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    Query1: TQuery;
    Query1BDEDesigner: TStringField;
    Query1BDEDesigner2: TStringField;
    DataSource2: TDataSource;
    Table1: TTable;
    Table1BDEDesigner: TStringField;
    Table1BDEDesigner2: TStringField;
    Table1BDEDesigner7: TStringField;
    GroupBox3: TGroupBox;
    DBGrid3: TDBGrid;
    DataSource4: TDataSource;
    GroupBox4: TGroupBox;
    Table2: TTable;
    Table2BDEDesigner: TStringField;
    Table2BDEDesigner2: TStringField;
    Table2BDEDesigner3: TStringField;
    Table2BDEDesigner4: TStringField;
    Table2BDEDesigner5: TStringField;
    Table2BDEDesigner6: TStringField;
    Table2BDEDesigner7: TStringField;
    Table2BDEDesigner8: TStringField;
    Table2BDEDesigner9: TStringField;
    Table2BDEDesigner10: TStringField;
    Table2BDEDesigner11: TStringField;
    Table2BDEDesigner12: TStringField;
    Table2BDEDesigner13: TStringField;
    Table2BDEDesigner14: TStringField;
    Table2BDEDesigner15: TFloatField;
    Table2BDEDesigner16: TFloatField;
    Table2BDEDesigner17: TFloatField;
    Table2BDEDesigner18: TFloatField;
    Table2BDEDesigner19: TStringField;
    Label1: TLabel;
    ComboBox1: TComboBox;
    Label2: TLabel;
    Edit1: TEdit;
    BitBtn1: TBitBtn;
    GroupBox5: TGroupBox;
    DBGrid2: TDBGrid;
    Table3: TTable;
    DataSource3: TDataSource;
    Table3BDEDesigner: TStringField;
    Table3BDEDesigner2: TStringField;
    Table3BDEDesigner3: TStringField;
    Table3BDEDesigner4: TStringField;
    Table3BDEDesigner5: TStringField;
    Table3BDEDesigner6: TDateTimeField;
    Table3BDEDesigner7: TDateTimeField;
    Table3BDEDesigner8: TFloatField;
    Table3BDEDesigner9: TFloatField;
    Table3BDEDesigner10: TFloatField;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    Query2: TQuery;
    Bevel2: TBevel;
    BitBtn6: TBitBtn;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    Bevel3: TBevel;
    Label3: TLabel;
    Query3: TQuery;
    DataSource5: TDataSource;
    DBLookupComboBox2: TDBLookupComboBox;
    DBLookupComboBox3: TDBLookupComboBox;
    DBLookupComboBox4: TDBLookupComboBox;
    Label4: TLabel;
    Label5: TLabel;
    Query4: TQuery;
    DataSource6: TDataSource;
    DataSource7: TDataSource;
    Query5: TQuery;
    CheckBox1: TCheckBox;
    Table3BDEDesigner11: TFloatField;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure RadioButton3Click(Sender: TObject);
    procedure RadioButton2Click(Sender: TObject);
    procedure RadioButton1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FWXZGL: TFWXZGL;

implementation

uses MC_ZFDJ, MC_XZGL, MC_MainForm;

{$R *.DFM}

procedure TFWXZGL.FormClose(Sender: TObject; var Action: TCloseAction);
begin
     FWXZGL.Release;
     FWXZGL:=Nil;
end;

procedure TFWXZGL.FormShow(Sender: TObject);
begin
     ComboBox1.ItemIndex:=0;
     DBLookupComboBox2.KeyValue:=Query3.FieldByName('房屋朝向').AsString;
     DBLookupComboBox3.KeyValue:=Query4.FieldByName('房间结构').AsString;
     DBLookupComboBox4.KeyValue:=Query5.FieldByName('房间类别').AsString;
     if MainForm.Query1.Locate('使用选项','房租信息管理',[loCaseInsensitive]) then
        begin
             if MainForm.Query1.FieldByName('读写').asString='读' then
                begin
                     BitBtn2.Enabled:=False;
                     BitBtn3.Enabled:=False;
                     Bitbtn4.Enabled:=False;
                end;
        end;
end;

procedure TFWXZGL.BitBtn1Click(Sender: TObject);
begin
     if Table1.RecordCount<>0 then
     //if not Table2.Locate(ComboBox1.Items[ComboBox1.ItemIndex],Edit1.Text,[loPartialKey]) then
     if CheckBox1.Checked=True then
        begin
           if Not Table2.Locate(comboBox1.Items[ComboBox1.ItemIndex]+';朝向;房间结构;房间类别;'
            ,VarArrayof([Edit1.Text,DBLookupComboBox2.KeyValue,DBLookupComboBox3.KeyValue
            ,DBLookupComboBox4.KeyValue]),[loCaseInsensitive]) then
            ShowMessage('对不起,没有找到!');
        end
     else
     if not Table2.Locate(ComboBox1.Items[ComboBox1.ItemIndex],Edit1.Text,[loPartialKey]) then
        ShowMessage('对不起,没有找到!');
end;

procedure TFWXZGL.BitBtn5Click(Sender: TObject);
begin
     Close;
end;

procedure TFWXZGL.BitBtn2Click(Sender: TObject);
begin
     if Table2.RecordCount<>0 then
     if Table2.FieldByName('是否空闲').AsString='出租' then
        begin
             ShowMessage('此房已经出租.');
        end
     else
        begin
             if Not Assigned(ZFDJ) then
                begin
                     ZFDJ:=TZFDJ.Create(Self);
                     ZFDJ.Label2.Caption:=Table2.FieldByName('房间编号').AsString;
                     ZFDJ.ComboBox1.ItemIndex:=0;
                     ZFDJ.ShowModal;
                end;
        end;
end;

procedure TFWXZGL.BitBtn3Click(Sender: TObject);
begin
     if table2.RecordCount<>0 then
     if Table3.RecordCount<>0 then
     begin
     if Not Assigned(XZGL) then
        begin
             XZGL:=TXZGL.Create(Self);
             XZGL.Label2.Caption:=Table3.FieldByName('房间代号').AsString;
             XZGL.Label12.Caption:=Table3.FieldByName('姓名').AsString;
             XZGL.Label13.Caption:=Table3.FieldByName('性别').AsString;
             XZGL.Label14.Caption:=Table3.FieldByName('身份证号').AsString;
             XZGL.Label15.Caption:=Table3.FieldByName('联系方式').AsString;
             XZGL.DateTimePicker1.Date:=Table3.FieldByName('起租日期').AsDateTime;
             XZGL.DateTimePicker2.Date:=Table3.FieldByName('截止日期').AsDateTime;
             //XZGL.Edit4.Text:=Table3.FieldByName('应收租金').AsString;
             //XZGL.Edit5.Text:=Table3.FieldByName('实收租金').AsString;
             //XZGL.Edit6.Text:=Table3.FieldByName('本次余额').AsString;
             XZGL.Edit4.Text:='0';
             XZGL.Edit5.Text:='0';
             XZGL.Edit6.Text:='0';
             XZGL.Edit1.Text:=Table3.FieldByName('余款金额').AsString;

             XZGL.Edit1.Text:=Table3.FieldByName('余款金额').AsString;
             XZGL.ShowModal;
        end;
     end;
end;

procedure TFWXZGL.BitBtn4Click(Sender: TObject);
begin
     if Table3.RecordCount<>0 then
     if Table3.FieldByName('余款金额').AsFloat<0 then
        ShowMessage('此人欠房租费['+Table3.FieldbyName('余款金额').AsString+']元')
     else
     if MessageDLG('是否终止['+Table3.FieldByName('姓名').AsString+']的房屋租借合同!'
        ,mtCustom,[mbYes,mbNo],0)=mrYes then
        begin
             //-----------------------------------------------------------------
             Query2.Close;
             Query2.SQL.Clear;
             Query2.SQL.Add('Insert 房租费费用历史表(房间代号,姓名,性别,身份证号,联系方式,起租日期,截止日期,应收租金,实收租金,余款金额,本次余额)');
             Query2.SQL.Add('Values(:A,:B,:C,:D,:E,:F,:G,:H,:J,:I,:K)');
             Query2.ParamByName('A').AsString:=Table3.FieldByName('房间代号').AsString;
             Query2.ParamByName('B').AsString:=Table3.FieldByName('姓名').AsString;
             Query2.ParamByName('C').AsString:=Table3.FieldByName('性别').AsString;
             Query2.ParamByName('D').AsString:=Table3.FieldByName('身份证号').AsString;
             Query2.ParamByName('E').AsString:=Table3.FieldByName('联系方式').AsString;
             Query2.ParamByName('F').AsDateTime:=Table3.FieldByName('起租日期').AsDatetime;
             Query2.ParamByName('G').AsDateTime:=Table3.FieldByName('截止日期').AsDatetime;
             Query2.ParamByName('H').AsFloat:=Table3.FieldByName('应收租金').AsFloat;
             Query2.ParamByName('J').AsFloat:=Table3.FieldByName('实收租金').AsFloat;
             Query2.ParamByName('I').AsFloat:=Table3.FieldByName('余款金额').AsFloat;
             Query2.ParamByName('K').AsFloat:=Table3.FieldByName('本次余额').AsFloat;
             Query2.ExecSQL;
             //-----------------------------------------------------------------
             Table2.Edit;
             Table2.FieldByName('承租人姓名').AsSTring:='';
             Table2.FieldbyName('是否空闲').AsString:='空闲';
             Table2.Post;
             Table3.Delete;
             //-----------------------------------------------------------------
        end;
end;

procedure TFWXZGL.BitBtn6Click(Sender: TObject);
begin
if MessageDLG('是否结算并保存费用信息?',mtCustom,[mbYes,mbNo],0)=mrYes then
   begin
        Query2.Close;
        Query2.SQL.Clear;
        Query2.SQL.Add('Insert 房租费费用历史表(房间代号,姓名,性别,身份证号,联系方式,起租日期,截止日期,应收租金,实收租金,余款金额)');
        Query2.SQL.Add('Select 房间代号,姓名,性别,身份证号,联系方式,起租日期,截止日期,应收租金,实收租金,余款金额 From 房租费用表');
        Query2.ExecSQL;
        Query2.Close;
        Query2.SQL.Clear;
        Query2.SQL.Add('Update 房租费用表 Set 实收租金=0,起租日期=截止日期');
        Query2.ExecSQL;
   end;
end;

procedure TFWXZGL.RadioButton3Click(Sender: TObject);
begin
     Table2.Filtered:=False;
end;

procedure TFWXZGL.RadioButton2Click(Sender: TObject);
begin
     Table2.Filter:='是否空闲<>''空闲''';
     Table2.Filtered:=True;
end;

procedure TFWXZGL.RadioButton1Click(Sender: TObject);
begin
     Table2.Filter:='是否空闲=''空闲''';
     Table2.Filtered:=True;
end;

end.

⌨️ 快捷键说明

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