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

📄 uz_cpzz.pas

📁 一个针对酒店大堂管理的delphi应用管理软件
💻 PAS
字号:
unit uz_cpzz;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Menus, ComCtrls, ExtCtrls, ToolWin, Grids, DBGrids,u_main, StdCtrls,
  ImgList, Tabs, DBCtrls, Db, DBTables, dxExEdtr, dxDBTLCl, dxGrClms, dxTL,
  dxDBCtrl, dxDBGrid, dxCntner, se_controls, KsSkinForms;

type
  Tz_cpzz = class(TForm)
    CoolBar1: TCoolBar;
    ToolBar1: TToolBar;
    zl: TToolButton;
    gl: TToolButton;
    sl: TToolButton;
    dy: TToolButton;
    ToolButton8: TToolButton;
    MainMenu1: TMainMenu;
    MenuItem11: TMenuItem;
    m_zl: TMenuItem;
    m_gl: TMenuItem;
    m_sl: TMenuItem;
    N1: TMenuItem;
    MenuItem18: TMenuItem;
    P1: TMenuItem;
    MenuItem19: TMenuItem;
    MenuItem20: TMenuItem;
    MenuItem73: TMenuItem;
    MenuItem74: TMenuItem;
    MenuItem75: TMenuItem;
    MenuItem76: TMenuItem;
    sb: TStatusBar;
    ImageList2: TImageList;
    ImageList1: TImageList;
    yl: TToolButton;
    fg1: TToolButton;
    ToolButton5: TToolButton;
    TabSet1: TTabSet;
    zc: TToolButton;
    gc: TToolButton;
    sc: TToolButton;
    ToolButton12: TToolButton;
    m_zc: TMenuItem;
    N3: TMenuItem;
    m_gc: TMenuItem;
    m_sc: TMenuItem;
    TreeView1: TTreeView;
    PrinterSetup: TPrinterSetupDialog;
    d_cl: TDataSource;
    d_cy: TDataSource;
    xflb: TTable;
    PopupMenu1: TPopupMenu;
    yl1: TMenuItem;
    yl2: TMenuItem;
    PopupMenu2: TPopupMenu;
    dy1: TMenuItem;
    dy2: TMenuItem;
    N31: TMenuItem;
    N2: TMenuItem;
    dxDBGrid1: TdxDBGrid;
    dxDBGrid1CH: TdxDBGridMaskColumn;
    dxDBGrid1Clh: TdxDBGridMaskColumn;
    dxDBGrid1Mc: TdxDBGridMaskColumn;
    dxDBGrid1Zjm: TdxDBGridMaskColumn;
    dxDBGrid1Gg: TdxDBGridMaskColumn;
    dxDBGrid1Dj: TdxDBGridMaskColumn;
    dxDBGrid1Bz: TdxDBGridMaskColumn;
    dxDBGrid1Dzl: TdxDBGridMaskColumn;
    dxDBGrid1Lbh: TdxDBGridMaskColumn;
    dxDBGrid1clm: TdxDBGridLookupColumn;
    dxDBGrid1xflb: TdxDBGridLookupColumn;
    cy: TQuery;
    cyLbh: TStringField;
    cyCH: TStringField;
    cyClh: TStringField;
    cyZjm: TStringField;
    cyMc: TStringField;
    cyGg: TStringField;
    cyDj: TFloatField;
    cyBz: TStringField;
    cyDzl: TFloatField;
    cyCb: TFloatField;
    cyLl: TFloatField;
    cyclm: TStringField;
    cyxflb: TStringField;
    cl: TQuery;
    SeSkinForm1: TSeSkinForm;
    procedure glClick(Sender: TObject);
    procedure slClick(Sender: TObject);
    procedure zlClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
    procedure ToolButton8Click(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure TabSet1Change(Sender: TObject; NewTab: Integer;
      var AllowChange: Boolean);
    procedure zcClick(Sender: TObject);
    procedure gcClick(Sender: TObject);
    procedure scClick(Sender: TObject);
    procedure DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
      Field: TField; State: TGridDrawState);
    procedure MenuItem18Click(Sender: TObject);
    procedure MenuItem76Click(Sender: TObject);
    procedure bzClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure yl1Click(Sender: TObject);
    procedure dy1Click(Sender: TObject);
    procedure dy2Click(Sender: TObject);
    procedure yl2Click(Sender: TObject);
    procedure MenuItem74Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure dxDBGrid1DblClick(Sender: TObject);
    procedure dxDBGrid1CustomDrawCell(Sender: TObject; ACanvas: TCanvas;
      ARect: TRect; ANode: TdxTreeListNode; AColumn: TdxTreeListColumn;
      ASelected, AFocused, ANewItemRow: Boolean; var AText: String;
      var AColor: TColor; AFont: TFont; var AAlignment: TAlignment;
      var ADone: Boolean);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure sb_sz;
    procedure tree_csh;
  end;

var
  z_cpzz: Tz_cpzz;
  s_mess,s_gg,s_dj:string;
  lbh:string;
implementation

uses uz_cpzz_cl, uz_cpzz_cy, uabout, ug_wait, uzp_cp;

{$R *.DFM}
procedure Tz_cpzz.sb_sz;
begin
 sb.Panels[6].text:=inttostr(cl.RecordCount);
 sb.Panels[8].text:=inttostr(main.h_count('select count(ch) as hj_all from cy'));
 s_sql:='select count(clh) as hj_all from cl where lbh='+quotedstr(lbh);
 sb.Panels[2].text:=inttostr(main.h_count(s_sql));
 sb.Panels[4].text:=inttostr(cy.RecordCount);
 if cy.RecordCount=0 then
   begin
     sc.Enabled:=false;
     gc.Enabled:=false;
     m_sc.Enabled:=false;
     m_gc.Enabled:=false;
   end
  else
   begin
     gc.Enabled:=true;
     sc.Enabled:=true;
     m_gc.Enabled:=true;
     m_sc.Enabled:=true;
   end;  
end;
procedure Tz_cpzz.tree_csh;
begin
with TreeView1,cl do
  begin
   items.clear;
   items.AddChild(getnodeat(0,0),'菜谱');
   first;
   while not eof do
     begin
      if fieldbyname('lbh').Value=lbh then
       items.AddChild(getnodeat(1,1),'['+fieldbyname('clh').asstring+']'+fieldbyname('clm').asstring);
      next;
     end;
   fullexpand;
   cy.filter:='lbh='+lbh;
   TreeView1.Refresh;
  end;
end;
procedure Tz_cpzz.glClick(Sender: TObject);
begin
 if TreeView1.Selected=Nil then exit;
 if treeview1.selected.text='菜谱' then exit;
 y_n:=0;
        cl.Close;
        cl.SQL.clear;
        cl.sql.Add('select * from cl where clh='+quotedstr(copy(Treeview1.selected.text,2,2)));
        cl.open;
 if cl.RecordCount=0 then
   begin
     messagebox(handle,'菜类查询操作有误!','系统提示信息',MB_OK+MB_ICONWARNING);
     exit;
   end;
 z_cpzz_cl.showmodal
end;
procedure Tz_cpzz.slClick(Sender: TObject);
begin
 if  TreeView1.Selected=Nil then exit;
 if (length(treeview1.selected.text)=0) or  (treeview1.selected.text='菜谱') then exit;
 if cy.recordcount<>0 then
  begin
   messagebox(handle,'该菜类还有菜肴,不能删除!','系统提示信息',MB_OK+MB_ICONWARNING);
   exit;
  end;
 s_mess:='您真的要删除 '+Treeview1.selected.text+' 菜类吗?';
 if messagebox(handle,pchar(s_mess),'系统提示信息',MB_OKCANCEL+MB_ICONQUESTION)=IDcancel then exit;
        cl.Close;
        cl.SQL.clear;
        cl.sql.Add('select * from cl where clh='+quotedstr(copy(Treeview1.selected.text,2,2)));
        cl.open;
 if cl.RecordCount=0 then
   begin
     messagebox(handle,'菜类查询操作有误,请检查是否有此菜类.','系统提示信息',MB_OK+MB_ICONWARNING);
     exit;
   end;
 TreeView1.Items.Delete(TreeView1.Selected);
 cl.delete;
end;
procedure Tz_cpzz.zlClick(Sender: TObject);
begin
 y_n:=1;
 z_cpzz_cl.showmodal;
end;
procedure Tz_cpzz.FormShow(Sender: TObject);
begin
 if not cl.Active then cl.Active:=true;
 if not xflb.Active then xflb.Active:=true;
 if not cy.Active then cy.Active:=true;
 if z_cpzz_cl=NIl then z_cpzz_cl:=Tz_cpzz_cl.Create(Application);
 if z_cpzz_cy=NIl then z_cpzz_cy:=Tz_cpzz_cy.Create(Application);
 if zp_cp=NIL then zp_cp:=Tzp_cp.create(self);
 s_dj:='0.00';
 lbh:=inttostr(z_cpzz.TabSet1.TabIndex+1); //放入消费类别号
 tree_csh;
// clm.caption:='菜谱';
 sb_sz;
 g_wait.close;
end;
procedure Tz_cpzz.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
 with TreeView1.Selected,cy do
  begin
   if text='菜谱' then
      begin
        gl.Enabled:=false;
        sl.Enabled:=false;
        zc.Enabled:=false;
        m_gl.Enabled:=false;
        m_sl.Enabled:=false;
        m_zc.Enabled:=false;
        cy.Close;
        cy.SQL.clear;
        cy.sql.Add('select * from cy where lbh='+quotedstr(lbh));
        cy.open;
      end
    else
      begin
        gl.Enabled:=true;
        sl.Enabled:=true;
        zc.Enabled:=true;
        m_gl.Enabled:=true;
        m_sl.Enabled:=true;
        m_zc.Enabled:=true;
        cy.Close;
        cy.SQL.clear;
        cy.sql.Add('select * from cy where lbh='+quotedstr(lbh)+' and clh='+quotedstr(copy(TreeView1.Selected.text,2,2)));
        cy.open;
      end;
  end;
 //clm.caption:=TreeView1.Selected.text;
 sb_sz;
end;
procedure Tz_cpzz.ToolButton8Click(Sender: TObject);
begin
 close;
end;
procedure Tz_cpzz.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   case key of
     76:TabSet1.tabindex:=0;
     82:TabSet1.tabindex:=1;
     77:TabSet1.tabindex:=2;
     74:TabSet1.tabindex:=3;
     79:TabSet1.tabindex:=4;
     end;
   case key of
    76,82,77,74,79:
     begin
      lbh:=inttostr(TabSet1.tabindex+1);
      with TreeView1 do
       begin
        items.clear;
        items.AddChild(getnodeat(0,0),'菜谱');
        cl.first;
        while not cl.eof do
          begin
            if cl.fieldbyname('lbh').Value=lbh then
              items.AddChild(getnodeat(1,1),'['+cl.fieldbyname('clh').asstring+']'+cl.fieldbyname('clm').asstring);
            cl.next;
          end;
         fullexpand;
       end;
      cy.filter:='lbh='+lbh;
     end;
     end;
end;
procedure Tz_cpzz.TabSet1Change(Sender: TObject; NewTab: Integer;
  var AllowChange: Boolean);
begin
 lbh:=inttostr(newtab+1);
 tree_csh;
end;

procedure Tz_cpzz.zcClick(Sender: TObject);
begin
 y_n:=1;
 if  TreeView1.Selected=Nil then
    begin
      messagebox(handle,'请选择菜类!','系统提示信息',MB_OK+MB_ICONWARNING);
      exit;
    end;
 if (length(treeview1.selected.text)=0) or  (treeview1.selected.text='菜谱') then
    begin
      messagebox(handle,'请选择菜类!','系统提示信息',MB_OK+MB_ICONWARNING);
      exit;
    end;
 z_cpzz_cy.showmodal;
 sb_sz;
end;

procedure Tz_cpzz.gcClick(Sender: TObject);
begin
 y_n:=0;
 z_cpzz_cy.showmodal;
 sb_sz;
end;

procedure Tz_cpzz.scClick(Sender: TObject);
begin
 if cy.recordcount=0 then
   begin
     messagebox(handle,'您没有选择到可被删除的菜肴!','系统提示信息',MB_OK+MB_ICONWARNING);
     exit;
   end;
  s_mess:='您真的要删除 ['+cy.fieldbyname('ch').AsString+']号'+cy.fieldbyname('mc').AsString+' 菜肴吗 ?';
 if messagebox(handle,pchar(s_mess),'系统提示信息',MB_OKCANCEL+MB_ICONQUESTION)=IDOK then     cy.delete;
 sb_sz;
end;

procedure Tz_cpzz.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
  Field: TField; State: TGridDrawState);
begin
 if cy.RecordCount=0 then
   begin
     sc.Enabled:=false;
     gc.Enabled:=false;
     m_sc.Enabled:=false;
     m_gc.Enabled:=false;
   end
  else
   begin
     gc.Enabled:=true;
     sc.Enabled:=true;
     m_gc.Enabled:=true;
     m_sc.Enabled:=true;
   end;
end;

procedure Tz_cpzz.MenuItem18Click(Sender: TObject);
begin
  PrinterSetup.Execute;
end;

procedure Tz_cpzz.MenuItem76Click(Sender: TObject);
begin
 if about=NIL then about:=Tabout.Create(self);
 about.showmodal;
end;

procedure Tz_cpzz.bzClick(Sender: TObject);
begin
  Application.HelpFile:='\hbjd\cyzy\help\hbcy.hlp';
  Application.HelpJump('tascpzz');
end;

procedure Tz_cpzz.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 Release;
 z_cpzz:=nil;
 z_cpzz_cl.Release;
 z_cpzz_cl:=nil;
 z_cpzz_cy.Release;
 z_cpzz_cy:=nil;
 zp_cp.Release;
 zp_cp:=NIL;
end;

procedure Tz_cpzz.yl1Click(Sender: TObject);
var
 s_filter:string;
begin
 s_filter:=cy.Filter;
 cy.filter:='';
 zp_cp.QuickRep1.preview;
 cy.Filter:=s_filter;
end;

procedure Tz_cpzz.dy1Click(Sender: TObject);
var
 s_filter:string;
begin
 s_filter:=cy.Filter;
 cy.filter:='';
 zp_cp.QuickRep1.print;
 cy.Filter:=s_filter;
end;

procedure Tz_cpzz.dy2Click(Sender: TObject);
begin
 zp_cp.QuickRep1.print;
end;

procedure Tz_cpzz.yl2Click(Sender: TObject);
begin
 zp_cp.QuickRep1.preview;
end;

procedure Tz_cpzz.MenuItem74Click(Sender: TObject);
begin
  Application.HelpFile:='\hbjd\cyzy\help\hbcy.hlp';
  Application.HelpCommand(Help_Finder,0);
end;

procedure Tz_cpzz.N2Click(Sender: TObject);
begin
  Application.HelpFile:='\hbjd\cyzy\help\hbcy.hlp';
  Application.HelpCommand(Help_PartialKey,0);
end;

procedure Tz_cpzz.dxDBGrid1DblClick(Sender: TObject);
begin
 y_n:=0;
 z_cpzz_cy.showmodal;
 sb_sz;
end;

procedure Tz_cpzz.dxDBGrid1CustomDrawCell(Sender: TObject;
  ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode;
  AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean;
  var AText: String; var AColor: TColor; AFont: TFont;
  var AAlignment: TAlignment; var ADone: Boolean);
begin
 if cy.RecordCount=0 then
   begin
     sc.Enabled:=false;
     gc.Enabled:=false;
     m_sc.Enabled:=false;
     m_gc.Enabled:=false;
   end
  else
   begin
     gc.Enabled:=true;
     sc.Enabled:=true;
     m_gc.Enabled:=true;
     m_sc.Enabled:=true;
   end;
      if ANode.Index mod 2 = 0 then
    AColor := clInfoBk
  else
    AColor := clAqua;
  if aselected=true then
    AColor :=$D8A19A;
end;

end.

⌨️ 快捷键说明

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