📄 employeeviewunit.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "EmployeeViewUnit.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "BaseViewUnit"
#pragma resource "*.dfm"
TEmployeeViewFrm *EmployeeViewFrm;
//---------------------------------------------------------------------------
__fastcall TEmployeeViewFrm::TEmployeeViewFrm(TComponent* Owner)
: TBaseViewFrm(Owner)
{
}
//---------------------------------------------------------------------------
void TEmployeeViewFrm::AddDeptUserInfoToListView(int iDeptID)
{
UserInfoExArray_T aUserList;
pDBAccess->GetUserList(iDeptID,aUserList);
for(IterUserInfoEx_T iter = aUserList.begin();iter!=aUserList.end();++iter)
{
UserInfoEx_T aUserInfo = *iter;
AddUserInfoToListView(aUserInfo);
}
}
//---------------------------------------------------------------------------
void TEmployeeViewFrm::AddNodeUserInfo(TTreeNode* iCurNode)
{
int lDeptID = iCurNode->StateIndex;
AddDeptUserInfoToListView(lDeptID);
int lChildCount = iCurNode->Count;
for(int i=0;i<lChildCount;i++)
{
TTreeNode* pChildNode = iCurNode->Item[i];
AddNodeUserInfo(pChildNode);
}
}
//---------------------------------------------------------------------------
void TEmployeeViewFrm::AddUserInfoToListView(UserInfoEx_T iUserInfo)
{
TListItem *ListItem;
ListItem = lvRecordInfo->Items->Add();
ListItem->Caption=iUserInfo.BaseUserInfo.UserID;
ListItem->SubItems->Add(iUserInfo.BaseUserInfo.EmpName);
ListItem->SubItems->Add(iUserInfo.DeptName);
if((UserType_T)iUserInfo.BaseUserInfo.ManageClass == utManage)
ListItem->SubItems->Add("管理员");
else if((UserType_T)iUserInfo.BaseUserInfo.ManageClass == utUser)
ListItem->SubItems->Add("普通员工");
else
ListItem->SubItems->Add("未知");
ListItem->SubItems->Add(aCnv.GetRoleString(iUserInfo.BaseUserInfo.AttendPlan));
if((VerifyMode_T)iUserInfo.BaseUserInfo.VerifyMode == vmFinger)
ListItem->SubItems->Add("指纹验证");
else if((VerifyMode_T)iUserInfo.BaseUserInfo.VerifyMode == vmPassword)
ListItem->SubItems->Add("密码验证");
else
ListItem->SubItems->Add("未知");
ListItem->SubItems->Add((int)iUserInfo.BaseUserInfo.FingerCount);
if(iUserInfo.BaseUserInfo.IsUsePwd == upUse)
ListItem->SubItems->Add("是");
else
ListItem->SubItems->Add("否");
if(iUserInfo.BaseUserInfo.Flag == wsInService)
ListItem->SubItems->Add("在职");
else if(iUserInfo.BaseUserInfo.Flag == wsDimission)
ListItem->SubItems->Add("离职");
else
ListItem->SubItems->Add("其他");
ListItem->SubItems->Add(iUserInfo.BaseUserInfo.EmpDesc);
}
//---------------------------------------------------------------------------
void __fastcall TEmployeeViewFrm::FormCreate(TObject *Sender)
{
pDBAccess = new TDBAccess();
}
//---------------------------------------------------------------------------
void __fastcall TEmployeeViewFrm::FormDestroy(TObject *Sender)
{
delete pDBAccess;
}
//---------------------------------------------------------------------------
void __fastcall TEmployeeViewFrm::FormShow(TObject *Sender)
{
pDBAccess->GetDeptTree(tvDept);
tvDept->FullExpand();//树展开
}
//---------------------------------------------------------------------------
void TEmployeeViewFrm::RefreshListView()
{
lvRecordInfo->Clear();
tvDeptClick(this);
}
//---------------------------------------------------------------------------
void __fastcall TEmployeeViewFrm::FormClick(TObject *Sender)
{
//得到当前部门编号
int lDeptID;
TTreeNode* pSelectNode = tvDept->Selected;
if (pSelectNode != NULL)
{
lDeptID = pSelectNode->StateIndex;
lvRecordInfo->Items->Clear();
if (lDeptID == 0) //全公司
AddDeptUserInfoToListView(lDeptID);
else
AddNodeUserInfo(pSelectNode);
}
}
//---------------------------------------------------------------------------
void __fastcall TEmployeeViewFrm::tvDeptClick(TObject *Sender)
{
//得到当前部门编号
TTreeNode* pSelectNode = tvDept->Selected;
if (pSelectNode != NULL)
{
CurDeptID = pSelectNode->StateIndex;
lvRecordInfo->Items->Clear();
if (CurDeptID == 0) //全公司
AddDeptUserInfoToListView(CurDeptID);
else
AddNodeUserInfo(pSelectNode);
}
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -