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

📄 mainform.pas

📁 双鱼林网店销售管理系统+ 想轻松管理你的网店客户信息吗? 想轻松统计每个月的销售情况吗? 想随时随意查询某个地区的销售情况吗? 双鱼林自己也在网上开了自己的网点
💻 PAS
字号:
unit MainForm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls, DBCtrls, Mask, Menus, jpeg,
  ExtCtrls, GoodClassManage, GoodManage, SellInfoAdd, Introduction;

type
  TSellMainForm = class(TForm)
    DBGrid1: TDBGrid;
    ADOQuery1: TADOQuery;
    DataSource1: TDataSource;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    DBCB_goodClassName: TDBComboBox;
    DBEdt_goodName: TDBEdit;
    GroupBox2: TGroupBox;
    Label3: TLabel;
    DBEdt_sellWay: TDBEdit;
    Label4: TLabel;
    DBCB_Year: TDBComboBox;
    DBCB_Day: TDBComboBox;
    DBCB_Month: TDBComboBox;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    DBEdt_sellMoney: TDBEdit;
    Label9: TLabel;
    GroupBox3: TGroupBox;
    DBEdt_customerName: TDBEdit;
    Label11: TLabel;
    DBEdt_customerTelephone: TDBEdit;
    Label12: TLabel;
    DBEdt_customerQQ: TDBEdit;
    Label10: TLabel;
    Label13: TLabel;
    DBEdt_customerAddress: TDBEdit;
    Label14: TLabel;
    DBEdt_customerEmail: TDBEdit;
    Label15: TLabel;
    Label16: TLabel;
    LabelTotalMoney: TLabel;
    Label17: TLabel;
    DBMemo: TDBMemo;
    GroupBox4: TGroupBox;
    Btn_Update: TButton;
    Btn_Delete: TButton;
    GroupBox5: TGroupBox;
    CheckBox_goodName: TCheckBox;
    Edt_SearchGoodName: TEdit;
    CB_SearchGoodClassName: TComboBox;
    CheckBox_goodClassName: TCheckBox;
    CheckBox_Year: TCheckBox;
    CB_SearchYear: TComboBox;
    CheckBox_Month: TCheckBox;
    CB_SearchMonth: TComboBox;
    CheckBox_Day: TCheckBox;
    CB_SearchDay: TComboBox;
    CheckBox_Address: TCheckBox;
    Edt_SearchAddress: TEdit;
    Btn_Search: TButton;
    GoodClassADOQuery: TADOQuery;
    MainMenu1: TMainMenu;
    S1: TMenuItem;
    X1: TMenuItem;
    S2: TMenuItem;
    S3: TMenuItem;
    L1: TMenuItem;
    I1: TMenuItem;
    I2: TMenuItem;
    Image1: TImage;
    H1: TMenuItem;
    Btn_Add: TButton;
    procedure Btn_AddClick(Sender: TObject);
    procedure H1Click(Sender: TObject);
    procedure Btn_DeleteClick(Sender: TObject);
    procedure Btn_UpdateClick(Sender: TObject);
    procedure CheckBox_MonthClick(Sender: TObject);
    procedure I2Click(Sender: TObject);
    procedure I1Click(Sender: TObject);
    procedure L1Click(Sender: TObject);
    procedure X1Click(Sender: TObject);
    procedure Btn_SearchClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure CheckBox_AddressClick(Sender: TObject);
    procedure CheckBox_DayClick(Sender: TObject);
    procedure CheckBox_goodClassNameClick(Sender: TObject);
    procedure CheckBox_YearClick(Sender: TObject);
    procedure CheckBox_goodNameClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure CalulateTotalMoney;
    procedure Init;
  end;

var
  SellMainForm: TSellMainForm;

implementation

{$R *.dfm}

procedure TSellMainForm.CheckBox_AddressClick(Sender: TObject);
begin
  self.Edt_SearchAddress.Enabled := self.CheckBox_Address.Checked;
end;

procedure TSellMainForm.CheckBox_DayClick(Sender: TObject);
begin
  self.CB_SearchDay.Enabled := self.CheckBox_Day.Checked;
end;

procedure TSellMainForm.CheckBox_goodClassNameClick(Sender: TObject);
begin
  self.CB_SearchGoodClassName.Enabled := self.CheckBox_goodClassName.Checked;
end;

procedure TSellMainForm.CheckBox_goodNameClick(Sender: TObject);
begin
  self.Edt_SearchGoodName.Enabled := self.CheckBox_goodName.Checked;
end;

procedure TSellMainForm.CheckBox_MonthClick(Sender: TObject);
begin
  self.CB_SearchMonth.Enabled := self.CheckBox_Month.Checked;
end;

procedure TSellMainForm.CheckBox_YearClick(Sender: TObject);
begin
  self.CB_SearchYear.Enabled := self.CheckBox_Year.Checked;
end;

procedure TSellMainForm.FormShow(Sender: TObject);
begin
  self.Init;
  self.CalulateTotalMoney;
end;

procedure TSellMainForm.H1Click(Sender: TObject);
var introductionForm: TIntroductionForm;
begin
  introductionForm := TIntroductionForm.Create(self);
  introductionForm.ShowModal;
end;

procedure TSellMainForm.Btn_AddClick(Sender: TObject);
begin
  self.I2Click(Sender);
end;

procedure TSellMainForm.Btn_DeleteClick(Sender: TObject);
begin
  if(IDYES = MessageBox(self.Handle,'确认删除当前销售信息吗?','删除提示',MB_YESNO)) then
  begin
    try
      self.ADOQuery1.Delete;
      showMessage('销售信息删除成功!');
      self.CalulateTotalMoney;
    except
      showMessage('销售信息删除时发生错误!');
    end;
  end;
end;

procedure TSellMainForm.Btn_SearchClick(Sender: TObject);
var sqlString: string;
var searchFlag: bool;
begin
  sqlString := 'select * from sellInfo ';
  searchFlag := False;
  if self.CheckBox_goodName.Checked then
  begin
    sqlString := sqlString + 'where goodName like ''%' + self.Edt_SearchGoodName.Text + '%''';
    searchFlag := True;
  end;

  if self.CheckBox_Year.Checked then
  begin
    if not(searchFlag) then
    begin
      sqlString := sqlString + 'where sellYear = ' + self.CB_SearchYear.Text;
      searchFlag := True;
    end
    else
      sqlString := sqlString + ' and sellYear = ' + self.CB_SearchYear.Text;
  end;

  if self.CheckBox_Month.Checked then
  begin
    if not(searchFlag) then
    begin
      sqlString := sqlString + 'where sellMonth = ' + self.CB_SearchMonth.Text;
      searchFlag := True;
    end
    else
      sqlString := sqlString + ' and sellMonth = ' + self.CB_SearchMonth.Text;
  end;

  if self.CheckBox_Day.Checked then
  begin
    if not(searchFlag) then
    begin
      sqlString := sqlString + 'where sellDay = ' + self.CB_SearchDay.Text;
      searchFlag := True;
    end
    else
      sqlString := sqlString + ' and sellDay = ' + self.CB_SearchDay.Text;
  end;

  if self.CheckBox_goodClassName.Checked then
  begin
    if not(searchFlag) then
    begin
      sqlString := sqlString + 'where goodClassName like ''%' + self.CB_SearchGoodClassName.Text + '%''';
      searchFlag := True;
    end
    else
      sqlString := sqlString + ' and goodClassName like ''%' + self.CB_SearchGoodClassName.Text + '%''';
  end;

  if self.CheckBox_Address.Checked then
  begin
    if not(searchFlag) then
    begin
      sqlString := sqlString + 'where customerAddress like ''%' + self.Edt_SearchAddress.Text + '%''';
    end
    else
      sqlString := sqlString + ' and customerAddress like ''%' + self.Edt_SearchAddress.Text + '%''';
  end;

  self.ADOQuery1.SQL.Clear;
  self.ADOQuery1.SQL.Add(sqlString);
  if self.ADOQuery1.Active then
    self.ADOQuery1.Close;
  self.ADOQuery1.Open;

  self.CalulateTotalMoney;
end;

procedure TSellMainForm.Btn_UpdateClick(Sender: TObject);
begin
  if (IDYES = MessageBox(self.Handle,'确认更新当前记录信息吗?','更新提示',MB_YESNO)) then
  begin
    self.ADOQuery1.Edit;
    self.ADOQuery1.FieldByName('goodName').AsString := self.DBEdt_goodName.Text;
    self.ADOQuery1.FieldByName('goodClassName').AsString := self.DBCB_goodClassName.Text;
    self.ADOQuery1.FieldByName('customerName').AsString := self.DBEdt_customerName.Text;
    self.ADOQuery1.FieldByName('customerAddress').AsString := self.DBEdt_customerAddress.Text;
    self.ADOQuery1.FieldByName('customerTelephone').AsString := self.DBEdt_customerTelephone.Text;
    self.ADOQuery1.FieldByName('customerQQ').AsString := self.DBEdt_customerQQ.Text;
    self.ADOQuery1.FieldByName('customerEmail').AsString := self.DBEdt_customerEmail.Text;
    self.ADOQuery1.FieldByName('sellWay').AsString := self.DBEdt_sellWay.Text;
    self.ADOQuery1.FieldByName('sellYear').AsInteger := StrToInt(self.DBCB_Year.Text);
    self.ADOQuery1.FieldByName('sellMonth').AsInteger := StrToInt(self.DBCB_Month.Text);
    self.ADOQuery1.FieldByName('sellDay').AsInteger := StrToInt(self.DBCB_Day.Text);
    self.ADOQuery1.FieldByName('sellMoney').AsFloat := StrToFloat(self.DBEdt_sellMoney.Text);
    self.ADOQuery1.FieldByName('memo').AsString := self.DBMemo.Text;
    self.ADOQuery1.Post;
    showMessage('销售信息更新成功!');
    self.CalulateTotalMoney;
  end;

end;

procedure TSellMainForm.CalulateTotalMoney;
var totalMoney: Single;
begin
  totalMoney := 0.0;
  self.ADOQuery1.First;
  while (not self.ADOQuery1.Eof) do
  begin
    totalMoney := totalMoney + self.ADOQuery1.FieldByName('sellMoney').AsFloat;
    self.ADOQuery1.Next;
  end;
  self.LabelTotalMoney.Caption := FloatToStr(totalMoney);
  self.ADOQuery1.First;
end;

procedure TSellMainForm.I1Click(Sender: TObject);
var goodManageForm: TGoodManageForm;
begin
  goodManageForm := TGoodManageForm.Create(self);
  goodManageForm.ShowModal;
end;

procedure TSellMainForm.I2Click(Sender: TObject);
var sellInfoAddForm: TSellInfoAddForm;
begin
  sellInfoAddForm := TSellInfoAddForm.Create(self);
  sellInfoAddForm.ShowModal;
end;

procedure TSellMainForm.Init;
var i: Integer;
begin
  self.Left := Trunc((screen.Width - self.Width)/2);
  self.Top := Trunc((screen.Height - self.Height)/2);
  for i := 2007 to 2020 do
  begin
    self.DBCB_Year.Items.Add(IntToStr(i));
    self.CB_SearchYear.Items.Add(IntToStr(i));
  end;
  self.CB_SearchYear.ItemIndex := 0;
  for i  := 1 to 12 do
  begin
    self.DBCB_Month.Items.Add(IntToStr(i));
    self.CB_SearchMonth.Items.Add(inttostr(i));
  end;
  self.CB_SearchMonth.ItemIndex := 0;
  for i := 1 to 31  do
  begin
    self.DBCB_Day.Items.Add(inttostr(i));
    self.CB_SearchDay.Items.Add(inttostr(i));
  end;
  self.CB_SearchDay.ItemIndex := 0;

  self.GoodClassADOQuery.SQL.Clear;
  self.GoodClassADOQuery.SQL.Add('select goodClassName from goodClassInfo');
  if self.GoodClassADOQuery.Active then
    self.GoodClassADOQuery.Close;
  self.GoodClassADOQuery.Open;

  while not(self.GoodClassADOQuery.Eof) do
  begin
    self.DBCB_goodClassName.Items.Add(self.GoodClassADOQuery.FieldByName('goodClassName').AsString);
    self.CB_SearchGoodClassName.Items.Add(self.GoodClassADOQuery.FieldByName('goodClassName').AsString);
    self.GoodClassADOQuery.Next;
  end;
  self.CB_SearchGoodClassName.ItemIndex := 0;
  
end;

procedure TSellMainForm.L1Click(Sender: TObject);
var goodClassManageForm: TGoodClassManageForm;
begin
  goodClassManageForm := TGoodClassManageForm.Create(nil);
  goodClassManageForm.ShowModal;
end;

procedure TSellMainForm.X1Click(Sender: TObject);
begin
  Application.Terminate;
end;

end.

⌨️ 快捷键说明

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