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

📄 romminput.pas

📁 一个餐饮行业的销售管理类的源码
💻 PAS
字号:
unit rommInput;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, DBTables, DB, ComCtrls;

type
  TRoomInputForm = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label11: TLabel;
    Label9: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label12: TLabel;
    Dinner_price: TEdit;
    People: TEdit;
    NO: TEdit;
    btnOk: TButton;
    btnClear: TButton;
    DataSource1: TDataSource;
    RoomTable: TTable;
    RoomQuery: TQuery;
    SaleDBGrid: TDBGrid;
    RadioGroup1: TRadioGroup;
    BudgetRadio: TRadioButton;
    IncomeRadio: TRadioButton;
    TaxRadio: TRadioButton;
    DiscountRadio: TRadioButton;
    CostRadio: TRadioButton;
    ProfitRadio: TRadioButton;
    birthday: TDateTimePicker;
    Label2: TLabel;
    Budget: TEdit;
    Label5: TLabel;
    Income: TEdit;
    Label6: TLabel;
    Label7: TLabel;
    Discount: TEdit;
    Label8: TLabel;
    Room_NO: TEdit;
    Romm_price: TEdit;
    Tax: TEdit;
    Profit: TEdit;
    Label10: TLabel;
    Pay_type: TEdit;
    Cost: TEdit;
    Service_price: TEdit;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    procedure btnClearClick(Sender: TObject);
    procedure BudgetRadioClick(Sender: TObject);
    procedure TaxRadioClick(Sender: TObject);
    procedure DiscountRadioClick(Sender: TObject);
    procedure CostRadioClick(Sender: TObject);
    procedure ProfitRadioClick(Sender: TObject);
    procedure btnOkClick(Sender: TObject);
    procedure IncomeRadioClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    function IsEmpty:boolean;
  end;

var
  RoomInputForm: TRoomInputForm;

implementation

{$R *.dfm}

function TRoomInputForm.IsEmpty:boolean;
begin
    if (NO.Text = '') or
        (Room_NO.Text = '') or
        (People.Text = '') or
        (Dinner_price.Text = '') or
        (Romm_price.Text = '') or
        (Budget.Text = '') or
        (Income.Text = '') or
        (Tax.Text = '') or
        (Discount.Text = '') or
        (Profit.Text = '') or
        (Service_price.Text = '') or
        (Cost.Text = '') or
        (Pay_type.Text = '') then result := true
    else result := false;        

end;

procedure TRoomInputForm.btnClearClick(Sender: TObject);
begin
        NO.Text := '';
        Room_NO.Text := '';
        People.Text := '';
        Dinner_price.Text := '';
        Romm_price.Text := '';
        Budget.Text := '';
        Income.Text := '';
        Tax.Text := '';
        Discount.Text := '';
        Profit.Text := '';
        Service_price.Text := '';
        Cost.Text := '';
        Pay_type.Text := '';
end;

procedure TRoomInputForm.BudgetRadioClick(Sender: TObject);
begin
    //设置数据源为query
    DataSource1.DataSet := roomQuery;
    roomQuery.Close;
    roomQuery.SQL.Clear;
    roomQuery.SQL.Add('select * from room order by Budget');
    try
        roomQuery.Open;
    except
        roomQuery.ExecSQL;
    end;
end;

procedure TRoomInputForm.TaxRadioClick(Sender: TObject);
begin
    //设置数据源为query
    DataSource1.DataSet := roomQuery;
    roomQuery.Close;
    roomQuery.SQL.Clear;
    roomQuery.SQL.Add('select * from room order by Tax');
    try
       roomQuery.Open;
    except
       roomQuery.ExecSQL;
    end;
end;

procedure TRoomInputForm.DiscountRadioClick(Sender: TObject);
begin
    //设置数据源为query
    DataSource1.DataSet := roomQuery;
    roomQuery.Close;
    roomQuery.SQL.Clear;
    roomQuery.SQL.Add('select * from room order by Discount');
    try
       roomQuery.Open;
    except
       roomQuery.ExecSQL;
    end;
end;

procedure TRoomInputForm.CostRadioClick(Sender: TObject);
begin
    //设置数据源为query
    DataSource1.DataSet := roomQuery;
    roomQuery.Close;
    roomQuery.SQL.Clear;
    roomQuery.SQL.Add('select * from room order by Cost');
    try
       roomQuery.Open;
    except
       roomQuery.ExecSQL;
    end;
end;

procedure TRoomInputForm.ProfitRadioClick(Sender: TObject);
begin
    //设置数据源为query
    DataSource1.DataSet := roomQuery;
    roomQuery.Close;
    roomQuery.SQL.Clear;
    roomQuery.SQL.Add('select * from room order by Profit');
    try
       roomQuery.Open;
    except
       roomQuery.ExecSQL;
    end;
end;

procedure TRoomInputForm.btnOkClick(Sender: TObject);
var
    A,B,C,D,E,F,G,H,I,J,K,L,M:Integer;
begin
    if IsEmpty then begin
        showmessage('数据不许为空');
        NO.SetFocus;
    end
    else begin
    //设置数据源为table
    DataSource1.DataSet := RoomTable;
    //读入单号
    A := StrToInt(NO.Text);
    //读入房台号
    B := StrToInt(Room_NO.Text);
    //读入人数
    C := StrToInt(People.Text);
    //读入酒菜
    D := StrToInt(Dinner_price.Text);
    //读入房间费
    E := StrToInt(Romm_price.Text);
    //读入应收金额
    F := StrToInt(Budget.Text);
    //读入实收金额
    G := StrToInt(Income.Text);
    //计算税收金额
    //税率可以由管理员设定
    H := Round(G*0.3);
    //更新税收金额框内容
    Tax.Text := IntToStr(H);
    //读入提成金额
    I := StrToInt(Discount.Text);
    //计算毛利
    J := G - H - I;
    //更新毛利框内容
    Profit.Text := IntToStr(J);
    //读入服务费
    K := StrtoInt(Service_price.Text);
    //读入成本
    L := StrtoInt(Cost.Text);
    //读入方式
    M := StrtoInt(Pay_type.Text);
    //对输入数据进行判断
    if F<G then begin
        messageDlg('请确定实收金额应该比应收金额小!',mtWarning,[mbOk],0);
        Exit;
    end;
    //增加新记录
    RoomTable.Append;
    RoomTable.FieldValues['NO'] := A;
    RoomTable.FieldValues['Room_NO'] := B;
    RoomTable.FieldValues['People'] := C;
    RoomTable.FieldValues['Dinner_price'] := D;
    RoomTable.FieldValues['Romm_price'] := E;
    RoomTable.FieldValues['Budget'] := F;
    RoomTable.FieldValues['Income'] := G;
    RoomTable.FieldValues['Tax'] := H;
    RoomTable.FieldValues['Discount'] := I;
    RoomTable.FieldValues['Profit'] := J;
    RoomTable.FieldValues['Service_price'] := K;
    RoomTable.FieldValues['Cost'] := L;
    RoomTable.FieldValues['Pay_type'] := M;
    //提交操作
    RoomTable.Post;
    end;
end;

procedure TRoomInputForm.IncomeRadioClick(Sender: TObject);
begin
    //设置数据源为query
    DataSource1.DataSet := roomQuery;
    roomQuery.Close;
    roomQuery.SQL.Clear;
    roomQuery.SQL.Add('select * from room order by Income');
    try
       roomQuery.Open;
    except
       roomQuery.ExecSQL;
    end;
end;

end.

⌨️ 快捷键说明

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