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

📄 frm_s_userpas.pas

📁 是一个用delphi设计的考勤系统
💻 PAS
字号:
unit frm_s_userpas;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ModalForm, StdCtrls, ComCtrls, Menus, ExtCtrls, YLabelButton,
  ChangeImage, CheckLst, ImgList, UErrDisplay, ModalForm1;

type
  Tfrm_s_user = class(TMyModalForm1)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    ch1: TCheckBox;
    ch2: TCheckBox;
    ch3: TCheckBox;
    edtqc: TEdit;
    edtms: TEdit;
    Label4: TLabel;
    edtpassword: TEdit;
    Label5: TLabel;
    edtpassword1: TEdit;
    Label6: TLabel;
    BtnNew: TChangeImg;
    LbtnNew: TLabelB;
    BtnDelete: TChangeImg;
    LBtnDelete: TLabelB;
    BtnOk: TChangeImg;
    LBtnOk: TLabelB;
    BtnExit: TChangeImg;
    LBtnExit: TLabelB;
    edtUserName: TEdit;
    ltbGroup: TListBox;
    Image2: TImage;
    Cmbbm: TComboBox;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure ch2Click(Sender: TObject);
    procedure BtnOkClick(Sender: TObject);
    procedure BtnExitClick(Sender: TObject);
    procedure BtnDeleteClick(Sender: TObject);
    procedure BtnNewClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
    procedure IniForm;
  public
    UserName: string;
    { Public declarations }
  end;

var
  frm_s_user: Tfrm_s_user;

implementation

uses UTUser,DM_DataModal,frm_s_setgrouppas;
var
  User: TUser;


{$R *.dfm}

procedure Tfrm_s_user.FormCreate(Sender: TObject);
var sqlstr:string;
begin
  inherited;
  User := TUser.create;
  sqlstr:='select distinct bjbh,bjmc from zx_s_bjxx order by bjbh';
  with winddata.PublicQuery do
  begin
    close;
    sql.Clear;
    sql.Add(sqlstr);
    open;
    cmbbm.Clear;
    cmbbm.Items.Add('');
    while not eof do
    begin
      cmbbm.Items.Add(fieldbyname('bjmc').AsString);
      next;
    end;
  end;
end;

procedure Tfrm_s_user.FormDestroy(Sender: TObject);
begin
  inherited;
  User.Free;
end;

procedure Tfrm_s_user.ch2Click(Sender: TObject);
begin
  inherited;
  ch1.Enabled := not ch2.Checked;
end;

procedure Tfrm_s_user.IniForm;
begin
  PageControl1.ActivePageIndex := 0;
  edtusername.Text := '';
  edtqc.Text := '';
  edtms.Text := '';
  cmbbm.Text:='';
  ch1.Checked := True;
  ch2.Checked := False;
  ch3.Checked := False;
end;

procedure Tfrm_s_user.BtnOkClick(Sender: TObject);
begin
  inherited;
  if edtpassword.Text <> edtpassword1.Text then
  begin
    application.MessageBox('密码不一致!', '添加用户', mb_ok + mb_iconwarning);
    exit;
  end;
  user.UsrName := edtusername.Text;
  user.AllName := edtqc.Text;
  user.Cxbmtj:=cmbbm.Text;
  user.Ms := edtms.Text;
  user.PassWord := trim(edtpassword.Text);
  User.RPassWord := 0;
  if ch1.Checked then
    user.RpassWord := -1;
  if ch2.Checked then
    user.RpassWord := 1;
  if ch3.Checked then
    user.Stop := 1
  else
    user.Stop := 0;
  if edtusername.Enabled then
    user.AddUser
  else
    user.UpdateUserInfo;
  if user.RetVal <> 0 then
  begin
    application.MessageBox(pchar(user.RetMsg), '添加用户', mb_ok + mb_iconwarning);
    exit;
  end;
  close;
end;

procedure Tfrm_s_user.BtnExitClick(Sender: TObject);
begin
  inherited;
  close;
end;

procedure Tfrm_s_user.BtnDeleteClick(Sender: TObject);
begin
  inherited;
  if ltbgroup.ItemIndex > -1 then
  begin
    user.GroupName := ltbgroup.Items[ltbgroup.itemindex];
    user.DelUserToGroup;
    ltbgroup.Items.Delete(ltbgroup.itemindex);
  end;
end;

procedure Tfrm_s_user.BtnNewClick(Sender: TObject);
var
  i: integer;
  j: integer;
  b: boolean;
begin
  inherited;
  frm_s_setgroup := Tfrm_s_setgroup.Create(self);
  frm_s_setgroup.ShowModal;
  for i := 0 to frm_s_setgroup.ltbgroup.Items.Count - 1 do
  begin
    user.GroupName := frm_s_setgroup.ltbgroup.Items[i];
    user.AddUserToGroup;
    b := True;
    for j := 0 to ltbgroup.items.count - 1 do
    begin
      if ltbgroup.items[j] = user.groupname then b := False;
    end;
    if b then ltbgroup.Items.Add(user.GroupName);
  end;
  frm_s_setgroup.Free;
end;

procedure Tfrm_s_user.FormShow(Sender: TObject);
begin
  inherited;
  IniForm;
  if trim(UserName) <> '' then
  begin
    User.GetUserInfo(UserName);
    edtUserName.Text := user.UsrName;
    edtusername.Enabled := False;
    edtqc.Text := user.AllName;
    edtms.Text := user.Ms;
    cmbbm.Text:= user.Cxbmtj;
    edtpassword.Text := copy(user.PassWord+'                ',1,16);
    edtpassword1.Text :=copy(user.PassWord+'                ',1,16);
    ch2.Checked:=False;
    ch1.Checked:=False;
    case user.RpassWord of
      -1:
        ch1.Checked := True;
      0:
        ch1.Checked:=False;
      1:
        begin
          ch2.Checked := True;
          ch1.Enabled := False;
        end;
    end;
    ch3.Checked := user.Stop = 1;
    ltbgroup.Items := user.GroupList;
  end
  else
  begin
    PageControl1.Pages[1].Destroy;
    edtpassword.Text := '';
    edtpassword1.Text := '';
  end;
end;

end.

⌨️ 快捷键说明

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