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

📄 ctbtj.pas

📁 集成酒店桑拿食管管理的完整程序
💻 PAS
字号:
unit ctbtj;

interface

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

type
  TdbsrtjForm = class(TForm)
    DataSource1: TDataSource;
    Query1: TQuery;
    GroupBox1: TGroupBox;
    Panel1: TPanel;
    Label1: TLabel;
    rq: TDateTimePicker;
    zao: TRadioButton;
    wu: TRadioButton;
    wan: TRadioButton;
    qt: TRadioButton;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    DBGrid1: TDBGrid;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DBGrid2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn1Click(Sender: TObject);
    procedure rqChange(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  dbsrtjForm: TdbsrtjForm;

implementation

uses dataproc;

{$R *.DFM}

procedure TdbsrtjForm.FormCreate(Sender: TObject);
var i:integer;
begin
//     dbsrtjForm.Caption:=Caption+formatdatetime('yyyy-mm-dd hh:mm',now)+'  班次: '+curper.curbc+'班  楼层:'+lc+'层';
     shortdateformat:='yyyy-mm-dd';
     if time<strtotime('10:00') then
         zao.Checked:=true;
     if (time>strtotime('10:00')) and (time<=strtotime('16:00')) then
         wu.Checked:=true;
     if (time>strtotime('16:00'))  then
         wan.Checked:=true;
     rq.DateTime:=now;
end;

procedure TdbsrtjForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
     Query1.Active :=false;
     Query1.sql.clear;
     Query1.SQL.text:='delete from ctjz where code='''+'合计'+'''';
     Query1.ExecSQL;
     Query1.Active :=false;
     Query1.sql.clear;

end;

procedure TdbsrtjForm.DBGrid2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=27 then
  begin
    GroupBox1.Visible:=false;
    dbgrid1.SetFocus;
  end;

end;

procedure TdbsrtjForm.BitBtn1Click(Sender: TObject);
var i:integer; bc:string;
begin
     if zao.Checked then
        bc:=formatdatetime('yyyy-mm-dd',rq.DateTime)+':早';
     if wu.Checked then
        bc:=formatdatetime('yyyy-mm-dd',rq.DateTime)+':午';
     if wan.Checked then
        bc:=formatdatetime('yyyy-mm-dd',rq.DateTime)+':晚';
     if qt.Checked then
        bc:=formatdatetime('yyyy-mm-dd',rq.DateTime)+':全天';
     Query1.Active :=false;
     Query1.sql.clear;
     DataSource1.DataSet:=nil;
     Query1.SQL.text:='delete from ctjz where code='''+'合计'+'''';
     Query1.ExecSQL;
     Query1.Active :=false;
     Query1.sql.clear;
     Query1.SQL.add('insert into ctjz select ''合计'','''',sum(bjf),sum(cf),sum(fwf),sum(hj),100,sum(zke),sum(jm),sum(yf),0,0,0,''00'',0,'' '',0,'' '','''+curper.name+''','''+formatdatetime('yyyy-mm-dd',rq.DateTime)+''','''+bc+''' from ctjz where ');
     if qt.Checked then
        Query1.SQL.add(' endtime>='''+formatdatetime('yyyy-mm-dd',rq.DateTime)+''' and endtime<='''+formatdatetime('yyyy-mm-dd',rq.DateTime)+' 23:59:59'+'''')
     else
        Query1.SQL.add(' bc='''+bc+'''');
     Query1.ExecSQL;
     Query1.Active :=false;
     Query1.sql.clear;
     Query1.SQL.text:='select ctjz.code,accno,endTime,bjf,cf,fwf,hj,zkl,zke,jm,yf,mfwf,mbjf,mcf,(select name from sandb.dbo.mode where code=ctjz.JzFs),gzno,bkroom,czy from ctjz where ';
     if qt.Checked then
        Query1.SQL.add(' endtime>='''+formatdatetime('yyyy-mm-dd',rq.DateTime)+''' and endtime<='''+formatdatetime('yyyy-mm-dd',rq.DateTime)+' 23:59:59'+'''')
     else
        Query1.SQL.add(' bc='''+bc+'''');
     Query1.Open;
     Query1.Fields[1].visible:=false;
     DataSource1.DataSet:=nil;
     if not Query1.Eof then
     begin
        DataSource1.DataSet:=Query1;
        chinesegrid(dbgrid1);
        DBGrid1.fields[0].displaylabel:=' 单号';
        DBGrid1.fields[1].displaylabel:='结帐时间';
//        DBGrid1.fields[1].displaylabel:=' 桌号';
        DBGrid1.fields[2].displaylabel:='包间费';
        DBGrid1.fields[3].displaylabel:='餐费';
        DBGrid1.fields[4].displaylabel:='服务费';
        DBGrid1.fields[5].displaylabel:='合计';
        DBGrid1.fields[6].displaylabel:='折扣率';
        DBGrid1.fields[7].displaylabel:='折扣款';
        DBGrid1.fields[8].displaylabel:='减免款';
        DBGrid1.fields[9].displaylabel:='实收款';
        DBGrid1.fields[10].displaylabel:='免服务费';
        DBGrid1.fields[11].displaylabel:='免包间费';
        DBGrid1.fields[12].displaylabel:='免餐费';
        DBGrid1.fields[13].displaylabel:='结帐';
        DBGrid1.fields[14].displaylabel:='挂帐帐号';
        DBGrid1.fields[15].displaylabel:='挂帐房号';
        DBGrid1.fields[16].displaylabel:='操作员';
        dbgrid1.Columns[1].width:=100;
//     dbgrid1.Columns[2].width:=80;
        for i:=3 to 11 do dbgrid1.Columns[i].width:=50;
        for i:=12 to 13 do  dbgrid1.Columns[i].width:=40;
          dbgrid1.Columns[14].width:=30;
//     StatusBar1.Panels.Items[2].text:='F3 打印此统计表';
   end;

end;

procedure TdbsrtjForm.rqChange(Sender: TObject);
begin
     GroupBox1.Caption:='';
     DataSource1.DataSet:=nil;
end;

procedure TdbsrtjForm.BitBtn2Click(Sender: TObject);
var ls:string;
begin
   if (trim(Query1.Fields[0].asstring)<>'合计') then
   begin
     ls:=Query1.Fields[1].asstring;
     GroupBox1.Caption:=ls+'号菜单消费明细';
     Query1.Active :=false;
     Query1.sql.clear;
     Query1.SQL.text:='select cusname,CusPrice,CusNum,Money,IsXj,isMd,Isuse,lscustom.Iszk,sandb.dbo.mode.name,gzno,Regtime,Moditime,czy,fwy,Djcode from lscustom,sandb.dbo.mode,cusitem ';
     Query1.SQL.Add('where sandb.dbo.mode.Code=lscustom.jzfs and lscustom.Cuscode=cusitem.Cuscode and accno='''+ls+'''');
     Query1.Open;
//     Query2.Fields[0].visible:=false;
     if not Query1.Eof then
     begin
        DataSource1.DataSet:=Query1;
        chinesegrid(dbgrid1);
        DBGrid1.fields[3].displaylabel:='消费金额';
        DBGrid1.fields[6].displaylabel:='上菜';
        DBGrid1.fields[11].displaylabel:='结帐时间';
        DBGrid1.fields[13].displaylabel:='服务员';
{        DBGrid2.fields[14].displaylabel:='结帐';
        DBGrid2.fields[16].displaylabel:='挂帐手号'; }
        dbgrid1.Columns[1].width:=50;
        dbgrid1.Columns[2].width:=50;
        dbgrid1.Columns[3].width:=50;
        dbgrid1.Columns[8].width:=40;
//     dbgrid1.Columns[2].width:=80;
{        for i:=3 to 10 do dbgrid1.Columns[i].width:=50;
        for i:=11 to 13 do  dbgrid1.Columns[i].width:=40;
          dbgrid1.Columns[14].width:=30;}
//        dbgrid2.SetFocus;
     end;
  end;

end;

procedure TdbsrtjForm.BitBtn4Click(Sender: TObject);
begin
    close;
end;

end.

⌨️ 快捷键说明

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