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

📄 realtyf51.pas

📁 物业管理系统系统特点 一、 实现集中式管理 系统将集团公司、各分公司、各物业管理处连接到一起
💻 PAS
字号:
unit RealtyF51;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, dbcgrids, Grids, DBGrids, DB, ADODB, StdCtrls, Buttons, ExtCtrls,
  StrUtils, ExtDlgs, ComCtrls, math, ImgList, Menus, ToolWin;

type
    Tf_RealtyF51 = class(TForm)
    GroupBox1: TGroupBox;
    ListView1: TListView;
    Label3: TLabel;
    edit3: TEdit;
    Label4: TLabel;
    edit4: TEdit;
    edit5: TComboBox;
    Label5: TLabel;
    Button1: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button2: TButton;
    Label8: TLabel;
    Button8: TButton;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ListView1CustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);


    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);


  private
    { Private declarations }
  public
    { Public declarations }
     bMod:bool;
     sTable:string;
     cols:integer;
     bnew:bool;
     Bok:bool;
     sNum:string;
     sName:string;
  end;


var
  f_RealtyF51: Tf_RealtyF51;
implementation
uses data, main,RealtyF51A,RealtyF51B,realtyPrint1;
{$R *.dfm}






//公共函数**************************************************

//Tab  二
procedure Tf_RealtyF51.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
    if key=13 then
        Begin
            key:=0;
            perform(WM_NEXTDLGCTL,0,0);
        end
    else if key=VK_ESCAPE then close;
end;

//高亮  三
procedure Tf_RealtyF51.ListView1CustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
    if   Item.Selected = true then
    begin
          Sender.Canvas.Brush.Color   :=   clMenuHighlight;
          (Sender   as   TListView).Canvas.Font.Color   :=  clWhite;
    end;
end;






procedure Tf_RealtyF51.FormCreate(Sender: TObject);
begin
    edit5.items.add('已审核');
    edit5.items.add('未审核');
end;

procedure Tf_RealtyF51.Button1Click(Sender: TObject);
var
    query,query1,query2:TADOQuery;
    s,s1,s2,s3:string;
