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

📄 zfrm_customermanageru.pas

📁 一个很不错的评标系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:

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 + -