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

📄 main.pas

📁 小管理程序主要管理的小咖啡厅我是从网上下的经测试可用
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, ComCtrls, ImgList, Menus, StdCtrls, Buttons, ToolWin,
  ActnList, DBCtrls,DB,Adodb,ShellApi;

type
  TFrmMain = class(TForm)
    Panel1: TPanel;
    Panel3: TPanel;
    StatusBar1: TStatusBar;
    DeskView: TListView;
    ImageList1: TImageList;
    Panel2: TPanel;
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    Panel4: TPanel;
    Label1: TLabel;
    timeLabel: TLabel;
    DateLabel: TLabel;
    TimeTimer: TTimer;
    Panel5: TPanel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    GroupBox1: TGroupBox;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    GroupBox2: TGroupBox;
    Label15: TLabel;
    Edlocate: TEdit;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    N8: TMenuItem;
    N9: TMenuItem;
    BtnYuDing: TSpeedButton;
    BtnZhuantai: TSpeedButton;
    BtnKaitai: TSpeedButton;
    ToolButton2: TToolButton;
    BtnLuoDan: TSpeedButton;
    BtnDianDan: TSpeedButton;
    BtnClose: TSpeedButton;
    ToolButton3: TToolButton;
    BtnJieZhang: TSpeedButton;
    ToolButton4: TToolButton;
    BtnChang: TSpeedButton;
    BtnQingTai: TSpeedButton;
    N10: TMenuItem;
    N11: TMenuItem;
    N12: TMenuItem;
    N13: TMenuItem;
    N15: TMenuItem;
    N16: TMenuItem;
    N17: TMenuItem;
    N18: TMenuItem;
    N19: TMenuItem;
    N20: TMenuItem;
    N21: TMenuItem;
    N22: TMenuItem;
    N23: TMenuItem;
    N24: TMenuItem;
    N25: TMenuItem;
    N26: TMenuItem;
    N27: TMenuItem;
    N28: TMenuItem;
    N29: TMenuItem;
    N30: TMenuItem;
    N31: TMenuItem;
    N32: TMenuItem;
    N33: TMenuItem;
    N34: TMenuItem;
    N35: TMenuItem;
    N36: TMenuItem;
    N37: TMenuItem;
    BtnTuiDan: TSpeedButton;
    Panel6: TPanel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    N14: TMenuItem;
    N38: TMenuItem;
    DBText1: TDBText;
    DBText2: TDBText;
    DBText3: TDBText;
    DBText4: TDBText;
    DBText6: TDBText;
    DBText7: TDBText;
    BtnRefresh: TSpeedButton;
    DeskPopupMenu: TPopupMenu;
    N39: TMenuItem;
    N40: TMenuItem;
    N42: TMenuItem;
    N41: TMenuItem;
    N43: TMenuItem;
    N44: TMenuItem;
    N45: TMenuItem;
    N46: TMenuItem;
    N47: TMenuItem;
    N48: TMenuItem;
    N49: TMenuItem;
    N50: TMenuItem;
    N51: TMenuItem;
    procedure MenuItemOnClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure TimeTimerTimer(Sender: TObject);
    procedure BtnCloseClick(Sender: TObject);
    procedure DeskViewCustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
    procedure DeskViewSelectItem(Sender: TObject; Item: TListItem;
      Selected: Boolean);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BtnRefreshClick(Sender: TObject);
    procedure DeskViewClick(Sender: TObject);
    procedure DeskViewMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure PopupMenuItemOnClick(Sender: TObject);
    procedure PopupMenuVisible;
    procedure EdlocateKeyPress(Sender: TObject; var Key: Char);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ToolBtnClick(Sender: TObject);
    procedure createdeskview;
    procedure mainmenushow;
    procedure FormShow(Sender: TObject);
    procedure BtnChangClick(Sender: TObject);
  private
    { Private declarations }

    function locatdesk(deskid:integer):integer;
  public
    { Public declarations }
  end;

var
  FrmMain: TFrmMain;
  isreg:integer; //是否注册
  FlagSelect:integer; //是否桌面有被选中。
