📄 manageruser.pas
字号:
unit ManagerUser;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ComCtrls, ImgList,ADODB;
type
TfrmManagerUser = class(TForm)
lvUser: TListView;
PopupMenu1: TPopupMenu;
userNew: TMenuItem;
userDel: TMenuItem;
userPower: TMenuItem;
userPass: TMenuItem;
ImageList1: TImageList;
userChange: TMenuItem;
procedure FormShow(Sender: TObject);
procedure PopupMenu1Popup(Sender: TObject);
procedure userNewClick(Sender: TObject);
procedure userDelClick(Sender: TObject);
procedure userPowerClick(Sender: TObject);
procedure userPassClick(Sender: TObject);
procedure userChangeClick(Sender: TObject);
private
{ Private declarations }
public
procedure Show_AllUser;
{ Public declarations }
end;
var
frmManagerUser: TfrmManagerUser;
implementation
uses dbConn, UserAdd, UserPower, UserChangeName;
{$R *.dfm}
procedure TfrmManagerUser.FormShow(Sender: TObject);
begin
//将各个用户都显示出来
Show_AllUser;
end;
//*****************************************
// update_pwd() 更改密码操作
//*****************************************
procedure TfrmManagerUser.Show_AllUser ;
var
rs:TADODataSet;
i:integer;
username:String;
ListItem:TLIstItem;
begin
lvUser.Items.Clear ;
try
rs:=TADODataSet.Create(nil);
rs.Connection:=cn_public;
rs.CommandText:='select USERID,USERNAME FROM photocheck.P_USER';
rs.Open;
if rs.RecordCount<>0 then
begin
rs.First ;
while not rs.Recordset.EOF do
begin
username:=rs.Recordset.Fields[1].Value ;
ListItem:=lvUser.Items.Add;
ListItem.Caption := username;
ListItem.ImageIndex := 0;
rs.Recordset.MoveNext;
end;
end;
finally
rs.Close ;
end;
end;
procedure TfrmManagerUser.PopupMenu1Popup(Sender: TObject);
var
Point:TPoint;
ListItem:TListItem;
x,y:Integer;
begin
y:=frmManagerUser.Top+15;
x:=frmManagerUser.Left;
GetCursorPos(Point);
ListItem:=lvUser.GetItemAt(Point.X-x,Point.Y-y);
if ListItem<>nil then
begin
userNew.Enabled:=False;
userDel.Enabled:=True;
userPower.Enabled:=True;
userPass.Enabled:=true;
userChange.Enabled := true;
end
else begin
userNew.Enabled:=True;
userDel.Enabled:=False;
userPower.Enabled:=False;
userPass.Enabled:=False;
userChange.Enabled := false;
end;
end;
procedure TfrmManagerUser.userNewClick(Sender: TObject);
begin
Application.CreateForm(TfrmUserAdd, frmUserAdd);
frmUserAdd.ShowModal;
end;
procedure TfrmManagerUser.userDelClick(Sender: TObject);
var
ListItem:TListItem;
sql:String;
rs:TADODataSet;
begin
ListItem:=lvUser.Selected ;
//selected username
CurrentByOperator:=ListItem.Caption ;
if messagedlg('你确定要删除这个'+CurrentByOperator+'用户吗?',mtConfirmation,[mbYes,mbno],0)=mrYes then
begin
sql:='DELETE FROM photocheck.P_USER WHERE USERNAME='''+CurrentByOperator+'''';
dbConn.Execute_SQL(sql);
rs:=TADODataSet.Create(nil);
rs.Connection:=cn_public;
rs.CommandText :='SELECT USERID FROM photocheck.P_USER WHERE USERNAME='''+CurrentByOperator+'''';
rs.Open ;
if not rs.Recordset.EOF then
begin
CurrentByOperatorID:=rs.Recordset.Fields[0].Value ;
end;
sql:='';
sql:='DELETE FROM photocheck.P_USERPOWER WHERE USERID='''+CurrentByOperatorID+'''';
dbConn.Execute_SQL(sql);
ListItem.Delete ;
messagebox(0,'删除成功!','用户删除',64);
end
else
begin
exit;
end;
end;
//---------------
procedure TfrmManagerUser.userPowerClick(Sender: TObject);
VAR
ListItem:TListItem;
begin
ListItem:=lvUser.Selected ;
//selected username
CurrentByOperator:=ListItem.Caption ;
Application.CreateForm(TfrmUserPower,frmUserPower);
frmUserPower.ShowModal ;
end;
//重新设置密码
procedure TfrmManagerUser.userPassClick(Sender: TObject);
var
ListItem:TListItem;
sql:String;
begin
ListItem:=lvUser.Selected ;
CurrentByOperator:=ListItem.Caption ;
sql:='UPDATE photocheck.P_USER SET PASSWORD=''000000'' WHERE USERNAME='''+CurrentByOperator+'''';
dbConn.Execute_SQL(sql);
messagebox(0,'已经重新设置为原始密码!','用户管理',64);
end;
//更改用户名称
procedure TfrmManagerUser.userChangeClick(Sender: TObject);
VAR
ListItem:TListItem;
begin
ListItem:=lvUser.Selected ;
//selected username
CurrentByOperator:=ListItem.Caption ;
Application.CreateForm(TfrmUserChangeName,frmUserChangeName);
frmUserChangeName.ShowModal ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -