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

📄 ydkdunit.pas

📁 东华休闲山庄洗浴、餐饮、客房管理系统
💻 PAS
📖 第 1 页 / 共 3 页
字号:
unit YDKDUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, DB, DBClient, SUIButton, StdCtrls, SUIListBox, Grids,
  DBGrids, SUIImagePanel, SUIGroupBox, SUIEdit, SUIComboBox, ExtCtrls,
  DateUtils, ComCtrls;

type
  TYDKDForm = class(TForm)
    suiPanel1: TsuiPanel;
    Label15: TLabel;
    Label1: TLabel;
    Label16: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label18: TLabel;
    Label3: TLabel;
    Label17: TLabel;
    Label4: TLabel;
    suiComboBox1: TsuiComboBox;
    suiEdit6: TsuiEdit;
    suiEdit1: TsuiEdit;
    suiComboBox2: TsuiComboBox;
    suiEdit2: TsuiEdit;
    suiEdit3: TsuiEdit;
    suiComboBox7: TsuiComboBox;
    suiEdit4: TsuiEdit;
    suiEdit5: TsuiEdit;
    suiButton1: TsuiButton;
    suiButton2: TsuiButton;
    suiGroupBox1: TsuiGroupBox;
    Label2: TLabel;
    Label6: TLabel;
    Label23: TLabel;
    Label10: TLabel;
    Label9: TLabel;
    Label5: TLabel;
    suiEdit7: TsuiEdit;
    suiComboBox4: TsuiComboBox;
    suiEdit9: TsuiEdit;
    suiEdit16: TsuiEdit;
    btn1: TsuiButton;
    btn2: TsuiButton;
    suiEdit8: TsuiEdit;
    suiComboBox3: TsuiComboBox;
    suiButton3: TsuiButton;
    dbgrd1: TDBGrid;
    suiListBox2: TsuiListBox;
    suiGroupBox2: TsuiGroupBox;
    Label22: TLabel;
    Label21: TLabel;
    Label20: TLabel;
    Label14: TLabel;
    suiComboBox8: TsuiComboBox;
    suiEdit15: TsuiEdit;
    suiEdit14: TsuiEdit;
    suiEdit12: TsuiEdit;
    suiCheckBox1: TsuiCheckBox;
    btn3: TsuiButton;
    btn4: TsuiButton;
    DBGrid1: TDBGrid;
    ds1: TDataSource;
    ds2: TDataSource;
    ds3: TClientDataSet;
    ClientDataSet1: TClientDataSet;
    pm1: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    ClientDataSet2: TClientDataSet;
    stat1: TStatusBar;
    procedure suiButton2Click(Sender: TObject);
    procedure suiButton1Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure ds3AfterScroll(DataSet: TDataSet);
    procedure btn1Click(Sender: TObject);
    procedure suiButton3Click(Sender: TObject);
    procedure btn2Click(Sender: TObject);
    procedure dbgrd1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure btn3Click(Sender: TObject);
    procedure btn4Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure suiEdit6KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox1KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox2KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit1KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit2KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox1DropDown(Sender: TObject);
    procedure suiComboBox7DropDown(Sender: TObject);
    procedure suiComboBox7KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit3KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit4KeyPress(Sender: TObject; var Key: Char);
    procedure suiCheckBox1Click(Sender: TObject);
    procedure suiEdit12KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit14KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit15KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox8KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox8DropDown(Sender: TObject);
    procedure suiEdit7KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox3KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit16KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox4KeyPress(Sender: TObject; var Key: Char);
    procedure suiComboBox4DropDown(Sender: TObject);
    procedure suiEdit8KeyPress(Sender: TObject; var Key: Char);
    procedure suiEdit9KeyPress(Sender: TObject; var Key: Char);
    procedure ClientDataSet1AfterScroll(DataSet: TDataSet);
  private
    { Private declarations }
  public
    { Public declarations }
    ifguest,ifsave:boolean;
    id,guestid:string;
    ifguestselect:boolean;
  end;

var
  YDKDForm: TYDKDForm;

implementation

uses MainUnit, LoginUnit, GuestSelectUnit, YDGLUnit;

{$R *.dfm}

procedure TYDKDForm.suiButton2Click(Sender: TObject);
begin
  close;
end;

procedure TYDKDForm.FormCreate(Sender: TObject);
var
  temp:string;
  index:Integer;
  roomnum,roomtype:string;
  roomprice,roomyajin:string;
  memo:string;
  time1,time2:string;
begin
  suiEdit1.Clear;
  suiEdit2.Clear;
  suiEdit3.Clear;
  suiEdit4.Clear;
  suiEdit5.Clear;
  suiEdit6.Clear;
  suiEdit7.Clear;
  suiEdit8.Clear;
  suiEdit9.Clear;
  suiEdit12.Clear;
  suiEdit14.Clear;
  suiEdit15.Clear;
  suiEdit16.Clear;
  suiComboBox1.Clear;
  suiComboBox2.ItemIndex:=0;
  suiComboBox3.ItemIndex:=0;
  suiComboBox4.Clear;
  suiComboBox7.Clear;
  suiComboBox8.Clear;
  suiPanel1.Caption:='预订单号:'+YDGLForm.ClientDataSet1.fieldbyname('id').AsString;
  id:='团体单号:TT'+FormatDateTime('yyyymmddhhnnss',now);
  delete(id,1,10);
  self.suiComboBox1.Text:=YDGLForm.ClientDataSet1.fieldbyname('source').AsString;
  suiEdit6.Text:=YDGLForm.ClientDataSet1.fieldbyname('name').AsString;
  suiEdit2.Text:=YDGLForm.ClientDataSet1.fieldbyname('phone').AsString;
  ifsave:=false;
  ifguest:=false;
  ifguestselect:=false;
  suiEdit12.Text:='0.9';
  time2:=FormatDateTime('yyyy-mm-dd',YDGLForm.ClientDataSet1.fieldbyname('time2').AsDateTime);
  time1:=FormatDateTime('yyyy-mm-dd',YDGLForm.ClientDataSet1.fieldbyname('time1').AsDateTime);
  suiEdit14.Text:=inttostr(DaysBetween(StrToDate(time2),StrToDate(time1)));
  suiListBox2.Items.Clear;
  suiListBox2.Items.BeginUpdate;
  loginform.ExecuteSQL('select roomtype,roomnum from reserve '+
                       'where id='''+YDGLForm.ClientDataSet1.fieldbyname('id').AsString+'''');
  LoginForm.dsQuery.First;
  while not LoginForm.dsQuery.Eof do
    begin
      temp:=temp+LoginForm.dsQuery.Fields[0].AsString+':'+LoginForm.dsQuery.Fields[1].AsString+'@';
      LoginForm.dsQuery.Next;
    end;
  suiListBox2.Items.EndUpdate;
  LoginForm.dsQuery.Close;
  loginform.ExecuteSQL('delete from roomselect');
  index:=1;
  while Pos('@',temp)>0 do
    begin
      roomnum:=Copy(temp,1,Pos('@',temp)-1);
      roomtype:=Copy(roomnum,1,Pos(':',roomnum)-1);
      Delete(roomnum,1,Pos(':',roomnum));
      memo:=memo+roomnum+';';
      loginform.ExecuteSQL('select * from roomtype where type_mc='''+roomtype+'''');
      roomprice:=loginform.dsQuery.fieldbyname('type_csdj').AsString;
      roomyajin:=loginform.dsQuery.fieldbyname('type_yj').AsString;
      LoginForm.dsQuery.Close;
      loginform.ExecuteSQL('insert into roomselect '+
                           'values('''+inttostr(index)+''','''+roomtype+''','''+roomnum+
                                   ''','''+formatfloat('¥0.00',strtofloat(roomprice))+
                                   ''','''+suiedit12.Text+
                                   ''','''+formatfloat('¥0.00',strtofloat(roomprice)*strtofloat(suiedit12.Text))+
                                   ''','''+formatfloat('¥0.00',strtofloat(roomyajin))+''')');
      Delete(temp,1,Pos('@',temp));
      inc(index);
    end;
  loginform.ExecuteSQL('select sum(yajin) from roomselect');
  suiEdit15.Text:=FormatFloat('0.00',LoginForm.dsQuery.Fields[0].AsFloat);
  LoginForm.dsQuery.Close;
  suiComboBox8.Text:='现金';
  suiEdit5.Text:='预订开单:'+memo;
  suiListBox2.Items.Clear;
  suiListBox2.Items.BeginUpdate;
  loginform.ExecuteSQL('select roomtype.type_mc,room.room_num from room,roomtype '+
                       'where room.room_type=roomtype.type_xh and room.room_state=''可供'' and '+
                             'room.room_num<>'''+mainform.roomnum+''' '+
                       'order by room.room_num');
  LoginForm.dsQuery.First;
  while not LoginForm.dsQuery.Eof do
    begin
      suiListBox2.Items.Add(LoginForm.dsQuery.Fields[0].AsString+':'+LoginForm.dsQuery.Fields[1].AsString);
      LoginForm.dsQuery.Next;
    end;
  suiListBox2.Items.EndUpdate;
  LoginForm.dsQuery.Close;
  ClientDataSet1.Close;
  ClientDataSet1.Open;
end;

procedure TYDKDForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if not ifsave then
    begin
      loginform.ExecuteSQL('delete from roompeople where id='''+id+'''');
      LoginForm.ExecuteSQL('delete from roomselect')
    end;
  ds3.Close;
  ClientDataSet2.Close;
  ClientDataSet1.Close;
  ydglform.ClientDataSet1.Close;
  ydglform.ClientDataSet1.CommandText:='select * from Reserve order by id,roomnum';
  ydglform.ClientDataSet1.Open;
  ydglform.Enabled:=true;
end;

procedure TYDKDForm.FormActivate(Sender: TObject);
begin
  if self.ifguestselect then
    begin
      ifguestselect:=false;
      suiEdit7.Text:=suiEdit6.Text;
      suiComboBox2.SetFocus;
    end
  else
    suiComboBox1.SetFocus;
end;

procedure TYDKDForm.suiEdit6KeyPress(Sender: TObject; var Key: Char);
var
  count:integer;
begin
  if key=#13 then
    begin
      self.ClientDataSet2.Close;
      self.ClientDataSet2.Open;
      self.ClientDataSet2.Filter:='name='''+suiEdit6.Text+'''';
      self.ClientDataSet2.Filtered:=True;
      count:=ClientDataSet2.RecordCount;
      self.ClientDataSet2.Close;
      if count=0 then
        begin
          stat1.Panels[0].Text:='宾客【'+suiEdit6.Text+'】首次光临!';
          self.suiComboBox2.SetFocus;
          suiEdit7.Text:=suiEdit6.Text;
        end
      else
        begin
          ifguest:=true;
          ifguestselect:=True;
          application.CreateForm(TGuestSelectForm,GuestSelectForm);
          GuestSelectForm.Show;
          SELF.Enabled:=False;
        end;
    end;
end;

procedure TYDKDForm.suiEdit1KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in [#48..#57,#13,#8]) then
    key:=#0
  else
    if key=#13 then

⌨️ 快捷键说明

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