const
  EnableKaiTai=[0];
  EnableZhuanTai=[1,3,4];
  EnableQingTai=[1,2,5,6];
  EnableYuDing=[0];
  EnableDianDan=[1,3];
  EnableTuiDan=[3];
  EnableLuoDan=[3];
  EnableJieZhang=[4];
implementation

uses dbmodule,kaitai, zhuantai, yuding, diandan, tuidan, luodan, jiezhang,
  caipuquery,fangtaiquery,caipin,fenlei,fangtai,fangshi,opratecomand,inputhao,
  yumanage,kehu,saleanlyse,xiaoanlyes,diandanquery,zhangdianquery,fangtaixiaofei,
  dayreport,monthreport,rightoprate,usermanager,worklog,login,company,changpass,
  boot,zhuce,fun,guadan,databackup,dataresort,dataclear;

{$R *.dfm}
procedure TFrmMain.mainmenushow;
var
 i,j:integer;
begin
  if dm.comquery.Active then
    dm.comquery.Close;
  dm.comquery.SQL.Clear ;
  dm.comquery.SQL.Add('SELECT a.rightid,a.isflag from Q_right a,Q_users b');
  dm.comquery.SQL.Add(' where a.groupid=b.groupid and b.username='+''''+dm.opratename+'''');
  dm.comquery.Open ;
  while not dm.comquery.Eof do
    begin
     for i:=0 to MainMenu1.Items.Count -1 do
       begin
         for j:=0 to mainmenu1.Items[i].Count-1 do
           if MainMenu1.Items[i].Items[j].Tag=dm.comquery.FieldByName('rightid').AsInteger then
             begin
               MainMenu1.Items[i].Items[j].Enabled:=dm.comquery.FieldByName('isflag').AsBoolean;
               break;
             end;
         if j< mainmenu1.Items[i].Count-1 then
           break;
       end;
     dm.comquery.Next;
   end;
 dm.comquery.Close;
end;
procedure TFrmMain.PopupMenuVisible;
 var
   i:integer;
 begin
   For i:=0 to DeskPopupMenu.Items.Count -1 do
      DeskPopupMenu.Items[i].Visible:=False;
   if deskview.Selected.ImageIndex=0 then //当前空台时可显示菜单
       begin
         DeskPopupMenu.Items[0].Visible:=True;
         DeskPopupMenu.Items[5].Visible:=True;
       end;
   if deskview.Selected.ImageIndex=1 then //当前开台时可显示菜单
       begin
         DeskPopupMenu.Items[1].Visible:=True;
         DeskPopupMenu.Items[6].Visible:=True;
         DeskPopupMenu.Items[7].Visible:=True;
       end;
   if deskview.Selected.ImageIndex=2 then //当前预定时可显示菜单
       begin
         DeskPopupMenu.Items[0].Visible:=True;
         DeskPopupMenu.Items[7].Visible:=True;
       end;
    if deskview.Selected.ImageIndex=3 then //当前已点单后可显示菜单
       begin
         DeskPopupMenu.Items[1].Visible:=True;
         DeskPopupMenu.Items[2].Visible:=True;
         DeskPopupMenu.Items[4].Visible:=True;
         DeskPopupMenu.Items[6].Visible:=True;
       end;
    if deskview.Selected.ImageIndex=4 then //当前已落单后可显示菜单
       begin
         DeskPopupMenu.Items[3].Visible:=True;
         //DeskPopupMenu.Items[4].Visible:=True;
         DeskPopupMenu.Items[6].Visible:=True;
       end;
    if deskview.Selected.ImageIndex=5 then //当前已结帐后可显示菜单
       begin
         DeskPopupMenu.Items[7].Visible:=True;
       end;
    if deskview.Selected.ImageIndex=6 then //当前已退单后可显示菜单
       begin
         DeskPopupMenu.Items[7].Visible:=True;
       end;
 end;
procedure TFrmMain.PopupMenuItemOnClick(sender:TObject);
  begin
     case (Sender as TMenuItem).Tag  of
          1: //开台点单
             begin
                 deskview.Selected.ImageIndex:=kaitaioprate(deskview.Selected.StateIndex);
             end;
          2: //点单
             begin
               if (deskview.Selected.ImageIndex=1) or (deskview.Selected.ImageIndex=3) then
                  deskview.Selected.ImageIndex:=diandanoprate(deskview.Selected.StateIndex);
             end;
          3: //落单
             begin
                deskview.Selected.ImageIndex:=luodanoprate(deskview.Selected.StateIndex);
             end;
          4://结账
             begin
                deskview.Selected.ImageIndex:=jiezhangoprate(deskview.Selected.StateIndex);
             end;
          5://退单
             begin
               deskview.Selected.ImageIndex:=tuidanoprate(deskview.Selected.StateIndex);
             end;
          6://预定
             begin
               deskview.Selected.ImageIndex:=yudingoprate(deskview.Selected.StateIndex);
             end;
          7://转台
             begin
               deskview.Selected.ImageIndex:=zhuantaioprate(deskview.Selected.StateIndex);
               if locatdesk(dm.Qfangtai.FieldValues['fangtaiid'])>-1 then
                 begin
                  dm.Qfangtai.Refresh;
                  deskview.Selected.ImageIndex:=dm.Qfangtai.FieldValues['statusid'];
                 end;
             end;
          8://清台
             begin
               deskview.Selected.ImageIndex:=yingtaioprate(deskview.Selected.StateIndex);
             end;
       end;
  end;
procedure TFrmMain.MenuItemOnClick(Sender: TObject); //菜单项单击事件
  begin
   case (Sender as TMenuItem).Tag  of
  //****前台营业
     1:  //菜谱查询
       begin
         OpenFrmWin(TFrmCaipuQuery,TForm(FrmCaipuQuery));
       end;
     2: //房台状态
       begin
         OpenFrmWin(TFrmfangtaiquery,TForm(Frmfangtaiquery));
       end;
     3: //退出系统
       begin
         BtnCloseClick(BtnClose);
       end;
  //***接待预定
     4: //预定查询
       begin
         OpenFrmWin(TFrmyumanage,TForm(Frmyumanage));
       end;
     5: //客户管理
       begin
         OpenFrmWin(TFrmkehu,TForm(Frmkehu));
       end;
  //***营业分析
     6: //销售分析
       begin
         OpenFrmWin(TFrmsaleanlyse,TForm(Frmsaleanlyse));
       end;
     7: //消费分析
       begin
         OpenFrmWin(TFrmxiaoanlyes,TForm(Frmxiaoanlyes));
       end;
     8: //日报表
       begin
         OpenFrmWin(TFrmdayreport,TForm(Frmdayreport));
       end;
     9: //月报表
       begin
         OpenFrmWin(TFrmmonthreport,TForm(Frmmonthreport));
       end;
  //***账务查询
     10: //点单查询
       begin
         OpenFrmWin(TFrmdiandanquery,TForm(Frmdiandanquery));
       end;
     11: //账单查询
       begin
         OpenFrmWin(TFrmzhangdianquery,TForm(Frmzhangdianquery));
       end;
     12: //房台消费
       begin
         OpenFrmWin(TFrmfangtaixiaofei,TForm(Frmfangtaixiaofei));
       end;
     13: //挂单处理
       begin
         OpenFrmWin(TFrmguadan,TForm(Frmguadan));
       end;
//***系统管理
     14: //菜品分类
       begin
         OpenFrmWin(TFrmfenlei,TForm(Frmfenlei));
       end;
     15: //菜品管理
       begin
          OpenFrmWin(TFrmcaipin,TForm(Frmcaipin));
       end;
     16: //房台管理
       begin
          OpenFrmWin(TFrmfangtai,TForm(Frmfangtai));
       end;
     17: //付款方式
       begin
          OpenFrmWin(TFrmfangshi,TForm(Frmfangshi));
       end;
     18: //用户管理
       begin
         OpenFrmWin(TFrmusermanager,TForm(Frmusermanager));
       end;
     19: //权限管理
       begin
         OpenFrmWin(TFrmrightoprate,TForm(Frmrightoprate));
       end;
     20: //操作日志
       begin
         OpenFrmWin(TFrmworklog,TForm(Frmworklog));
       end;
     21: // 用户注册
       begin
         OpenFrmWin(TFrmcompany,TForm(Frmcompany));

⌨️ 快捷键说明

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