📄 simpleuser.cpp
字号:
#include "simpleUser.h"
#include "employee.h"
#include "menu.h"
#include <stdio.h>
#include <iomanip>
extern CEmployee *HeadEmployee;
extern CSimpleUser *sUser;
//=====================================================zbh
CSimpleUser::CSimpleUser(string id, string pw)
{
m_sPasswd = id;
m_sUserId = pw;
}
//CSimpleUser::~CSimpleUser(){}
//=====================================================zbh
string CSimpleUser::GetUserId()
{
return m_sUserId;
}
//=====================================================zbh
string CSimpleUser::GetPw()
{
return m_sPasswd;
}
void CSimpleUser::SetPw(string password)
{
m_sPasswd = password;
}
//=====================================================zbh
void CSimpleUser::SearchInfo()
{
CEmployee *curNode = HeadEmployee->next;
cout<<"\n=================================你的信息如下==================================="<<endl;
while( curNode != NULL )
{
if( curNode->m_sSalaryCardId == sUser->GetUserId() )
{
cout<<"\t用 户 名: "<<left<<setw(30)<<sUser->m_sUserId;
cout<<"密 码: "<<left<<setw(30)<<sUser->m_sPasswd<<endl;
cout<<"\t姓 名: "<<left<<setw(30)<<curNode->m_sName;
cout<<"性 别: "<<left<<setw(30)<<curNode->m_cSex<<endl;
cout<<"\t年 龄 "<<left<<setw(30)<<curNode->m_iAge;
cout<<"工 龄: "<<left<<setw(30)<<curNode->m_iWorkAge<<endl;
cout<<"\t部 门: "<<left<<setw(30)<<curNode->m_sDepartment;
cout<<"职 称: "<<left<<setw(30)<<curNode->m_sTechPost<<endl;
cout<<"\t职称编号: "<<left<<setw(30)<<curNode->m_sTechPostNum;
cout<<"身份证号: "<<left<<setw(30)<<curNode->m_sIdentityId<<endl;
cout<<"\t家庭电话: "<<left<<setw(30)<<curNode->m_sHomePhone;
cout<<"手机号码: "<<left<<setw(30)<<curNode->m_sMobilePhone<<endl;
cout<<"\t工资卡号: "<<left<<setw(30)<<curNode->m_sSalaryCardId;
cout<<"应发工资: "<<left<<setw(30)<<curNode->m_cSalary.m_fSalary<<endl;
cout<<"\t基本工资: "<<left<<setw(30)<<curNode->m_cSalary.m_fBasePay;
cout<<"职务工资: "<<left<<setw(30)<<curNode->m_cSalary.m_fDutyPay<<endl;
cout<<"\t补助津贴: "<<left<<setw(30)<<curNode->m_cSalary.m_fAssistance;
cout<<"电 费: "<<left<<setw(30)<<curNode->m_cSalary.m_fElecCost<<endl;
cout<<"\t税 费: "<<left<<setw(30)<<curNode->m_cSalary.m_fTax;
cout<<"水 费: "<<left<<setw(30)<<curNode->m_cSalary.m_fWaterRate<<endl;
cout<<"\t清 洁 费: "<<left<<setw(30)<<curNode->m_cSalary.m_iCleanCost;
cout<<"闭路电视费:"<<left<<setw(30)<<curNode->m_cSalary.m_iTVCost<<endl;
break;
}
curNode = curNode->next;
}
if( curNode == NULL )
cout<<"\t\t\t\t没有你的信息!"<<endl;
cout<<"\n================================================================================"<<endl;
}
//=====================================================zbh
void CSimpleUser::ChangeInfo()//还没有写入文件
{
CMenu menu;
string sChoose;
CEmployee *curNode = HeadEmployee->next;
while( curNode != NULL && curNode->m_sSalaryCardId != GetUserId() )
{
curNode = curNode->next;
}
if( curNode == NULL )
{
cout<<"\t\t\t\t没有你的信息!"<<endl;
return;
}
while( true )
{
string sPasswd;
cout<<"\n================================================================================"<<endl;
cout<<"\n\t\t\t提示:你只能操作以下几项:"<<endl
<<"\t\t\t\t[1]年龄"<<endl
<<"\t\t\t\t[2]家庭号码"<<endl
<<"\t\t\t\t[3]手机号码"<<endl
<<"\t\t\t\t[4]密码"<<endl
<<"\t\t\t\t[#]返回上一层菜单"<<endl
<<"\t\t\t\t[0]退出"<<endl;
cout<<"\t\t\t\t你的选择是:";
cin>>sChoose;
if( !menu.IsDigit( sChoose ) )
{
cout<<"\t\t\t你的输入有错,请重新输入! "<<endl;
continue;
}
switch( sChoose[0] )
{
case '1':
cout<<"\t\t\t你目前的年龄是:"<<curNode->m_iAge<<endl;
cout<<"\t\t\t修改为: ";
if( (cin>>curNode->m_iAge) != 0 )
cout<<"\t\t\t提示:年龄修改成功。"<<endl;
else
{
cout<<"\t\t\t输入年龄必须是整数"<<endl;
cin.clear();
fflush(stdin);
}
break;
case '2':
cout<<"\t\t\t你目前的家庭号码是:"<<curNode->m_sHomePhone<<endl;
cout<<"\t\t\t修改为: ";
cin>>curNode->m_sHomePhone;
cout<<"\t\t提示:家庭电话号码修改成功。"<<endl;
break;
case '3':
cout<<"\t\t\t你目前的手机号是:"<<curNode->m_sMobilePhone<<endl;
cout<<"\t\t\t修改为: ";
cin>>curNode->m_sMobilePhone;
cout<<"\t\t提示:手机号码修改成功。"<<endl;
break;
case '4':
cout<<"\t\t\t你目前的密码是: "<<sUser->m_sPasswd<<endl;
cout<<"\t\t\t修改为:";
cin>>sPasswd;
if( sPasswd.length() > 10 )
{
cout<<"\t\t\t密码输入长度过长请重新选择!"<<endl;
break;
}
sUser->m_sPasswd = sPasswd;
cout<<"\t\t提示:密码修改成功。"<<endl;
SaveCode("Secret\\SimpleUser.txt");
break;
case '#':
return;
case '0':
menu.Exit();
default:
cout<<"\t\t\t你的输入有错,请重新输入! "<<endl;
break;
}
}
}
void CSimpleUser::SaveCode( char *FilePath )
{
fstream io(FilePath,ios::in|ios::out);
string sUserId;
for( string str; getline(io,str); )
{
istringstream sin(str);
sin>> sUserId;
if( sUserId == GetUserId() )
{
string write=sUserId+" "+ GetPw();
io.seekg(-(str.length()+2),ios::cur);
for(int i=0;i<write.length()-str.length();i++)
write+=" ";
io<<write;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -