📄 salarymanage.cpp
字号:
#include <iomanip>
#include <vector>
#include "salary.h"
#include "salaryManager.h"
#include "employee.h"
#include "menu.h"
extern CEmployee *HeadEmployee;////员工信息链表表头指针
extern int iNumNode;///////////////记录节点的个数
extern CSalaryManager *mUser;
//===================================按名字查找基本信息====================================
void CSalaryManager::SchByName()//============================zbh
{
string sName = "";
cout<<"\n\t\t\t请输入要查找员工的姓名: ";
cin>> sName;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 性别 年龄 工龄 所属部门 职称 职称编号 身份证号码 手机号 工资 工资卡号"<<endl;
while( curNode != NULL )
{
if( curNode->m_sName == sName )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(5)<<curNode->m_cSex
<<left<<setw(5)<<curNode->m_iAge
<<left<<setw(6)<<curNode->m_iWorkAge
<<left<<setw(10)<<curNode->m_sDepartment
<<left<<setw(6)<<curNode->m_sTechPost
<<left<<setw(9)<<curNode->m_sTechPostNum
<<left<<setw(11)<<curNode->m_sIdentityId
<<left<<setw(7)<<curNode->m_sMobilePhone
<<left<<setw(6)<<curNode->m_cSalary.m_fSalary
<<left<<setw(8)<<curNode->m_sSalaryCardId<<endl;
}
curNode = curNode->next;
}
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
//===============================按工资卡号查找基本信息====================================
void CSalaryManager::SchBySarCardId()//============================zbh
{
string sSalCardId = "";
cout<<"\n\t\t\t请输入要查找员工的工资卡号: ";
cin>> sSalCardId;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 性别 年龄 工龄 所属部门 职称 职称编号 身份证号码 手机号 工资 工资卡号"<<endl;
while( curNode != NULL )
{
if( curNode->m_sSalaryCardId == sSalCardId )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(5)<<curNode->m_cSex
<<left<<setw(5)<<curNode->m_iAge
<<left<<setw(6)<<curNode->m_iWorkAge
<<left<<setw(10)<<curNode->m_sDepartment
<<left<<setw(6)<<curNode->m_sTechPost
<<left<<setw(9)<<curNode->m_sTechPostNum
<<left<<setw(11)<<curNode->m_sIdentityId
<<left<<setw(7)<<curNode->m_sMobilePhone
<<left<<setw(6)<<curNode->m_cSalary.m_fSalary
<<left<<setw(8)<<curNode->m_sSalaryCardId<<endl;
break;
}
curNode = curNode->next;
}
// cout<<iNumber<<endl;
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
//==========================按身份证号查找基本信息======================================
void CSalaryManager::SchByIdentityId()//============================zbh
{
string sIdentityId = "";
cout<<"\n\t\t\t请输入要查找员工的身份证号: ";
cin>> sIdentityId;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 性别 年龄 工龄 所属部门 职称 职称编号 身份证号码 手机号 工资 工资卡号"<<endl;
while( curNode != NULL )
{
if( curNode->m_sIdentityId == sIdentityId )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(5)<<curNode->m_cSex
<<left<<setw(5)<<curNode->m_iAge
<<left<<setw(6)<<curNode->m_iWorkAge
<<left<<setw(10)<<curNode->m_sDepartment
<<left<<setw(6)<<curNode->m_sTechPost
<<left<<setw(9)<<curNode->m_sTechPostNum
<<left<<setw(11)<<curNode->m_sIdentityId
<<left<<setw(7)<<curNode->m_sMobilePhone
<<left<<setw(6)<<curNode->m_cSalary.m_fSalary
<<left<<setw(8)<<curNode->m_sSalaryCardId<<endl;
break;
}
curNode = curNode->next;
}
if( curNode == NULL )
cout<<"没有该员工的任何信息。"<<endl;
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
//====================================按部门查找基本信息=================================
void CSalaryManager::SchByDep()//============================zbh
{
if( iNumNode == 0 )
{
cout<<"\n\t\t\t系统中没有任何信息。"<<endl;
return;
}
string sDepartment = "";
cout<<"\n\t\t\t请输入要查找的部门的名称: ";
cin>> sDepartment;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 性别 年龄 工龄 所属部门 职称 职称编号 身份证号码 手机号 工资 工资卡号"<<endl;
while( curNode != NULL )
{
if( curNode->m_sDepartment == sDepartment )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(5)<<curNode->m_cSex
<<left<<setw(5)<<curNode->m_iAge
<<left<<setw(6)<<curNode->m_iWorkAge
<<left<<setw(10)<<curNode->m_sDepartment
<<left<<setw(6)<<curNode->m_sTechPost
<<left<<setw(9)<<curNode->m_sTechPostNum
<<left<<setw(11)<<curNode->m_sIdentityId
<<left<<setw(7)<<curNode->m_sMobilePhone
<<left<<setw(6)<<curNode->m_cSalary.m_fSalary
<<left<<setw(8)<<curNode->m_sSalaryCardId<<endl;
}
curNode = curNode->next;
}
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
//==========================按技术职称查找基本信息==================================
void CSalaryManager::SchByTechPost()//============================zbh
{
if( iNumNode == 0 )
{
cout<<"\n\t\t\t系统中没有任何信息。"<<endl;
return;
}
string sTechPost = "";
cout<<"\n\t\t\t请输入要查找的部门的名称: ";
cin>> sTechPost;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 性别 年龄 工龄 所属部门 职称 职称编号 身份证号码 手机号 工资 工资卡号"<<endl;
while( curNode != NULL )
{
if( curNode->m_sTechPost == sTechPost )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(5)<<curNode->m_cSex
<<left<<setw(5)<<curNode->m_iAge
<<left<<setw(6)<<curNode->m_iWorkAge
<<left<<setw(10)<<curNode->m_sDepartment
<<left<<setw(6)<<curNode->m_sTechPost
<<left<<setw(9)<<curNode->m_sTechPostNum
<<left<<setw(11)<<curNode->m_sIdentityId
<<left<<setw(7)<<curNode->m_sMobilePhone
<<left<<setw(6)<<curNode->m_cSalary.m_fSalary
<<left<<setw(8)<<curNode->m_sSalaryCardId<<endl;
}
curNode = curNode->next;
}
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
//===============================按姓名查找工资细节信息=====================================
void CSalaryManager::SchDetailByName()//============================zbh
{
string sName = "";
cout<<"\n\t\t\t请输入要查找员工的姓名: ";
cin>> sName;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 部门 基本工资 职务工资 补助 扣工资 应发工资 税费 电费 水费 清洁费 电视费"<<endl;
while( curNode != NULL )
{
if( curNode->m_sName == sName )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(6)<<curNode->m_sDepartment
<<left<<setw(9)<<curNode->m_cSalary.m_fBasePay
<<left<<setw(9)<<curNode->m_cSalary.m_fDutyPay
<<left<<setw(5)<<curNode->m_cSalary.m_fAssistance
<<left<<setw(7)<<curNode->m_cSalary.DeductSalary()
<<left<<setw(9)<<curNode->m_cSalary.m_fSalary
<<left<<setw(5)<<curNode->m_cSalary.m_fTax
<<left<<setw(5)<<curNode->m_cSalary.m_fElecCost
<<left<<setw(5)<<curNode->m_cSalary.m_fWaterRate
<<left<<setw(7)<<curNode->m_cSalary.m_iCleanCost
<<left<<setw(6)<<curNode->m_cSalary.m_iTVCost<<endl;
}
curNode = curNode->next;
}
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
//======================按身份证号查找工资细节信息===============================
void CSalaryManager::SchDetailById()//============================zbh
{
string sIdentityId = "";
cout<<"\n\t\t\t请输入要查找员工的身份证号: ";
cin>> sIdentityId;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 部门 基本工资 职务工资 补助 扣工资 应发工资 税费 电费 水费 清洁费 电视费"<<endl;
while( curNode != NULL )
{
if( curNode->m_sIdentityId == sIdentityId )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(6)<<curNode->m_sDepartment
<<left<<setw(9)<<curNode->m_cSalary.m_fBasePay
<<left<<setw(9)<<curNode->m_cSalary.m_fDutyPay
<<left<<setw(5)<<curNode->m_cSalary.m_fAssistance
<<left<<setw(7)<<curNode->m_cSalary.DeductSalary()
<<left<<setw(9)<<curNode->m_cSalary.m_fSalary
<<left<<setw(5)<<curNode->m_cSalary.m_fTax
<<left<<setw(5)<<curNode->m_cSalary.m_fElecCost
<<left<<setw(5)<<curNode->m_cSalary.m_fWaterRate
<<left<<setw(7)<<curNode->m_cSalary.m_iCleanCost
<<left<<setw(6)<<curNode->m_cSalary.m_iTVCost<<endl;
}
curNode = curNode->next;
}
curNode = HeadEmployee->next;
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
//===============================按部门查找工资细节信息=================================
void CSalaryManager::SchDetailByDep()//============================zbh
{
if( iNumNode == 0 )
{
cout<<"\n\t\t\t系统中没有任何信息。"<<endl;
return;
}
string sDepartment = "";
cout<<"\n\t\t\t请输入要查找员工的身份证号: ";
cin>> sDepartment;
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=============================你所查找的信息如下================================="<<endl;
cout<<"\n姓名 部门 基本工资 职务工资 补助 扣工资 应发工资 税费 电费 水费 清洁费 电视费"<<endl;
while( curNode != NULL )
{
if( curNode->m_sDepartment == sDepartment )
{
cout<<left<<setw(6)<<curNode->m_sName
<<left<<setw(6)<<curNode->m_sDepartment
<<left<<setw(9)<<curNode->m_cSalary.m_fBasePay
<<left<<setw(9)<<curNode->m_cSalary.m_fDutyPay
<<left<<setw(5)<<curNode->m_cSalary.m_fAssistance
<<left<<setw(7)<<curNode->m_cSalary.DeductSalary()
<<left<<setw(9)<<curNode->m_cSalary.m_fSalary
<<left<<setw(5)<<curNode->m_cSalary.m_fTax
<<left<<setw(5)<<curNode->m_cSalary.m_fElecCost
<<left<<setw(5)<<curNode->m_cSalary.m_fWaterRate
<<left<<setw(7)<<curNode->m_cSalary.m_iCleanCost
<<left<<setw(6)<<curNode->m_cSalary.m_iTVCost<<endl;
}
curNode = curNode->next;
}
curNode = HeadEmployee->next;
cout<<"\n==============================================================================="<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -