📄 main.pas
字号:
end;
procedure TMainForm.ModifyGroup1Click(Sender: TObject);
var
dlgGroups: TdlgGroups;
Node:TtreeNode;
sCapt:string;
rows:variant;
role,str:TStrings;
begin
Node:=tvOrg.Selected;
if (Node=nil) or (Node.Parent=nil) then Exit;
sCapt:=Node.Parent.Text;
if (sCapt<>'部门') then exit;
dlgGroups:=TdlgGroups.Create(self);
rows:=sup.PS_Get_groups(Node.Text);
str:=Get_RowRecords(rows,0);
rows:=sup.PS_Get_Users('');
role:=Get_ColRecords(rows,1);
with dlgGroups do begin
edOldGroup.Text:=str.Strings[2];
edGroupName.Text:=str.Strings[2];
// edGroupdes.Text:=str.Strings[3];
edGroupDes.items:=role;
edgroupDes.itemindex:=edgroupDes.items.indexof(str.Strings[3]);
edCreator.Text:=str.Strings[5];
edDate.Text:=str.Strings[6];
if ShowModal=mrOK then begin
if IsChange then begin
if sup.PS_Mod_Groups(edGroupName.Text,edGroupDes.Text,edOldGroup.Text) <0 then begin
Showmessage(sup.PS_LastError);
Exit;
end;
freshtv(2);
tbRefresh.Click;
end;
end;
end;
end;
procedure TMainForm.tbclealogClick(Sender: TObject);
begin
if not sup.PS_Is_Admin then exit;
if MessageDlg('你想删除日志吗?',
mtConfirmation, [mbYes, mbNo], 0) = mrNo then Exit;
sup.PS_Del_Logs('');
lv.Columns.Clear;
lv.Items.clear;
end;
procedure TMainForm.pmiUserClick(Sender: TObject);
var frmUsers:TfrmAS_Users;
//rows:Olevariant;
begin
frmUsers:=TfrmAS_Users.Create(self);
//frmUsers.tsRights.TabVisible:=TRUE;
if frmUsers.ShowModal(true,false)=mrOK then begin
with frmUsers do begin
while sup.ps_ins_Users(eUsername.text,eDescription.Text,ePassword.Text,cbgroup.text,SpinEdit1.Value,cbRights.Text,'Active')<0 do begin
showmessage(sup.PS_LastError);
if frmUsers.ShowModal(true,false)<>mrOK then exit;
end;
freshtv(3);
tbRefresh.Click;
end;
end;
end;
procedure TMainForm.Delete1Click(Sender: TObject);
var Node:TtreeNode;
sCapt:string;
begin
Node:=tvOrg.Selected;
if (Node=nil) or (Node.Parent=nil) then Exit;
sCapt:=Node.Parent.Text;
if (sCapt='用户') then begin
if MessageDlg('你想删除用户:'+''''+Node.Text+''''+'吗?',
mtConfirmation, [mbYes, mbNo], 0) = mrNo then Exit;
if sup.PS_Del_User(Node.Text)<0 then begin
Showmessage(sup.PS_LastError);
end else begin
freshtv(3);
tbRefresh.Click;
end;
end;
end;
procedure TMainForm.SetPassword1Click(Sender: TObject);
var
PasswordDlg: TPasswordDlg;
Node:TtreeNode;
sCapt:string;
begin
Node:=tvOrg.Selected;
if (Node=nil) or (Node.Parent=nil) then Exit;
sCapt:=Node.Parent.Text;
if (sCapt<>'用户') then exit;
PasswordDlg:=TPasswordDlg.Create(self);
if PasswordDlg.ShowModal=mrOK then begin
if sup.PS_ChangePwd(Node.Text,passworddlg.eOldPwd.text,PasswordDlg.Password.text)<0 then begin
Showmessage(sup.PS_LastError);
end else begin
tbRefresh.Click;
end;
end;
end;
// Modify User
procedure TMainForm.Modify1Click(Sender: TObject);
var frmUsers:TfrmAS_Users;
rows,ole:Olevariant;
Node:TtreeNode;
sCapt:string;
l_rows:TStrings;
begin
frmUsers:=TfrmAS_Users.Create(self);
//frmUsers.tsRights.TabVisible:=false;
Node:=tvOrg.Selected;
if (Node=nil) or (Node.Parent=nil) then Exit;
sCapt:=Node.Parent.Text;
if (sCapt<>'用户') then exit;
rows:=sup.PS_Get_Users(Node.Text);
l_rows:=Get_RowRecords(rows,0);
with frmUsers do begin
eUsername.text:=l_rows[1];
eDescription.Text:=l_rows[2];
ePassword.Enabled:=false;
edConform.Enabled:=false;
ePassword.Text:=l_rows[3];
edId.Text:=l_rows[0];
if l_rows[8]='' then rbNevExp.Checked:=true
else begin
rbExpired.Checked:=true;
SpinEdit1.value:=strToInt(l_rows[9]);
end;
cbRights.ItemIndex:=cbRights.Items.IndexOf(l_rows[10]);
cbStatus.ItemIndex:=cbStatus.Items.IndexOf(l_rows[11]);
edzw.text:=l_rows[4];
end;
if frmUsers.ShowModal(false,true)=mrOK then begin
if not frmUsers.isChange then exit;
with frmUsers do begin
ole:= VarArrayCreate([0,11],varVariant);
Ole[0]:=l_rows[0];
Ole[1]:=eUsername.Text;
Ole[2]:=eDescription.Text;
Ole[3]:=cbgroup.Text;
Ole[4]:=cbRights.Text;
Ole[5]:=cbStatus.Text;
Ole[6]:=SpinEdit1.value;
if sup.PS_Mod_Users(ole)<0 then
showmessage(sup.PS_LastError);
end;
tbRefresh.Click;
end;
end;
procedure TMainForm.Members1Click(Sender: TObject);
var
OKBottomDlg: TOKBottomDlg;
Node:TtreeNode;
sCapt:string;
rows:variant;
role,str:TStrings;
begin
Node:=tvOrg.Selected;
if (Node=nil) or (Node.Parent=nil) then Exit;
sCapt:=Node.Parent.Text;
if (sCapt<>'部门') then exit;
OKBottomDlg:=TOKBottomDlg.Create(self);
rows:=sup.PS_Get_groups(Node.Text);
str:=Get_RowRecords(rows,0);
rows:=sup.PS_Get_Users('');
role:=Get_ColRecords(rows,1);
with OKBottomDlg do begin
edOldGroup.Text:=str.Strings[2];
edGroupName.Text:=str.Strings[2];
//edGroupdes.Text:=str.Strings[3];
edGroupDes.items:=role;
edgroupDes.itemindex:=edgroupDes.items.indexof(str.Strings[3]);
edCreator.Text:=str.Strings[5];
edDate.Text:=str.Strings[6];
ShowModal;
end;
end;
procedure TMainForm.lvClick(Sender: TObject);
begin
if lv.Selected=nil then begin
btIns1.Enabled:=true;
btDelete1.Enabled:=false;
btModify1.Enabled:=true;
exit;
end else begin
// btCommit1.Enabled:=false;
btIns1.Enabled:=true;
btDelete1.Enabled:=true;
btModify1.Enabled:=true;
end;
end;
procedure TMainForm.Delete3Click(Sender: TObject);
begin
if lv.Selected=nil then Exit;
end;
procedure TMainForm.PageControl1Change(Sender: TObject);
begin
lv.Columns.Clear;
lv.Items.Clear;
tnav.Visible:=false;
delete3.Enabled:=false;
if PageControl1.ActivePage=tsDocs then begin
tnav.visible:=true;
// btCommit1.Enabled:=false;
btIns1.Enabled:=true;
btDelete1.Enabled:=false;
btModify1.Enabled:=true;
Panel1.Visible:=true;
end else if PageControl1.ActivePage=tsSecurity then begin
Panel1.Visible:=false;
end;
end;
procedure TMainForm.spPrjsClick(Sender: TObject);
begin
freshtab(' Projects',7,1);
end;
procedure TMainForm.spRolesClick(Sender: TObject);
begin
tnav.Visible:=true;
panel1.Visible:=true;
freshtab(' Roles',8,1);
end;
procedure TMainForm.spDocsClick(Sender: TObject);
begin
freshtab(' Documentse',9,1);
end;
procedure TMainForm.SpeedButton4Click(Sender: TObject);
var rows:olevariant;
begin
lv.Columns.Clear;
lv.Items.Clear;
lv.Items.BeginUpdate;
Lv.Columns.BeginUpdate;
rows:=sup.PS_Get_mes('select * from csi_mes order by c_from');
ListViewAddColumns(['时间','','消息来自','发送到','消息',''],[150,0,75,75,550,0],lv);
ListViewAddRows(rows,lv);
lv.Items.EndUpdate;
Lv.Columns.EndUpdate;
tnav.Visible:=false;
panel1.Visible:=false;
end;
// tab 0 - tab type, 1 - tab document
procedure TmainForm.FreshTab(txt:string;flag,tab:integer);
begin
StatusBar.Panels[0].Text:=txt;
freshTv(flag);
if tab=0 then begin
end else if tab=1 then begin
// btCommit1.Enabled:=false;
btIns1.Enabled:=true;
btDelete1.Enabled:=false;
btModify1.Enabled:=true;
end;
end;
procedure TMainForm.btmodify1Click(Sender: TObject);
var
frmRole:TfrmRole;
rows,ole:Olevariant;
role_id:string;
l_rows:TStrings;
begin
if lv.Selected=nil then exit;
frmrole:=TfrmRole.Create(self);
role_id:=lv.Selected.caption;
rows:=sup.Pb_Get_roles(role_id);
l_rows:=Get_RowRecords(rows,0);
with frmRole do begin
eRolename.Text:=l_rows[0];
eDescription.Text:=l_rows[1];
edId.Text:=l_rows[0];
end;
if frmRole.ShowModal(false,true)=mrOK then begin
with frmRole do begin
ole:= VarArrayCreate([0,2],varVariant);
Ole[0]:=eRolename.Text;
ole[1]:=eDescription.Text;
ole[2]:=edid.Text;
if sup.Pb_Mod_Roles(ole)<0 then
showmessage(sup.PS_LastError);
end;
end;
freshtv(8);
END;
procedure TMainForm.btins1Click(Sender: TObject);
var
frmRole:TfrmRole;
begin
frmRole:=TfrmRole.Create(self);
if frmRole.ShowModal(true,false)=mrOK then begin
with frmRole do begin
while sup.PB_Ins_Roles(eRolename.text,eDescription.text)<0 do begin
if frmROle.ShowModal(true,false)<>mrOK then begin
ShowMessage(sup.PS_LastError);
exit;
end;
end;
freshtv(8);
end;
end;
END;
//
procedure TMainForm.btDelete1Click(Sender: TObject);
var
name:string;
begin
if lv.Selected=nil then Exit;
if MessageDlg('你想删除这条记录吗?',
mtConfirmation, [mbYes, mbNo], 0) = mrNo then exit;
name:=lv.Selected.Caption;
if sup.PB_Del_Roles(name)<0 then begin
ShowMessage(sup.PS_LastError);
Exit;
end;
FreshTv(8);
end;
procedure TMainForm.FormShow(Sender: TObject);
begin
tsSecurity.TabVisible:=true;
PageControl1.ActivePage:=tsSecurity;
InitSecurity;
ModifyGroup1.Enabled:=True;
Delete2.Enabled:=True;
pmiGroup.Enabled:=true;
pmiUser.Enabled:=true;
SetPassword1.Enabled:=true;
Delete1.Enabled:=true;
//delete3.Enabled:=false;
tsDocs.TabVisible:=true;
tsSecurity.Tabvisible:=true;
PageControl1.ActivePage:=tsSecurity;//tsType;
InitSecurity;
InitConfig;
InitDocs;
delete3.Enabled:=true;
sUser:=sup.PS_Username;
end;
procedure TMainForm.SpeedButton1Click(Sender: TObject);
begin
close;
end;
procedure TMainForm.SpeedButton2Click(Sender: TObject);
var rows:variant;
begin
lv.Columns.Clear;
lv.Items.Clear;
lv.Items.BeginUpdate;
Lv.Columns.BeginUpdate;
rows:=sup.PS_Get_Logs('','');
ListViewAddColumns(['类型','日期','用户','状态','描述'],[75,150,75,75,550],lv);
ListViewAddRows(rows,lv);
lv.Items.EndUpdate;
Lv.Columns.EndUpdate;
tnav.Visible:=false;
panel1.Visible:=false;
end;
procedure TMainForm.btcommit1Click(Sender: TObject);
begin
//
end;
procedure TMainForm.SpeedButton3Click(Sender: TObject);
begin
if MessageDlg('你想删除系统日志吗?',
mtConfirmation, [mbYes, mbNo], 0) = mrNo then Exit;
if sup.PS_Del_Logs('where C_TYPE='+''''+'日志'+'''')<0 then
showmessage(sup.PS_lasterror)
else lv.Items.Clear;
end;
procedure TMainForm.SpeedButton5Click(Sender: TObject);
begin
if MessageDlg('你想删除所有消息吗?',
mtConfirmation, [mbYes, mbNo], 0) = mrNo then Exit;
if sup.PS_Del_Mes('delete from csi_mes')<0 then
showmessage(sup.PS_lasterror)
else lv.Items.Clear;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -