📄 checkout.~cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "checkout.h"
#include "data.h"
#include "hotelmanagement.h"
#include "bill.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "RzButton"
#pragma resource "*.dfm"
TForm10 *Form10;
//---------------------------------------------------------------------------
__fastcall TForm10::TForm10(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm10::RzButton1Click(TObject *Sender)
{
if(MessageDlg("确定客人要退房吗?",mtInformation,TMsgDlgButtons()<< mbOK << mbCancel, 0)==IDOK)
{ DataModule2->InroQuery->SQL->Clear();
AnsiString queryString="Select * From Room Where RoomNo= ";
queryString+="'";
queryString+=DataModule2->stayinQuery->FieldByName("RoomNo")->AsString;
queryString+="'";
DataModule2->InroQuery->SQL->Add(queryString);
DataModule2->InroQuery->ExecSQL();
DataModule2->InroQuery->Active=true;
DataModule2->stayinQuery->Edit();
DataModule2->InroQuery->Edit();
DataModule2->stayinQuery->FieldByName("CheckOutDay")->AsString=Form1->MonthCalendar1->Date;
if(RadioGroup1->ItemIndex==0)
{if(RadioGroup2->ItemIndex==0)
Form12->ShowModal();
DataModule2->stayinQuery->FieldByName("CustomerState")->AsString="";
DataModule2->stayinQuery->FieldByName("RoomNo")->AsString="";
DataModule2->stayinQuery->FieldByName("RoomType")->AsString="";
DataModule2->stayinQuery->FieldByName("Account")->AsString="";
DataModule2->stayinQuery->FieldByName("Deposit")->AsString="";
DataModule2->stayinQuery->FieldByName("StayDays")->AsString="";
DataModule2->stayinQuery->FieldByName("CustomerPay")->AsString="";
DataModule2->stayinQuery->FieldByName("DestineDays")->AsString="";
DataModule2->InroQuery->FieldByName("RoomState")->AsString="空闲";
DataModule2->InroQuery->FieldByName("CustomerId")->AsString="";
DataModule2->InroQuery->FieldByName("CustomerName")->AsString="";
}
else
{if(RadioGroup2->ItemIndex==0)
Form12->ShowModal();
DataModule2->stayinQuery->Delete();
DataModule2->InroQuery->FieldByName("RoomState")->AsString="空闲";
DataModule2->InroQuery->FieldByName("CustomerId")->AsString="";
DataModule2->InroQuery->FieldByName("CustomerName")->AsString="";
}
DataModule2->InroQuery->Post();
DataModule2->InroQuery->Close();
DataModule2->InroQuery->ExecSQL();
DataModule2->InroQuery->Active=true;
DataModule2->stayinQuery->Close();
DataModule2->stayinQuery->ExecSQL();
DataModule2->stayinQuery->Active=true;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm10::Button1Click(TObject *Sender)
{
DataModule2->stayinQuery->SQL->Clear();
AnsiString name="Select * From Customer Where CustomerName=";
name+="'";
name+=Edit3->Text;
name+="'";
DataModule2->stayinQuery->SQL->Add(name);
DataModule2->stayinQuery->Close();
DataModule2->stayinQuery->ExecSQL();
DataModule2->stayinQuery->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm10::FormShow(TObject *Sender)
{
DataModule2->stayinQuery->Close();
DataModule2->stayinQuery->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm10::DBGrid1CellClick(TColumn *Column)
{
DataModule2->stayinQuery->Edit();
TDateTime dt=TDateTime().CurrentDate();
TDateTime date=dt-DataModule2->stayinQuery->FieldByName("CheckInDate")->AsString;
DataModule2->stayinQuery->FieldByName("StayDays")->AsString= (Integer)date;
DataModule2->InroQuery->SQL->Clear();
AnsiString queryString="Select * From Room Where RoomNo= ";
queryString+="'";
queryString+=DataModule2->stayinQuery->FieldByName("RoomNo")->AsString;
queryString+="'";
DataModule2->InroQuery->SQL->Add(queryString);
DataModule2->InroQuery->ExecSQL();
DataModule2->InroQuery->Active=true;
double price=DataModule2->InroQuery->FieldByName("RoomPrice")->AsFloat;
int staydays=StrToInt(DataModule2->stayinQuery->FieldByName("StayDays")->AsString);
Edit1->Text=FloatToStr(price*staydays);
DataModule2->stayinQuery->FieldByName("Account")->AsFloat=DataModule2->stayinQuery->FieldByName("CustomerPay")->AsFloat-price*staydays;
if((DataModule2->stayinQuery->FieldByName("Account")->AsFloat)<0)
{Edit2->Text=FloatToStr((-1)*(DataModule2->stayinQuery->FieldByName("Account")->AsFloat));
Edit4->Text="0";
}
else if((DataModule2->stayinQuery->FieldByName("Account")->AsFloat)>=0)
{Edit4->Text=FloatToStr(DataModule2->stayinQuery->FieldByName("Account")->AsFloat);
Edit2->Text="0";
}
}
//---------------------------------------------------------------------------
void __fastcall TForm10::RzButton3Click(TObject *Sender)
{
Form10->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm10::Button2Click(TObject *Sender)
{
DataModule2->stayinQuery->SQL->Clear();
AnsiString name="Select * From Customer";
DataModule2->stayinQuery->SQL->Add(name);
DataModule2->stayinQuery->Close();
DataModule2->stayinQuery->ExecSQL();
DataModule2->stayinQuery->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm10::FormCreate(TObject *Sender)
{
DataModule2->stayinQuery->Close();
DataModule2->stayinQuery->Open();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -