📄 zfrm_customermanageru.pas
字号:
procedure Tzfrm_customerM.Image1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
//
if (ssLeft in Shift)then
begin
Panel1.Visible := True ;
end;
//
end;
procedure Tzfrm_customerM.Image1MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
//
TreeView1.Width := Panel1.Left ;
Panel1.Visible := False ;
//
end;
procedure Tzfrm_customerM.FormResize(Sender: TObject);
begin
//
Panel1.Top := image1.Top ;
Panel1.Left := image1.Left ;
Panel1.Height := image1.Height ;
//
end;
procedure Tzfrm_customerM.TreeView1Click(Sender: TObject);
begin
// 得到,选中节点属性
try
z_tempnode := TreeView1.Selected ;
z_de_id := PMyRec(z_tempnode.Data)^.z_de_id ;
z_de_level := z_tempnode.Level ;
z_de_nameS := z_tempnode.Text ;
z_de_preid := PMyRec(z_tempnode.Data)^.z_de_preid ;
z_flashFormP(); //***//
except
end;
//
end;
procedure Tzfrm_customerM.N2Click(Sender: TObject);
var
I :integer;
temp :string;
begin
// 新建部门
zfrm_inputbox.ShowModal ;
z_de_name := zfrm_inputbox.Edit1.Text ; //InputBox('部门名称', '此处输入部门名称(应小于25个汉字):', '') ;
if Length(z_de_name)>50 then
begin
Application.MessageBox(
'部门名称输入应小于25个汉字,请您重新输入',
'输入错误',
MB_OK+MB_ICONError) ;
Exit ;
end;
if Trim(z_de_name)='' then Exit ;
try
// 得到,新的“部门ID”序列值
temp := 'ge_de_id' ;
I := zh_GetNewIdF(temp) ; //*****//
// 向数据库添加新纪录
zh_Insert_SQL := 'insert into ef_department values(:g_de_id,:de_level,:de_name,:de_preid)' ;
Query2.Close;
Query2.SQL.Clear ;
Query2.SQL.Add(zh_Insert_SQL);
Query2.ParamByName('g_de_id').AsInteger := I ;
Query2.ParamByName('de_level').AsInteger := z_de_level + 1 ;
Query2.ParamByName('de_name').AsString := z_de_name ;
Query2.ParamByName('de_preid').AsInteger := z_de_id ;
Query2.Prepare ;
Query2.ExecSQL ;
// 在TreeView中,添加新节点,和节点属性
New(z_TreeViewDate_STU);
z_TreeViewDate_STU.z_de_id := I ;
z_TreeViewDate_STU.z_de_name := z_de_name ;
z_TreeViewDate_STU.z_de_preid := z_de_id ;
z_nodesA[I] := TreeView1.Items.AddChildObject(z_nodesA[z_de_id], z_de_name, z_TreeViewDate_STU) ;
z_nodesA[I].ImageIndex := 1 ;
z_nodesA[I].SelectedIndex := 2 ;
z_nodesA[z_de_id].Expanded := True ;
except
showmessage(z_de_name);
end;
//
end;
procedure Tzfrm_customerM.M1Click(Sender: TObject);
begin
// 重命名
try
z_tempnode.EditText ;
except
end;
//
end;
procedure Tzfrm_customerM.TreeView1Edited(Sender: TObject; Node: TTreeNode;
var S: String);
begin
// 修改部门名称
Timer1.Enabled := True ;
//
end;
procedure Tzfrm_customerM.FormCreate(Sender: TObject);
begin
// 建立部门树结构
z_flashTreeView1P(); //***//
//
end;
procedure Tzfrm_customerM.D1Click(Sender: TObject);
begin
// 删除提示
//Exit ;
if z_de_id=1 then
begin
Exit ;
end;
{
zh_returnV :=Application.MessageBox(
'警告! 您是否要删除该部门,此操作还将删除此部门下的所有子部门,请您慎重!',
'删除部门',
MB_YesNo++MB_ICONWARNING); }
// 部门删除
if z_deleteTreeView1P(z_de_id) then //***//
begin
// 数据库失败
// Exit ;
end
else
begin
// 数据库失败
Exit ;
end;
// TreeView1.SetFocus ;
z_flashTreeView1P(); //***//
z_de_id := 1 ;
z_flashFormP(); //***//
TreeView1.SetFocus ;
//
end;
procedure Tzfrm_customerM.Timer1Timer(Sender: TObject);
begin
// 修改部门名称
try
if length(z_tempnode.Text)>50 then
begin
z_resetDepartmentName(); //***//
Exit ;
end;
if Trim(z_tempnode.Text)='' then
begin
z_resetDepartmentName(); //***//
Exit ;
end;
zh_Update_SQL := 'Update ef_department Set de_name=' + '''' + z_tempnode.Text + '''' + 'where g_de_id=' + IntToStr(z_de_id);
Query3.Close ;
Query3.SQL.Clear ;
Query3.SQL.Add(zh_Update_SQL) ;
Query3.Prepare ;
Query3.ExecSQL ;
zh_Update_SQL := 'Update ef_customerdepartment Set de_name=' + '''' + z_tempnode.Text + '''' + 'where g_de_id=' + IntToStr(z_de_id);
Query3.Close ;
Query3.SQL.Clear ;
Query3.SQL.Add(zh_Update_SQL) ;
Query3.Prepare ;
Query3.ExecSQL ;
except
end;
Timer1.Enabled := False ;
//
end;
procedure Tzfrm_customerM.N5Click(Sender: TObject);
begin
// 添加用户
if z_de_id=1 then
begin
// 相关权限
Application.MessageBox(
'您现在在总公司的下面,只能新建用户',
'相关权限',
MB_Ok+MB_ICONINFORMATION );
zh_flashform := True ;
zfrm_newcustomer.z_ResetEditP() ; //*****//
zfrm_newcustomer.ShowModal ;
end
else
begin
zfrm_addcustomer.StaticText1.Caption := z_de_nameS ;
zfrm_addcustomer.ShowModal ;
end;
//
end;
procedure Tzfrm_customerM.FormActivate(Sender: TObject);
var
NewItem: TListItem;
begin
//
if z_de_id=1 then
begin
ListView1.Items.Clear;
try {try <1> S}
zh_Select_SQL := 'select * from ef_customerinfo order by g_cu_id' ;
Query4.Close ;
Query4.SQL.Clear ;
Query4.SQL.Add(zh_Select_SQL) ;
Query4.Prepare ;
Query4.Open ;
Query4.First ;
except
// 数据库错
Application.MessageBox(
'数据库连接错误,请您检查或系统管理员联系',
'数据库错',
MB_OK+MB_ICONError) ;
Exit ;
end; {try <1> E}
while not Query4.Eof do
begin {while <1> S}
NewItem:=ListView1.Items.add ;
NewItem.Caption :=Query4.Fields[3].AsString ;
NewItem.SubItems.Add(Query4.Fields[1].AsString) ;
NewItem.SubItems.Add(Query4.Fields[4].AsString) ;
NewItem.SubItems.Add(Query4.Fields[5].AsString) ;
NewItem.SubItems.Add(Query4.Fields[6].AsString) ;
NewItem.SubItems.Add(Query4.Fields[7].AsString) ;
NewItem.SubItems.Add(Query4.Fields[8].AsString) ;
NewItem.ImageIndex := 3 ;
Query4.Next ;
end; {while <1> E}
end; {if <1> E}
//
end;
procedure Tzfrm_customerM.U1Click(Sender: TObject);
var
I,J :integer ;
begin
// 得到用户ID
J := ListView1.Items.Count-1 ;
for I:=0 to J do
begin
if ListView1.Items.Item[I].Selected then
begin
zh_cu_loginnameS := ListView1.Items.Item[I].SubItems[0] ;
break ;
end;
end;
// 用户属性
if zh_cu_loginnameS='' then Exit;
zh_updateFlag := True ;
zh_flashform := True ;
zfrm_newcustomer.ShowModal ;
//
end;
procedure Tzfrm_customerM.N9Click(Sender: TObject);
begin
// 刷新
z_flashFormP(); //*****//
//
end;
procedure Tzfrm_customerM.N8Click(Sender: TObject);
begin
// 新建用户
if z_de_id=1 then
begin
zh_flashform := True ;
end;
zfrm_newcustomer.z_ResetEditP() ; //*****//
zfrm_newcustomer.ShowModal ;
//
end;
procedure Tzfrm_customerM.D2Click(Sender: TObject);
var
I,J :integer ;
begin
// 得到用户ID
J := ListView1.Items.Count-1 ;
for I:=0 to J do
begin
if ListView1.Items.Item[I].Selected then
begin
zh_cu_loginnameS := ListView1.Items.Item[I].SubItems[0] ;
break ;
end;
end;
// 用户属性
if zh_cu_loginnameS='' then Exit;
if (zh_cu_loginnameS='ADMIN') and (z_de_id=1) then
begin
Application.MessageBox(
'您不能删除管理员',
'相关权限',
MB_Ok+MB_ICONINFORMATION );
Exit;
end;
if z_de_id=1 then
begin
// 公司级删除用户
// 删除提示
zh_returnV:=Application.MessageBox(
'您是否要从本系统删除此用户?',
'删除用户',
MB_YesNo++MB_ICONWARNING);
if zh_returnV=IDNO then Exit;
// 删除用户
try {try <1> S}
zh_Delete_SQL := 'delete from ef_customerinfo where cu_loginname=:cu_loginname';
//showmessage(zh_Insert_SQL);
Query1.Close;
Query1.SQL.Clear ;
Query1.SQL.Add(zh_Delete_SQL);
Query1.ParamByName('cu_loginname').AsString := zh_cu_loginnameS ;
Query1.Prepare ;
Query1.ExecSQL ;
except
// 数据库错
Application.MessageBox(
'数据库连接错误,请您检查',
'数据库错',
MB_OK+MB_ICONError);
Exit ;
end; {try <1> E}
end {if <公司级删除用户> E}
else
begin {else <部门级删除用户> S}
// 删除提示
zh_returnV:=Application.MessageBox(
'您是否要从该部门删除此用户?',
'删除用户',
MB_YesNo++MB_ICONWARNING);
if zh_returnV=IDNO then Exit;
// 删除用户
try {try <2> S}
zh_Delete_SQL := 'delete from ef_customerdepartment where (cu_loginname=:cu_loginname) and (g_de_id=:g_de_id)';
//showmessage(zh_Insert_SQL);
Query1.Close;
Query1.SQL.Clear ;
Query1.SQL.Add(zh_Delete_SQL);
Query1.ParamByName('cu_loginname').AsString := zh_cu_loginnameS ;
Query1.ParamByName('g_de_id').AsInteger := z_de_id ;
Query1.Prepare ;
Query1.ExecSQL ;
except
// 数据库错
Application.MessageBox(
'数据库连接错误,请您检查',
'数据库错',
MB_OK+MB_ICONError);
Exit ;
end; {try <2> E}
end; {else <部门级删除用户> E}
z_flashFormP(); //***//
//
end;
procedure Tzfrm_customerM.Button1Click(Sender: TObject);
begin
// 部门删除
z_deleteTreeView1AllP(z_de_id); //***//
query1.Close;
query2.Close;
// TreeView1.SetFocus ;
z_flashTreeView1P(); //***//
end;
procedure Tzfrm_customerM.N12Click(Sender: TObject);
begin
//
Self.Close ;
//
end;
procedure Tzfrm_customerM.H1Click(Sender: TObject);
begin
Application.HelpFile := GetAppPath()+'eFIDIC.HLP';
Application.HelpCommand(HELP_CONTENTS, 2);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -