📄 frm_s_syspas.pas
字号:
unit frm_s_syspas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ModalForm, ComCtrls, Menus, StdCtrls, ExtCtrls, Grids, ValEdit,
ImgList, UErrDisplay, ModalForm1;
type
Tfrm_s_sys = class(TMyModalForm1)
tv: TTreeView;
lst1: TListView;
vledt: TValueListEditor;
lst2: TListView;
lst3: TListView;
lst4: TListView;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N3: TMenuItem;
ImageList1: TImageList;
N2: TMenuItem;
N4: TMenuItem;
procedure tvClick(Sender: TObject);
procedure vledtKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure lst1DblClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure lst2DblClick(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure lst1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure N4Click(Sender: TObject);
procedure lst2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure imgCloseButtonClick(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
procedure showIniInfo;
procedure SaveIniInfo;
procedure showUsrInfo;
procedure DelUsrInfo(sUsrName: string);
procedure showGroupInfo;
procedure DelGroup(sGroupName: string);
procedure showLoginInfo;
procedure showCjLogInfo;
public
{ Public declarations }
end;
var
frm_s_sys: Tfrm_s_sys;
IniSave: Boolean;
implementation
uses UGlobal, DM_DataModal, frm_s_userpas, frm_s_grouppas, UTUser, UTGroup;
var
Mode: integer;
NewItem: Tlistitem;
{$R *.dfm}
procedure Tfrm_s_sys.SaveIniInfo;
begin
//gtSysCs.sSysPath := vledt.Values['系统路径'];
gtSysCs.sZbDw := vledt.Values['制表单位'];
gtSysCs.sCjjh := vledt.Values['采集机号'];
gtSysCs.iFkPort := strtointdef(vledt.Values['发卡器端口'], 0);
gtSyscs.SaveSysCs;
end;
procedure Tfrm_s_sys.showCjLogInfo;
begin
N1.Enabled := False;
N2.Enabled := False;
N3.Enabled := False;
N4.Enabled := False;
lst4.BringToFront;
end;
procedure Tfrm_s_sys.showGroupInfo;
begin
N1.Enabled := False;
N2.Enabled := False;
N3.Enabled := True;
N4.Enabled := True;
lst2.BringToFront;
with winddata.PublicQuery do
begin
sql.Clear;
sql.Add('select * from Usr_GroupInfo ');
open;
lst2.Items.Clear;
while not eof do
begin
NewItem := lst2.Items.Add;
NewItem.Caption := fieldbyname('Name').asstring;
Newitem.SubItems.Add(fieldbyname('ms').asstring);
next;
end;
end;
end;
procedure Tfrm_s_sys.showIniInfo;
var
i: integer;
begin
N1.Enabled := False;
N2.Enabled := False;
N3.Enabled := False;
N4.Enabled := False;
vledt.BringToFront;
vledt.Values['系统路径'] := gtSysCs.sSysPath;
vledt.Values['制表单位'] := gtSysCs.sZbDw;
vledt.Values['采集机号'] := gtSysCs.sCjjh;
vledt.Values['发卡器端口'] := trim(inttostr(gtsyscs.iFkPort));
end;
procedure Tfrm_s_sys.showLoginInfo;
begin
N1.Enabled := False;
N2.Enabled := False;
N3.Enabled := False;
N4.Enabled := False;
lst3.BringToFront;
with winddata.PublicQuery do
begin
sql.Clear;
sql.Add('select * from usr_logs');
open;
lst3.Items.Clear;
while not eof do
begin
NewItem := lst3.Items.Add;
NewItem.Caption := fieldbyname('datetimein').asstring;
Newitem.SubItems.Add(fieldbyname('UsrName').asstring);
Newitem.SubItems.Add(fieldbyname('Doing').asstring);
next;
end;
end;
end;
procedure Tfrm_s_sys.showUsrInfo;
begin
N1.Enabled := True;
N2.Enabled := True;
N3.Enabled := False;
N4.Enabled := False;
lst1.BringToFront;
with winddata.PublicQuery do
begin
sql.Clear;
sql.Add('select * from usr_info');
open;
lst1.Items.Clear;
while not eof do
begin
NewItem := lst1.Items.Add;
NewItem.Caption := fieldbyname('UsrName').asstring;
Newitem.SubItems.Add(fieldbyname('AllName').asstring);
Newitem.SubItems.Add(fieldbyname('Ms').asstring);
next;
end;
end;
end;
procedure Tfrm_s_sys.tvClick(Sender: TObject);
begin
inherited;
if tv.Selected.Text = 'INI参数' then
showIniInfo
else
begin
if IniSave then
begin
IniSave := False;
if application.MessageBox('是否保存INI设置?', '用户补卡', mb_OkCancel + mb_iconquestion) = id_OK then SaveIniInfo;
end;
end;
if tv.Selected.Text = '操作员信息' then showUsrInfo;
if tv.Selected.Text = '操作员组信息' then showGroupInfo;
if tv.Selected.Text = '登陆日志' then showLoginInfo;
if tv.Selected.Text = '采集操作日志' then showCjLogInfo;
end;
procedure Tfrm_s_sys.vledtKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
IniSave := True;
end;
procedure Tfrm_s_sys.lst1DblClick(Sender: TObject);
begin
inherited;
if lst1.Selected <> nil then
begin
frm_s_user := Tfrm_s_user.Create(application);
frm_s_user.UserName := lst1.Selected.Caption;
frm_s_user.ShowModal;
frm_s_user.Free;
tvClick(self);
end;
end;
procedure Tfrm_s_sys.N1Click(Sender: TObject);
begin
inherited;
if lst1.Selected = nil then
begin
frm_s_user := Tfrm_s_user.Create(application);
frm_s_user.UserName := '';
frm_s_user.ShowModal;
frm_s_user.Free;
tvClick(self);
end;
end;
procedure Tfrm_s_sys.lst2DblClick(Sender: TObject);
begin
inherited;
if lst1.Selected = nil then
begin
if lst2.Selected <> nil then
begin
frm_s_group := Tfrm_s_group.Create(application);
frm_s_group.GroupName := lst2.Selected.Caption;
frm_s_group.ShowModal;
frm_s_group.Free;
end;
tvClick(self);
end;
end;
procedure Tfrm_s_sys.N3Click(Sender: TObject);
begin
inherited;
frm_s_group := Tfrm_s_group.Create(application);
frm_s_group.GroupName := '';
frm_s_group.ShowModal;
frm_s_group.Free;
tvClick(self);
end;
procedure Tfrm_s_sys.N2Click(Sender: TObject);
begin
inherited;
if lst1.Selected <> nil then DelUsrInfo(lst1.Selected.Caption);
end;
procedure Tfrm_s_sys.lst1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
if (key = 46) and (lst1.Selected <> nil) then
begin
DelUsrInfo(lst1.Selected.Caption);
end;
end;
procedure Tfrm_s_sys.DelUsrInfo(sUsrName: string);
var
User: TUser;
begin
try
User := TUser.create;
if User.GetUserInfo(sUsrName) then
User.DeleteUser;
tvClick(self);
finally
User.Free;
end;
end;
procedure Tfrm_s_sys.DelGroup(sGroupName: string);
var
Group: TGroup;
begin
try
Group := TGroup.create;
if Group.GetGroupInfo(SGroupName) then
Group.DeleteGroup;
tvClick(self);
finally
Group.Free;
end;
end;
procedure Tfrm_s_sys.N4Click(Sender: TObject);
begin
inherited;
if lst2.Selected <> nil then
DelGroup(lst2.Selected.Caption);
end;
procedure Tfrm_s_sys.lst2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
if (key = 46) and (lst2.Selected <> nil) then
begin
DelGroup(lst2.Selected.Caption);
end;
end;
procedure Tfrm_s_sys.imgCloseButtonClick(Sender: TObject);
begin
inherited;
if IniSave then
begin
IniSave := False;
if application.MessageBox('是否保存INI设置?', '用户补卡', mb_OkCancel + mb_iconquestion) = id_OK then SaveIniInfo;
end;
end;
procedure Tfrm_s_sys.FormShow(Sender: TObject);
begin
inherited;
showUsrInfo;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -