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

📄 luodan.pas

📁 小管理程序主要管理的小咖啡厅我是从网上下的经测试可用
💻 PAS
字号:
unit luodan;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids, DBGrids, Buttons, DBCtrls, DB, ADODB, Menus;

type
  TFrmluodan = class(TForm)
    GroupBox1: TGroupBox;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label1: TLabel;
    GroupBox2: TGroupBox;
    GroupBox3: TGroupBox;
    DBGrid2: TDBGrid;
    DBGrid1: TDBGrid;
    Btnluodan: TSpeedButton;
    BtnClose: TSpeedButton;
    DBText1: TDBText;
    DBText2: TDBText;
    DBText3: TDBText;
    DBText4: TDBText;
    QueryMaster: TADOQuery;
    QueryDetail: TADOQuery;
    QueryMastDataSource: TDataSource;
    QueryDetailDataSource: TDataSource;
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    SumQuery: TADOQuery;
    procedure FormShow(Sender: TObject);
    procedure QueryDetailAfterOpen(DataSet: TDataSet);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure BtnluodanClick(Sender: TObject);
    procedure BtnCloseClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Popupmenuclick(Sender:Tobject);
  private
    { Private declarations }
  public
    { Public declarations }
    deskid:integer;
  end;

var
  Frmluodan: TFrmluodan;

implementation
    uses dbmodule,opratecomand,changprice;
{$R *.dfm}
procedure TFrmluodan.Popupmenuclick(Sender:Tobject);
var
  inputString:String;
begin
 case (Sender as TMenuItem).Tag  of
   1: //删除所选
     begin
       if application.MessageBox('你确定删除所选菜品吗?','提示',MB_OKCANCEL)=idok then
         begin
           if QueryDetail.Active then
             begin
              if not QueryDetail.Eof then
                begin
                  if (QueryDetail.RecordCount>1) then
                    begin
                     //QueryDetail.Edit;
                     QueryDetail.DeleteRecords(arCurrent);
                     //QueryDetail.Post;
                     dm.SaveWorkLog(now(),dm.opratename,'操作落单时,删除菜品。');
                    end
                  else
                    begin
                      application.MessageBox('不能删除,只能退单。','提示',mb_ok);
                      exit;
                    end;
                end;
             end;
         end;
     end;
   2: //菜品调价
     begin
        InputString:= InputPassBox('确认框', '请输入调价密码:');
        if trim(InputString)<>'' then
          begin
            if dm.QueryPass.Active  then
              dm.QueryPass.Close;
            dm.QueryPass.SQL.Clear;
            dm.QueryPass.SQL.Add('select changpass from Q_pricepass where changpass='+''''+InputString+'''');
            dm.QueryPass.Open ;
            if dm.QueryPass.Eof then
               begin
                 MessageDlg('调价密码不正确!',mtError,[mbok],0);
                 exit;
               end;
            if not dm.QueryPass.Eof then
              begin
                if trim(dm.QueryPass.FieldByName('changpass').AsString)=InputString then
                   begin
                      if not Assigned(Frmchangprice) then
                         Application.CreateForm(TFrmchangprice,Frmchangprice);
                      FrmChangPrice.oldprice.Text:=FormatCurr('#0.00',QueryDetail.FieldByName('caipinprice').AsCurrency);
                      FrmChangPrice.ShowModal;
                      if FrmChangPrice.isok then
                        begin
                            if QueryDetail.Active then
                              begin
                                if not QueryDetail.IsEmpty then
                                  begin
                                   QueryDetail.Edit;
                                   QueryDetail.FieldByName('caipinprice').AsFloat:=FrmChangPrice.caipinprice;
                                   QueryDetail.FieldByName('dianliexing').AsString:=FrmChangPrice.caipinleipie;
                                   QueryDetail.Post;
                                   dm.SaveWorkLog(now(),dm.opratename,'操作落单时,对菜品调价。');
                                 end;
                              end;
                        end;
                   end
                else
                   begin
                     MessageDlg('调价密码不正确!',mtError,[mbok],0);
                     exit;
                   end;
              end;
          end;
     end;
 end;
end;

procedure TFrmluodan.FormShow(Sender: TObject);
begin
  if not dm.Qfangtai.Active then
     dm.Qfangtai.Open ;
  if dm.Qfangtai.Active then
    begin
      dm.Qfangtai.Locate('fangtaiid',deskid,[loCaseInsensitive]);
    end;
  if QueryMaster.Active then
     QueryMaster.Close ;
  QueryMaster.SQL.Clear ;
  QueryMaster.SQL.Add('select distinct zhanghao,chuanbiaohao from Q_customertemp where zhanghao='+''''+dm.Qfangtai.FieldValues['zhanghao']+'''');
  QueryMaster.Open;
  if not QueryMaster.Eof then
    begin
      if QueryDetail.Active then
        QueryDetail.Close;
      QueryDetail.SQL.Clear;
      QueryDetail.SQL.Add('select id,Caipinid,caipinname,caipincount,caipinunit,caipinprice,dianliexing,caipinprice*caipincount as heji from Q_customertemp');
      QueryDetail.SQL.Add(' where zhanghao='+''''+QueryMaster.FieldValues['zhanghao']+''''+' and chuanbiaohao='+''''+QueryMaster.FieldValues['chuanbiaohao']+'''');
      QueryDetail.Open;
    end;
end;

procedure TFrmluodan.QueryDetailAfterOpen(DataSet: TDataSet);
begin
  dm.UpdateFieldFormats(DataSet);
end;

procedure TFrmluodan.DBGrid1CellClick(Column: TColumn);
begin
   if QueryMaster.Active then
    begin
      if QueryDetail.Active then
        QueryDetail.Close;
      QueryDetail.SQL.Clear;
      QueryDetail.SQL.Add('select id,Caipinid,caipinname,caipincount,caipinunit,caipinprice,dianliexing,caipinprice*caipincount as heji from Q_customertemp');
      QueryDetail.SQL.Add(' where zhanghao='+''''+QueryMaster.FieldValues['zhanghao']+''''+' and chuanbiaohao='+''''+QueryMaster.FieldValues['chuanbiaohao']+'''');
      QueryDetail.Open;
    end;
end;

procedure TFrmluodan.BtnluodanClick(Sender: TObject);
begin
  if not dm.Qfangtai.Active then
     dm.Qfangtai.Open ;
  if dm.Qfangtai.Active then
    begin
      dm.Qfangtai.Locate('fangtaiid',deskid,[loCaseInsensitive]);
      dm.Qfangtai.Edit;
      dm.Qfangtai.FieldByName('statusid').AsInteger:=4;
      if sumquery.Active then
        sumquery.Close;
      sumquery.SQL.Clear;
      sumquery.SQL.Add('SELECT sum(caipincount*caipinprice) as summoney FROM Q_customertemp');
      sumquery.SQL.Add('where zhanghao='+''''+dm.Qfangtai.FieldValues['zhanghao']+'''');
      sumquery.Open;
      dm.Qfangtai.FieldByName('Gustmoney').AsFloat:=sumquery.FieldValues['summoney'];
      sumquery.Close;
      dm.Qfangtai.Post;
      dm.SaveWorkLog(now(),dm.opratename,'落单操作完成。');
      self.Close;
    end;
end;

procedure TFrmluodan.BtnCloseClick(Sender: TObject);
begin
  self.Close;
end;

procedure TFrmluodan.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if QueryMaster.Active then
     QueryMaster.Close ;
  if QueryDetail.Active then
     QueryDetail.Close;
end;

end.

⌨️ 快捷键说明

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