📄 ydkdunit.pas
字号:
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 + -