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

📄 returnbookfeeunit.pas

📁 是一个Delphi的教材管理系统,内容很全面详细
💻 PAS
字号:
unit ReturnBookFeeUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, StdCtrls, Buttons;

type
  TfrmReturnBookFee = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    ComboBox1: TComboBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    procedure FormCreate(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
  private
    procedure LoadData();{ Private declarations }
    procedure initializtionfrm();
  public
    { Public declarations }
  end;

var
  frmReturnBookFee: TfrmReturnBookFee;
  Cla:TADOTable;
  FeeHistory:TADOTable;
implementation

uses DataModuleUnit, MainUnit, ReturnFeePtrUnit;

{$R *.dfm}
//清空输入的内容
procedure TfrmReturnBookFee.initializtionfrm();
var
 i:integer;
begin
  for i:=0 to frmReturnBookFee.ComponentCount-1 do
  begin
      if frmReturnBookFee.Components[i] is TCustomEdit then
       (frmReturnBookFee.Components[i] as TCustomEdit).Text:='';
      if frmReturnBookFee.Components[i] is TCheckBox then
       (frmReturnBookFee.Components[i] as TCheckBox).Checked:=false;
      if frmReturnBookFee.Components[i] is TCombobox then
       (frmReturnBookFee.Components[i] as TCombobox).Text:='';
  end;
end;
 //加载班级信息
procedure TfrmReturnBookFee.LoadData();
var
  avgFee:real;
begin
  with Cla do
  begin
    Locate('Classname',ComboBox1.Text,[loCaseInsensitive]);
    edit1.Text:=FieldByName('Strength').AsString;  //人数
    Edit2.Text:=FieldByName('totalFee').AsString;       //总书费
    avgFee:=strtofloat(Edit2.Text)/ strtofloat(Edit1.Text);      //平均书费
    Edit3.Text:=floattostr(avgFee);
    Edit4.Text:=frmMain.OperatorInfo.OperatorName;//经办人    
    if avgFee>0 then  //如果书费为0 则不可以退费
      BitBtn1.Enabled:=true
    else
      BitBtn1.Enabled:=false;
  end;
end;
//加入班级信息
procedure TfrmReturnBookFee.FormCreate(Sender: TObject);
var
  i:integer;
begin

   FeeHistory:=TADOTable.Create(nil);  //书费历史记录
   FeeHistory.Connection:=frmDataModule.Connection;
   FeeHistory.TableName:='FeeHistory';

   Cla:=TADOTable.Create(nil); //班级表
   Cla.Connection:=frmDataModule.Connection;
   Cla.TableName:='Classes';
   Cla.Active:=true;
   for i:=0 to Cla.RecordCount-1 do
   begin
     comboBox1.Items.Add(Cla.Fields[0].Value);
     Cla.Next;
   end;
end;


procedure TfrmReturnBookFee.ComboBox1Change(Sender: TObject);
begin
  self.initializtionfrm;
  self.LoadData;
end;

procedure TfrmReturnBookFee.BitBtn1Click(Sender: TObject);
begin
try
  with Cla do  //修改班级总书费
  begin
    edit;
    FieldByName('TotalFee').Value:=0;
    post;
  end;
  with FeeHistory do  //把退费记录加入到FeeHistory表中
  begin
    Active:=true;
    Append;
    edit;
    FieldByName('ClassName').Value:=Combobox1.Text;
    FieldByName('LastFee').Value:=Edit2.Text;
    FieldByName('theFee').Value:=0-strtofloat(Edit2.Text);
    FieldByName('nowFee').Value:=0;
    FieldByName('handler').Value:=Edit4.Text;
    FieldByName('OperatorID').Value:=frmMain.OperatorInfo.OperatorID;
    FieldByName('About').Value:=Edit5.Text;
    FieldByName('Strength').Value:=Edit1.Text;
    post;
    close;
    Application.MessageBox('退费成功!','提示',mb_ok);    
  end;
except
  Application.MessageBox('退费失败!','出错提示',mb_ok);
end;

bitbtn2.Enabled:=true;//可以打印
bitbtn1.Enabled:=false;
end;

procedure TfrmReturnBookFee.BitBtn3Click(Sender: TObject);
begin
   close;
end;

procedure TfrmReturnBookFee.BitBtn2Click(Sender: TObject);
begin
  frmReturnFeePtr:=TfrmReturnFeeptr.Create(self);
  with frmReturnFeePtr do
  begin
    CR.className:=Combobox1.Text;
    CR.Strength:=Edit1.Text;
    CR.ReturnFee:=Edit2.Text;
    CR.AvgFee:=Edit3.Text;
    CR.Handler:=Edit4.Text;
    CR.About:=Edit5.Text;
    CR.OperatorID:=frmMain.OperatorInfo.OperatorID;
    CR.OperateTime:=DateTimeTostr(now);
    ShowModal;
  end;
end;

end.

⌨️ 快捷键说明

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