📄 staffinfo.cpp
字号:
}
else
{
CString syear = sSIID.Mid(6,4);
int year = atoi(syear);
CString smonth = sSIID.Mid(10,2);
int month = atoi(smonth);
if(smonth!="01"&&smonth!="02"&&smonth!="03"&&smonth!="04"&&smonth!="05"&&smonth!="06"&&smonth!="07"&&smonth!="08"&&smonth!="09"&&smonth!="10"&&smonth!="11"&&smonth!="12")//(month<1 || month>12)
{
MessageBox("输入身份证号码月分无效","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSIID.SetFocus();
return;
}
CString sday = sSIID.Mid(12,2);
int day = atoi(sday);
if(day<1 || day>31)
{
MessageBox("输入身份证号码日期无效","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSIID.SetFocus();
return;
}
BOOL leap;
switch(month)
{
case 01: case 03: case 05: case 07: case 8: case 10: case 12:
if(day<0 || day>31)
{
MessageBox("输入身份证号码日期无效","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSIID.SetFocus();
return;
}
break;
case 04: case 06: case 9: case 11:
if(day<0 || day>30)
{
MessageBox("输入身份证号码日期无效","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSIID.SetFocus();
return;
}
break;
case 02:
if(year % 4 == 0)
{
if(year % 100 != 0)
leap = TRUE;
else if(year % 400 == 0)
leap = TRUE;
else
leap = FALSE;
}
else
leap = FALSE;
if(leap)
if(day<0 || day>29)
{
MessageBox("输入身份证号码日期无效","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSIID.SetFocus();
return;
}
else
if(day<0 || day>28)
{
MessageBox("输入身份证号码日期无效","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSIID.SetFocus();
return;
}
break;
}
}
}
if(sSnation.IsEmpty())
{
MessageBox("民族不能为空,请输入民族。","系统提示",MB_OK|MB_ICONSTOP);
m_Comsnation.SetFocus();
return;
}else
{
char ch;
if(sSnation.GetLength()>10)
{
MessageBox("民族输入字数过多,请重新输入民族。","系统提示",MB_OK|MB_ICONSTOP);
m_Comsnation.SetFocus();
return;
}
for(int i=0;i<sSnation.GetLength();i++)
{
ch=sSnation.GetAt(i);
if(ch==32||(ch>='0'&&ch<='9'))
{
MessageBox("民族输入无效,请重新输入民族。","系统提示",MB_OK|MB_ICONSTOP);
m_Comsnation.SetFocus();
return;
}
}
}
if(sSnat.IsEmpty())
{
MessageBox("员工籍贯不能为空,请输入员工籍贯。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSnat.SetFocus();
return;
}
else
{
char ch;
if(sSnat.GetLength()>10)
{
MessageBox("籍贯输入字数过多,请重新输入籍贯。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSnat.SetFocus();
return;
}
for(int i=0;i<sSnat.GetLength();i++)
{
ch=sSnat.GetAt(i);
if(ch==32||(ch>='0'&&ch<='9'))
{
MessageBox("籍贯输入无效,请重新输入籍贯。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSnat.SetFocus();
return;
}
}
}
if(sMarry.IsEmpty())
{
MessageBox("员工婚姻状况不能为空,请输入员工婚姻状况。","系统提示",MB_OK|MB_ICONSTOP);
m_ComSmarry.SetFocus();
return;
}
else if(sMarry!="已婚"&&sMarry!="未婚")
{
MessageBox("输入的员工婚姻状况无效,请重新输入员。","系统提示",MB_OK|MB_ICONSTOP);
m_ComSmarry.SetFocus();
return;
}
if(sStel.IsEmpty())
{
MessageBox("员工联系方式不能为空,请输入员工联系方式。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtStel.SetFocus();
return;
}else
{
int len1;
len1=sStel.GetLength();
if(len1 > 12)
{
MessageBox("联系方式的电话号码不能超过12位,请重新输入","系统提示",MB_OK|MB_ICONSTOP);
m_EdtStel.SetFocus();
return;
}
}
if(sSaddress.IsEmpty())
{
MessageBox("员工家庭住址不能为空,请输入员工家庭住址。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSaddress.SetFocus();
return;
}else if(sSaddress.GetLength()>40)
{
MessageBox("员工家庭住址输入字数过多,请重新输入员工家庭住址。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSaddress.SetFocus();
return;
}
if(sSquali.IsEmpty())
{
MessageBox("员工学历不能为空,请输入员工学历。","系统提示",MB_OK|MB_ICONSTOP);
m_Comsquali.SetFocus();
return;
}
else if(sSquali!="高职" && sSquali!="大专" && sSquali!="本科" && sSquali!="硕士" && sSquali!="博士" && sSquali!="中专" && sSquali!="初中")
{
MessageBox("输入员工学历无效,请重新输入。","系统提示",MB_OK|MB_ICONSTOP);
m_Comsquali.SetFocus();
return;
}
if(sSschool.IsEmpty())
{
MessageBox("毕业院校不能为空,请输入毕业院校。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSschool.SetFocus();
return;
}else if(sSschool.GetLength()>30)
{
MessageBox("毕业院校输入字数过多,请重新输入毕业院校。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSschool.SetFocus();
return;
}
if(sSpro.IsEmpty())
{
MessageBox("员工专业不能为空,请输入员工专业。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSpro.SetFocus();
return;
}else if(sSpro.GetLength()>30)
{
MessageBox("员工专业输入字数过多,请重新输入员工专业。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSpro.SetFocus();
return;
}
if(sSygxs.IsEmpty())
{
MessageBox("员工用工形式不能为空,请输入员工用工形式。","系统提示",MB_OK|MB_ICONSTOP);
m_Comygxs.SetFocus();
return;
}
else if(sSygxs!="临时员工"&&sSygxs!="正式员工")
{
MessageBox("输入员工用工形式无效,请重新输入员工用工形式。","系统提示",MB_OK|MB_ICONSTOP);
m_Comygxs.SetFocus();
return;
}
if(sSinser.IsEmpty())
{
MessageBox("员工在职状态不能为空,请输入员工在职状态。","系统提示",MB_OK|MB_ICONSTOP);
m_ComSinser.SetFocus();
return;
}else if(sSinser!="在职"&&sSinser!="离职"&&sSinser!="离休"&&sSinser!="退养"&&sSinser!="其他")
{
MessageBox("员工在职状态输入无效,请重新输入员工在职状态。","系统提示",MB_OK|MB_ICONSTOP);
m_ComSinser.SetFocus();
return;
}
if(sLevel.IsEmpty())
{
MessageBox("员工工资等级不能为空,请输入员工工资等级。","系统提示",MB_OK|MB_ICONSTOP);
m_ComLever.SetFocus();
return;
}
else if(sLevel!="A1"&&sLevel!="A2")
{
MessageBox("输入的员工工资等级无效,请重新输入员工工资等级。","系统提示",MB_OK|MB_ICONSTOP);
m_ComLever.SetFocus();
return;
}
if(sSnum.IsEmpty())
{
MessageBox("输入的员工工龄不能为空,请输入员工工龄。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSnum.SetFocus();
return;
}
else if(sSnum.GetLength()>2)
{
MessageBox("输入的员工工龄不能过长,请重新输入员工工龄。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSnum.SetFocus();
return;
}
if(sRemark.GetLength()>50)
{
MessageBox("输入的备注不能过长,请重新输入。","系统提示",MB_OK|MB_ICONSTOP);
m_EdtRemark.SetFocus();
return;
}
RxRecordset depst;
CString dep1;
dep1.Format("SELECT * FROM DepInfo WHERE Dep_name='%s'",sDep);
depst.Open(dep1,adCmdText);
if(depst.GetRecordCount()<1)
{
MessageBox("您输入的部门不存在!请重新输入!","系统提示",MB_OK|MB_ICONSTOP);
m_ComDep.SetFocus();
return;
}
CString sSQL;
if(AddOrChange==1)//添加操作
{
sSQL.Format("Insert Into StaffInfo Values('%s','%s','%s','%s','%s','%s','%s',\
'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',\
'%s','%s','%s','%s','%s')",sSID,sName,sDep,sSex,time1,sSIID,sSnation,\
sMarry,sSnat,sStel,sSaddress,sSquali,sSschool,time2,sSpro,sSnum,\
time3,time4,timel,timet,sSinser,sSSID,sSduty,sStitle,sSygxs,sLevel,sRemark);
}
else
{
sSQL.Format("Update StaffInfo set Staff_name='%s',Dep='%s',Sex='%s',Birthday='%s',\
Identity_ID='%s',Nation='%s',Marr_status='%s',Native_place='%s',\
Telephone='%s',Family_place='%s',Quali='%s',Graduated='%s',Grad_time='%s',\
Professional='%s',Seniority='%s',Entry_date='%s',Conve_date='%s',\
Departure_date='%s',Retirement_date='%s',Inservice_status='%s',\
Staff_file_ID='%s',Duty='%s',Title='%s',Employment_forms='%s',\
Wage_levels='%s',Remarks='%s' where Staff_ID='%s'",sName,sDep,sSex,time1,\
sSIID,sSnation,sMarry,sSnat,sStel,sSaddress,sSquali,sSschool,time2,\
sSpro,sSnum,time3,time4,timel,timet,sSinser,sSSID,sSduty,sStitle,sSygxs,\
sLevel,sRemark,sSID);
}
RxRecordset arst;
arst.Open(sSQL,adCmdText);
this->ButtonEnabled(false);
m_EdtSSID.SetFocus();
}
void CStaffInfo::OnButundo()
{
// TODO: Add your control notification handler code here
if(MessageBox("确定要撤消操作吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
this->ButtonEnabled(false);
this->Clear();
this->Display(m_sID);
this->m_Butadd.SetFocus();
}
void CStaffInfo::OnButexit()
{
// TODO: Add your control notification handler code here
this->OnCancel();
}
void CStaffInfo::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: Add your message handler code here
CRect rect;
CBitmap bit;
CDC memDC;
this->GetClientRect(&rect);
bit.LoadBitmap(IDB_BIT_BJ);
memDC.CreateCompatibleDC(&dc);
memDC.SelectObject(&bit);
dc.BitBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0,SRCCOPY);
memDC.DeleteDC();
::DeleteObject(&bit);
// this->DisplayPhoto(strPath);
CDialog::OnPaint();
// Do not call CDialog::OnPaint() for painting messages
}
HBRUSH CStaffInfo::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if(nCtlColor==CTLCOLOR_STATIC)
{
pDC->SetBkColor(RGB(255,255,255));
pDC->SetTextColor(RGB(0,0,0));
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
void CStaffInfo::CheckID(CString ID)
{
/*if(ID.GetLength() != 18)
{
MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
//this->Display(m_sID);
m_EdtSIID.SetFocus();
return;
}
else
{
int num=0;
char ch;
for(int i=0;i<17;i++)
{
ch = ID.GetAt(i);
if(ch>47 && ch<58)
num++;
}
if(i==17)
{
ch = ID.GetAt(i);
if((ch>47 && ch<58) || (ch==88 || ch==120))
num++;
}
if(num != 18)
{
MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
//this->Display(m_sID);
m_EdtSIID.SetFocus();
return;
}
else
{
CString syear = ID.Mid(6,4);
int year = atoi(syear);
CString smonth = ID.Mid(10,2);
int month = atoi(smonth);
CString sday = ID.Mid(12,2);
int day = atoi(sday);
BOOL leap;
switch(month)
{
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
if(day<0 || day>31)
{
MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
//this->Display(m_sID);
m_EdtSIID.SetFocus();
return;
}
// else
// {
// MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
// return;
// }
break;
case 4: case 6: case 9: case 11:
if(day<0 || day>30)
{
MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
//this->Display(m_sID);
m_EdtSIID.SetFocus();
return;
}
// else
// {
// MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
// return;
// }
break;
case 2:
if(year % 4 == 0)
{
if(year % 100 != 0)
leap = TRUE;
else if(year % 400 == 0)
leap = TRUE;
else
leap = FALSE;
}
else
leap = FALSE;
if(leap)
if(day<0 || day>29)
{
MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSIID.SetFocus();
//this->Display(m_sID);
return;
}
// else
// {
// MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
// return;
// }
else
if(day<0 || day>28)
{
MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
// this->Display(m_sID);
m_EdtSIID.SetFocus();
return;
}
// else
// {
// MessageBox("输入身份证号码无效","系统提示",MB_OK|MB_ICONSTOP);
// return;
// }
break;
}
}
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -