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

📄 setgroupunit.pas

📁 东华休闲山庄洗浴、餐饮、客房管理系统
💻 PAS
字号:
unit SetGroupUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, SUIImagePanel, SUIGroupBox, SUIRadioGroup, DB, DBClient,
  SUIButton, Grids, DBGrids, SUIDBCtrls, ExtCtrls, StdCtrls, Mask, DBCtrls;

type
  TSetGroupForm = class(TForm)
    suiPanel1: TsuiPanel;
    suiDBGrid2: TsuiDBGrid;
    btn1: TsuiButton;
    suiButton1: TsuiButton;
    suiButton2: TsuiButton;
    suiButton7: TsuiButton;
    suiButton8: TsuiButton;
    suiButton3: TsuiButton;
    ds1: TClientDataSet;
    ds2: TDataSource;
    suiCheckGroup1: TsuiCheckGroup;
    ds1GroupID: TIntegerField;
    wdstrngfldds1GroupName: TWideStringField;
    wdstrngfldds1Powers: TWideStringField;
    lbl1: TLabel;
    dbedtGroupID: TDBEdit;
    lbl2: TLabel;
    dbedtGroupName: TDBEdit;
    lbl3: TLabel;
    dbedtPowers: TDBEdit;
    procedure suiButton3Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ds1AfterScroll(DataSet: TDataSet);
    procedure FormCreate(Sender: TObject);
    procedure btn1Click(Sender: TObject);
    procedure suiButton1Click(Sender: TObject);
    procedure suiButton2Click(Sender: TObject);
    procedure suiButton8Click(Sender: TObject);
    procedure suiButton7Click(Sender: TObject);
    procedure suiCheckGroup1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  SetGroupForm: TSetGroupForm;

implementation

uses SetUserUnit, LoginUnit;

{$R *.dfm}

procedure TSetGroupForm.suiButton3Click(Sender: TObject);
begin
  close;
end;

procedure TSetGroupForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  self.ds1.Close;
  SetUserForm.Enabled:=True;
end;

procedure TSetGroupForm.ds1AfterScroll(DataSet: TDataSet);
var
  control:string;
  index:integer;
  flag:string;
begin
  control:=Self.ds1.fieldbyname('powers').AsString;
  for index:=0 to self.suiCheckGroup1.Items.Count-1 do
    Self.suiCheckGroup1.Checked[index]:=false;
  for index:=0 to self.suiCheckGroup1.Items.Count-1 do
    begin
      flag:=Copy(control,index+1,1);
      if flag='1' then
        Self.suiCheckGroup1.Checked[index]:=True;
    end;
end;

procedure TSetGroupForm.FormCreate(Sender: TObject);
begin
  self.ds1.Close;
  Self.ds1.Open;
end;

procedure TSetGroupForm.btn1Click(Sender: TObject);
var
  groupid:string;
  powers:string;
  index:integer;
begin
  self.ds1.Append;
  loginform.ExecuteSQL('select max(GroupID)+1 from groups');
  groupid:=loginform.dsQuery.Fields[0].AsString;
  loginform.dsQuery.Close;
  self.ds1.FieldByName('GroupID').AsString:=GroupID;
  for index:=1 to 27 do
    powers:=powers+'0';
  self.ds1.FieldByName('powers').AsString:=powers;
  self.dbedtGroupName.SetFocus;
end;

procedure TSetGroupForm.suiButton1Click(Sender: TObject);
var
  count:Integer;
  groupid:string;
begin
  groupid:=Self.dbedtGroupID.Text;
  loginform.ExecuteSQL('select count(*) from users where user_groupid='+groupid);
  count:=loginform.dsQuery.Fields[0].AsInteger;
  loginform.dsQuery.Close;
  if count>0 then
    MessageDlg('当前权限组【'+groupid+'】信息已被应用,不可以执行此操作!',mtConfirmation, [mbYes], 0)
  else
    begin
      self.ds1.Edit;
      self.dbedtGroupName.SetFocus;
    end;
end;

procedure TSetGroupForm.suiButton2Click(Sender: TObject);
var
  count:Integer;
  groupid:string;
begin
  groupid:=Self.dbedtGroupID.Text;
  loginform.ExecuteSQL('select count(*) from users where user_groupid='+groupid);
  count:=loginform.dsQuery.Fields[0].AsInteger;
  loginform.dsQuery.Close;
  if count>0 then
    MessageDlg('当前权限组【'+groupid+'】信息已被应用,不可以执行此操作!',mtConfirmation, [mbYes], 0)
  else
    if MessageDlg('当前权限组【'+groupid+'】信息,真的要执行删除操作吗?',mtConfirmation, [mbYes,mbNo], 0)=mrYes then
      begin
        self.ds1.Delete;
        self.ds1.ApplyUpdates(0);
        loginform.ExecuteSQL('insert into log '+
                             'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
                                     ''','''+loginform.userid+''','''+LoginForm.username+
                                     ''',''当前权限组【'+groupid+'】信息删除成功'')');
      end;
end;

procedure TSetGroupForm.suiButton8Click(Sender: TObject);
begin
  self.ds1.Cancel;
end;

procedure TSetGroupForm.suiButton7Click(Sender: TObject);
var
  groupid:string;
begin
  groupid:=Self.dbedtGroupID.Text;
  if self.ds1.State in [dsedit,dsinsert] then
    begin
      self.ds1.Post;
      self.ds1.ApplyUpdates(0);
      if self.ds1.State=dsedit then
        loginform.ExecuteSQL('insert into log '+
                             'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
                                     ''','''+loginform.userid+''','''+LoginForm.username+
                                     ''',''当前权限组【'+groupid+'】编辑成功'')')
      else
        loginform.ExecuteSQL('insert into log '+
                             'values('''+formatdatetime('yyyy-mm-dd hh:nn:ss',now)+
                                     ''','''+loginform.userid+''','''+LoginForm.username+
                                     ''',''当前权限组【'+groupid+'】添加成功'')');
    end
  else
    MessageDlg('当前数据表未处于添加或编辑状态,不可执行相关操作!',mtConfirmation, [mbYes], 0);
end;

procedure TSetGroupForm.suiCheckGroup1Click(Sender: TObject);
var
  index:integer;
  temp:string;
begin
  if self.ds1.State in [dsedit,dsinsert] then
    begin
      for index:=0 to suiCheckGroup1.Items.Count-1 do
        if suiCheckGroup1.Checked[index] then
          temp:=temp+'1'
        else
          temp:=temp+'0';
      self.ds1.FieldByName('powers').AsString:=temp;
    end;
end;

end.

⌨️ 快捷键说明

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