begin
    listview1.Items.Clear;

    query:=TADOQuery.Create(nil);
    query.Connection:=datamoduleado.ADOConnection1;
    query1:=TADOQuery.Create(nil);
    query1.Connection:=datamoduleado.ADOConnection1;
    query2:=TADOQuery.Create(nil);
    query2.Connection:=datamoduleado.ADOConnection1;

    if edit5.Text='' then s1:='%';
    if edit5.Text='已审核' then s1:='Y';
    if edit5.Text='未审核' then s1:='N';

    s:='select * from 装修申请 where 单号 like ''%'+edit3.Text;
    s:=s+'%'' and 客户 like ''%'+edit4.Text;
    s:=s+'%'' and 审核 like ''%'+s1+'%''';

    query.SQL.Add(s);
    query.Open;
    while not query.Eof do
    begin
        with listview1.Items.Add do
        begin
            s3:=mainform.getName('房间',query.fieldbyname('房间').Value);

            caption:=query.fieldbyname('单号').Value;
            subitems.Add(s3);
            subitems.Add(query.fieldbyname('客户').Value);

            query2.SQL.Clear;
            query2.SQL.Add('select * from 客户资料 where 客户名称='''+query.fieldbyname('客户').Value+'''');
            query2.Open;
            if query2.RecordCount>0 then
            begin
                subitems.Add(query2.fieldbyname('电话').Value);
            end
            else
            begin
                subitems.Add('');
            end;

            subitems.Add(query.fieldbyname('拟结束时间').Value);
            query1.SQL.clear;
            query1.SQL.Add('select * from 装修验收 where 申请单号 ='''+query.fieldbyname('单号').Value+'''');
            query1.Open;
            if query1.RecordCount>0 then        subitems.Add(query1.fieldbyname('验收日期').Value)
            else  subitems.Add('');
            
            subitems.Add(query.fieldbyname('施工负责人').Value);
            subitems.Add(query.fieldbyname('联系电话').Value);
            subitems.Add(query.fieldbyname('装修项目').Value);
            subitems.Add(query.fieldbyname('装修公司').Value);
            subitems.Add(query.fieldbyname('审核').Value);
            subitems.Add(query.fieldbyname('审核时间').Value);
            subitems.Add(query.fieldbyname('审核人').Value);
            subitems.Add(query.fieldbyname('审核意见').Value);
            subitems.Add(query.fieldbyname('操作员').Value);

            query1.SQL.Clear;
            query1.SQL.Add('select * from 房间 where 编号 ='''+query.fieldbyname('房间').Value+'''') ;
            query1.Open;
            if query1.RecordCount>0 then
            begin
                query2.SQL.Clear;
                query2.SQL.Add('select * from 管理区 where 编号='''+query1.fieldbyname('管理区').Value+'''');
                query2.Open;
                if query2.RecordCount>0 then s1:=query2.fieldbyname('名称').Value;

                query2.SQL.Clear;
                query2.SQL.Add('select * from 楼宇 where 编号='''+query1.fieldbyname('楼宇').Value+'''');
                query2.Open;
                if query2.RecordCount>0 then s2:=query2.fieldbyname('名称').Value;

                subitems.Add(s2);
                subitems.Add(s1);
            end;
        end;
        query.Next;
    end;

    query2.Close;
    query2.Free;
    query1.Close;
    query1.Free;
    query.Close;
    query.Free;


end;

procedure Tf_RealtyF51.ToolButton4Click(Sender: TObject);
begin
    if listview1.selcount=0 then exit;

    if listview1.Selected.SubItems[9]='N' then
    begin
        showmessage('请先审核,再进行验收!');
        exit;
    end;
    
    bOk:=true;
    sNum:=listview1.selected.caption;
    close;
end;

procedure Tf_RealtyF51.Button3Click(Sender: TObject);
begin
    bNew:=true;
    f_RealtyF51A:=Tf_RealtyF51A.create(self);
    f_RealtyF51A.ShowModal;
end;

procedure Tf_RealtyF51.Button5Click(Sender: TObject);
begin
    if listview1.SelCount=0 then exit;
    bNew:=false;
    f_RealtyF51A:=Tf_RealtyF51A.create(self);
    f_RealtyF51A.ShowModal;
end;

procedure Tf_RealtyF51.Button4Click(Sender: TObject);
var
    Query:TADOQuery;
begin
    if listview1.SelCount=0 then exit;

    Query:=TADOQuery.Create(nil);
    Query.Connection:=DataModuleADO.ADOConnection1;

    query.SQL.add('select * from 装修申请 where 单号='''+listview1.Selected.Caption+''' and 审核='''+'Y'+'''');
    query.Open;
    if query.RecordCount>0 then
    begin
        showmessage('已经审核,不能删除');
        query.Close;
        query.Free;
        exit;
    end;

    query.SQL.Clear;
    query.SQL.add('select * from 装修验收 where 申请单号='''+listview1.Selected.Caption+'''');
    query.Open;
    if query.RecordCount>0 then
    begin
        showmessage('已经进行了验收,不能删除');
        query.Close;
        query.Free;
        exit;
    end;

    if(Application.MessageBox(PChar('确认要删除所选记录吗?') ,'提示',Mb_OKCANCEL+Mb_IconInformation)=2) then exit;

    DataModuleADO.ADOConnection1.BeginTrans;
    query.sql.clear;
    Query.SQL.Text:='delete  from 装修申请 where 单号='''+listview1.Selected.Caption+'''';
    query.ExecSQL;
    DataModuleADO.ADOConnection1.CommitTrans;

    DataModuleADO.ADOConnection1.BeginTrans;
    query.sql.clear;
    Query.SQL.Text:='delete  from 装修收费 where 单号='''+listview1.Selected.Caption+'''';
    query.ExecSQL;
    DataModuleADO.ADOConnection1.CommitTrans;

    query.Close;
    query.Free;

    listview1.selected.delete;

    if listview1.Items.Count>0 then listview1.Items.Item[0].Selected:=true;

end;

procedure Tf_RealtyF51.Button2Click(Sender: TObject);
VAR
    query:TADOQuery;
    s:string;
begin
    if listview1.SelCount=0 then exit;

    query:=TADOQuery.Create(nil);
    query.Connection:=datamoduleado.ADOConnection1;

    if(Application.MessageBox(PChar('确认要审核所选记录吗?') ,'提示',Mb_OKCANCEL+Mb_IconInformation)=2) then exit;

    f_RealtyF51B:=Tf_RealtyF51B.create(self);
    f_RealtyF51B.ShowModal;

    if f_RealtyF51B.bOK=true then
    begin
        query.SQL.Clear;
        Query.SQL.Add('select * from 装修申请 where 单号='''+listview1.Selected.Caption+''' and 审核='''+'N'+'''');
        Query.Open ;
        if Query.RecordCount>0 then
        begin
            s:='update 装修申请 set 审核='''+'Y'+''' where 单号='''+listview1.Selected.Caption+'''';
            query.sql.Clear ;
            DataModuleADO.ADOConnection1.BeginTrans;
            Query.SQL.Text:=s;
            query.ExecSQL;
            DataModuleADO.ADOConnection1.CommitTrans;
        end;

        s:='update 装修申请 set 审核时间='''+datetostr(f_RealtyF51B.edit2.date);
        s:=s+''', 审核人='''+f_RealtyF51B.edit1.Text;
        s:=s+''', 审核意见='''+f_RealtyF51B.edit3.text;
        s:=s+''' where 单号='''+listview1.Selected.Caption+'''';

        query.sql.Clear ;
        DataModuleADO.ADOConnection1.BeginTrans;
        Query.SQL.Text:=s;
        query.ExecSQL;
        DataModuleADO.ADOConnection1.CommitTrans;

        showmessage('审核操作成功!');

        query.SQL.Clear;
        query.SQL.Add('select * from 装修申请 where 单号='''+listview1.Selected.Caption+'''');
        query.Open;
        if query.RecordCount>0 then
        begin
            with listview1.Selected do
            begin
                subitems[9]:=query.fieldbyname('审核').Value;
                subitems[10]:=query.fieldbyname('审核时间').Value;
                subitems[11]:=query.fieldbyname('审核人').Value;
                subitems[12]:=query.fieldbyname('审核意见').Value;
            end;
        end;
    end;
    query.Close;
    query.free;


end;

procedure Tf_RealtyF51.Button7Click(Sender: TObject);
begin
    bOK:=false;
    close;
end;

procedure Tf_RealtyF51.Button8Click(Sender: TObject);
begin
    if listview1.SelCount=0 then exit;
    bOk:=true;
    sNum:=listview1.Selected.Caption;
    sName:=listview1.Selected.Subitems[0];
    close;
end;

procedure Tf_RealtyF51.Button6Click(Sender: TObject);
var
    i:integer;
    Query:TADOQuery;
    s:string;
begin
    Query:=TADOQuery.Create(nil);
    Query.Connection:=DataModuleADO.ADOConnection1;

    DataModuleADO.ADOConnection1.BeginTrans;
    Query.SQL.Text:='delete from temp';
    query.ExecSQL;
    DataModuleADO.ADOConnection1.CommitTrans;

    for i:=0 to listview1.Items.Count-1 do
    begin
        s := 'insert into temp(列1,列2,列3,列4,列5,列6,列7,列8,列9,列10,';
        s :=s+'列11,列12,列13,列14,列15,列16,列17)';
        s :=s+' values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,';
        s :=s+':s11,:s12,:s13,:s14,:s15,:s16,:s17)';

        query.sql.Clear ;
        query.sql.add(s);
        query.Parameters.ParamByName('s1').Value:=listview1.Items.Item[i].Caption;
        query.Parameters.ParamByName('s2').Value:=listview1.Items.Item[i].SubItems[0];
        query.Parameters.ParamByName('s3').Value:=listview1.Items.Item[i].SubItems[1];
        query.Parameters.ParamByName('s4').Value:=listview1.Items.Item[i].SubItems[2];
        query.Parameters.ParamByName('s5').Value:=listview1.Items.Item[i].SubItems[3];
        query.Parameters.ParamByName('s6').Value:=listview1.Items.Item[i].SubItems[4];
        query.Parameters.ParamByName('s7').Value:=listview1.Items.Item[i].SubItems[5];
        query.Parameters.ParamByName('s8').Value:=listview1.Items.Item[i].SubItems[6];
        query.Parameters.ParamByName('s9').Value:=listview1.Items.Item[i].SubItems[7];
        query.Parameters.ParamByName('s10').Value:=listview1.Items.Item[i].SubItems[8];
        query.Parameters.ParamByName('s11').Value:=listview1.Items.Item[i].SubItems[9];
        query.Parameters.ParamByName('s12').Value:=listview1.Items.Item[i].SubItems[10];
        query.Parameters.ParamByName('s13').Value:=listview1.Items.Item[i].SubItems[11];
        query.Parameters.ParamByName('s14').Value:=listview1.Items.Item[i].SubItems[12];
        query.Parameters.ParamByName('s15').Value:=listview1.Items.Item[i].SubItems[13];
        query.Parameters.ParamByName('s16').Value:=listview1.Items.Item[i].SubItems[14];
        query.Parameters.ParamByName('s17').Value:=listview1.Items.Item[i].SubItems[15];



        DataModuleADO.ADOConnection1.BeginTrans;
        query.execsql;
        DataModuleADO.ADOConnection1.CommitTrans;
    end;

    query.Close;
    query.Free;

    sFilep:='RealtyF51.fr3';

    sTitlep:=Caption;
    sPrintc:='select * from temp';
    f_realtyPrint1:=Tf_realtyPrint1.Create(self);
    f_realtyPrint1.showmodal;
end;

procedure Tf_RealtyF51.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
    Action := caFree;
end;

end.

⌨️ 快捷键说明

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