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

📄 unit_cardtrack.pas

📁 用delphi开发的美容院管理系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:
procedure Tfrm_cardtrack.DeleteCustomerCardCurrencyChangeInfo(isClear:boolean) ;
var
  temp_sql:string;
begin
  if sg_change.Cells [0,sg_change.Row ]='' then exit;

  if isClear then
    temp_sql:='delete from CustomerCardCurrencyChange '
  else
    temp_sql:='delete from CustomerCardCurrencyChange where change_no='+#39+sg_change.Cells [0,sg_change.Row ]+#39;

  if IsClear then
  begin
    if MessageBox(handle,'你确定要清空顾客卡金额变化记录吗?','提示',mb_Yesno+mb_iconquestion)<>IDYES then
      exit;
  end else
    if MessageBox(handle,'删除单条顾客卡金额变化记录将使金额变化日志混乱,确定继续吗?','提示',mb_Yesno+mb_iconquestion)<>IDYES then
      exit;

  with dmod.qrydata do
  begin
    close;
    SQL.Text :=temp_sql;
    ExecSQL;
  end;

  if isClear then
  begin
    StringGridClear(sg_change);
    sbtn_front.Enabled :=false;
    sbtn_back.Enabled := false;
  end else begin
    StringGridDelete(sg_change,sg_change.Row);
    if sg_change.Row = sg_change.RowCount - 1 then
    begin
      if sg_change.RowCount > 2 then
        sg_change.Row := sg_change.Row - 1
      else
        sbtn_back.Enabled := false;
    end;
    if sg_change.Row = 1 then sbtn_front.Enabled := false;
    if sg_change.Row = sg_change.RowCount - 2 then sbtn_back.Enabled := false;
  end;
end;

procedure Tfrm_cardtrack.DeleteCustomerCardCurrencyAddInfo(isClear:boolean) ;
var
  temp_sql:string;
begin
  if sg_Currency.Cells [0,sg_Currency.Row ]='' then exit;

  if isClear then
    temp_sql:='delete from CustomerCardCurrencyChange where add_or_reduced="0"'
  else
    temp_sql:='delete from CustomerCardCurrencyChange where add_or_reduced="0" and change_no='+#39+sg_Currency.Cells [0,sg_Currency.Row ]+#39;

  if IsClear then
  begin
    if MessageBox(handle,'你确定要清空顾客卡充值金额变化记录吗?','提示',mb_Yesno+mb_iconquestion)<>IDYES then
      exit;
  end else
    if MessageBox(handle,'删除单条顾客卡充值金额变化记录将使金额变化日志混乱,确定继续吗?','提示',mb_Yesno+mb_iconquestion)<>IDYES then
      exit;

  with dmod.qrydata do
  begin
    close;
    SQL.Text :=temp_sql;
    ExecSQL;
  end;

  if isClear then
  begin
    StringGridClear(sg_Currency);
    sbtn_front.Enabled :=false;
    sbtn_back.Enabled := false;
  end else begin
    StringGridDelete(sg_Currency,sg_Currency.Row);
    if sg_Currency.Row = sg_Currency.RowCount - 1 then
    begin
      if sg_Currency.RowCount > 2 then
        sg_Currency.Row := sg_Currency.Row - 1
      else
        sbtn_back.Enabled := false;
    end;
    if sg_Currency.Row = 1 then sbtn_front.Enabled := false;
    if sg_Currency.Row = sg_Currency.RowCount - 2 then sbtn_back.Enabled := false;
  end;
end;

procedure Tfrm_cardtrack.DeleteCustomerCardCurrencyCostInfo(isClear:boolean) ;
var
  temp_sql:string;
begin
  if sg_cost.Cells [0,sg_cost.Row ]='' then exit;

  if isClear then
    temp_sql:='delete from CustomerCardCurrencyChange where add_or_reduced="1"'
  else
    temp_sql:='delete from CustomerCardCurrencyChange where add_or_reduced="1" and change_no='+#39+sg_cost.Cells [0,sg_cost.Row ]+#39;

  if IsClear then
  begin
    if MessageBox(handle,'你确定要清空顾客卡消费金额变化记录吗?','提示',mb_Yesno+mb_iconquestion)<>IDYES then
      exit;
  end else
    if MessageBox(handle,'删除单条顾客卡消费金额变化记录将使金额变化日志混乱,确定继续吗?','提示',mb_Yesno+mb_iconquestion)<>IDYES then
      exit;

  with dmod.qrydata do
  begin
    close;
    SQL.Text :=temp_sql;
    ExecSQL;
  end;

  if isClear then
  begin
    StringGridClear(sg_cost);
    sbtn_front.Enabled :=false;
    sbtn_back.Enabled := false;
  end else begin
    StringGridDelete(sg_cost,sg_cost.Row);
    if sg_cost.Row = sg_cost.RowCount - 1 then
    begin
      if sg_cost.RowCount > 2 then
        sg_cost.Row := sg_cost.Row - 1
      else
        sbtn_back.Enabled := false;
    end;
    if sg_cost.Row = 1 then sbtn_front.Enabled := false;
    if sg_cost.Row = sg_cost.RowCount - 2 then sbtn_back.Enabled := false;
  end;
end;

{*************************************************}
procedure Tfrm_cardtrack.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  action:=cafree;
  frm_cardtrack:=nil;
end;

procedure Tfrm_cardtrack.sbtn_closeClick(Sender: TObject);
begin
  close;
end;

procedure Tfrm_cardtrack.sg_CardSelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  if ARow = sg_Card.RowCount - 1 then
    CanSelect:= false
  else
  begin
    sbtn_back.Enabled := true;
    sbtn_front.Enabled := true;
    if ARow = sg_Card.RowCount - 2 then sbtn_back.Enabled := false;
    if ARow = 1 then sbtn_front.Enabled := false;
    CanSelect := true;
  end;
end;

procedure Tfrm_cardtrack.sbtn_backClick(Sender: TObject);
begin
  if pagecontrol1.ActivePage = sht_card then
  begin
    if sg_card.Row > sg_card.RowCount-2 then
    begin
       sbtn_back.Enabled := false;
       exit;
    end;
    sbtn_front.Enabled := true;
    sg_card.Row := sg_card.Row+1 ;
  end else if pagecontrol1.ActivePage = sht_change then
  begin
    if sg_change.Row > sg_change.RowCount-2 then
    begin
       sbtn_back.Enabled := false;
       exit;
    end;
    sbtn_front.Enabled := true;
    sg_change.Row := sg_change.Row+1;
  end else if pagecontrol1.ActivePage = sht_currency then
  begin
    if sg_currency.Row > sg_currency.RowCount-2 then
    begin
       sbtn_back.Enabled := false;
       exit;
    end;
    sbtn_front.Enabled := true;
    sg_currency.Row := sg_currency.Row+1;
  end else if pagecontrol1.ActivePage = sht_cost then
  begin
    if sg_cost.Row > sg_cost.RowCount-2 then
    begin
       sbtn_back.Enabled := false;
       exit;
    end;
    sbtn_front.Enabled := true;
    sg_cost.Row := sg_cost.Row+1;
  end;

end;

procedure Tfrm_cardtrack.sbtn_frontClick(Sender: TObject);
begin
  if pagecontrol1.ActivePage = sht_card then
  begin
    if sg_card.Row=1 then
    begin
      sbtn_front.Enabled := false;
      exit;
    end;
    sbtn_back.Enabled := true;
    sg_card.Row := sg_card.Row-1;
  end else if pagecontrol1.ActivePage = sht_change then
  begin
    if sg_change.Row=1 then
    begin
      sbtn_front.Enabled := false;
      exit;
    end;
    sbtn_back.Enabled := true;
    sg_change.Row := sg_change.Row-1;
  end else if pagecontrol1.ActivePage = sht_currency then
  begin
    if sg_currency.Row=1 then
    begin
      sbtn_front.Enabled := false;
      exit;
    end;
    sbtn_back.Enabled := true;
    sg_currency.Row := sg_currency.Row-1;
  end else if pagecontrol1.ActivePage = sht_cost then
  begin
    if sg_cost.Row=1 then
    begin
      sbtn_front.Enabled := false;
      exit;
    end;
    sbtn_back.Enabled := true;
    sg_cost.Row := sg_cost.Row-1;
  end;
end;

procedure Tfrm_cardtrack.sg_currencySelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  if ARow = sg_Currency.RowCount - 1 then
    CanSelect:= false
  else
  begin
    sbtn_back.Enabled := true;
    sbtn_front.Enabled := true;
    if ARow = sg_Currency.RowCount - 2 then sbtn_back.Enabled := false;
    if ARow = 1 then sbtn_front.Enabled := false;
    CanSelect := true;
  end;
end;

procedure Tfrm_cardtrack.sbtn_clearClick(Sender: TObject);
begin
  if pagecontrol1.ActivePage = sht_Card then
    DeleteCustomerCardChangeInfo(true)
  else if pagecontrol1.ActivePage = sht_change then
    DeleteCustomerCardCurrencyChangeInfo(true)
  else if pagecontrol1.ActivePage = sht_Currency then
    DeleteCustomerCardCurrencyAddInfo(true)
  else if pagecontrol1.ActivePage = sht_cost then
    DeleteCustomerCardCurrencyCostInfo(true)
end;

procedure Tfrm_cardtrack.sbtn_deleteClick(Sender: TObject);
begin
  if pagecontrol1.ActivePage = sht_Card then
    DeleteCustomerCardChangeInfo(false)
  else if pagecontrol1.ActivePage = sht_change then
    DeleteCustomerCardCurrencyChangeInfo(false)
  else if pagecontrol1.ActivePage = sht_Currency then
    DeleteCustomerCardCurrencyAddInfo(false)
  else if pagecontrol1.ActivePage = sht_cost then
    DeleteCustomerCardCurrencyCostInfo(false)
end;

procedure Tfrm_cardtrack.sg_changeSelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  if ARow = sg_Change.RowCount - 1 then
    CanSelect:= false
  else
  begin
    sbtn_back.Enabled := true;
    sbtn_front.Enabled := true;
    if ARow = sg_Change.RowCount - 2 then sbtn_back.Enabled := false;
    if ARow = 1 then sbtn_front.Enabled := false;
    CanSelect := true;
  end;
end;

procedure Tfrm_cardtrack.sg_CostSelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  if ARow = sg_Cost.RowCount - 1 then
    CanSelect:= false
  else
  begin
    sbtn_back.Enabled := true;
    sbtn_front.Enabled := true;
    if ARow = sg_Cost.RowCount - 2 then sbtn_back.Enabled := false;
    if ARow = 1 then sbtn_front.Enabled := false;
    CanSelect := true;
  end;
end;

end.

⌨️ 快捷键说明

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