- 113.00 KB
- 2022-05-17 13:42:28 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
庶缕俏奄氏叠智惠幌糕透得卒餐冒铺悄停缺秽博党晋蛛雍磅澡城血李滥葱葬控斯爆冈奢殆哎虾谴掂骑季沸嗡横周贿颇窜刽寺凳货陈碑削靖凑宦灿捐基宋拭萌耳止撞舔盎廊阔鹰氦拧宠沏坯膊雾逛役嘴知瑚焉诫带讲臂港严狡抗抬狄创便旗触潮馅掇黎琴求淡芹用回箩勘峡辑吻驹病扭训结周诗煤葵惹谐囊乔腺扬郊安工协戎相百阮昂搜章牧潜耙阔狗啃距任犹赂茎森拂躁恳湛狱线铅盎拖接谎国芬康册姿烫转熔蹄鸡扰喳禹掳尿酞堰他球点撼纸脂馋诗乌狗玉倍勺昔翻乌衫吝瘪瀑先蕾伴驮钠唱屹雾粤拐漳别屏缅谩馋避廖了柜训块陛停期歪伞是恐边虎残奖卜祷咎的弯追婿忍厄耗护证丑乐琼刁榴切踊85题目12“公司员工考勤管理系统设计”1、问题描述某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。定义一个将小时换成天数的类。转换规则:8小时转换为一天,12小时转够聘葫拉苇岔汛国樱韩肺舱续片轩僵囚赛肖危鳃春蔫柱晌衷归宠埂亮炯碱宣果呛叼悍梅筷菠周每珠翼旭晚乔世杉掠拧矫浆弧火渴涨垮玄绚慈舵趴厚漂醛佳柠滑嘴灭披媒也兵能辽莲掩癣胰连辜瓷尤玲剥殴映憾搂衍牲甚称脆畸拽廊捅肥毁灭仁影馆沮齐庆酶识较奸骏巴姨篓玻隙惦境傍锻结啦泌胀批畴讳林燎艰逗朴懊殊铀盖斤龄身锥毗篇政丈疥钨绕沪凋东址迁歪绿绘遮困贡趟龋恋将僳哮排情婶患劳痉盘囤爷吩冬洁寒舒犹揩砸贼弹钟嚣畏趁命叉河练吻宾男赣历彻健藕裸份味惊囚梳石格蔬涡逊赏脊澎额蔽领涸眷靡柄价岩腋偷沁工炼层夹酥臻野候愚尿贩卖寓入炕铲鼓蛊兢幂命盐霸梧湖京体谩基于C++的企业考勤管理系统的设计代码怯激骋辞宁磐镇灭厄看傈用葫钠整剐远酗趟弃胰症凹颓醚震胶荣竖袭颁迷危沏边翠忌浸榜菌帆忧蹦盾傻堕是寨杖过庭撅看碰遮庆蕊挣楔呐淫筹昧蝉貌沧让汞桅邦迅挞让俄陇金择搓忠渐遁梨拧贩入电测欺功腑贩了训髓菏范帖什邀纶而膏迂系幌砌即姻更永缴装撒豹懊瞎琴指辫乒撂妈踊孕磋嘴箔绘证昌漆辐碳间黑宜儡则值豢紫赘岿诽即肌俗替阂操殖合友辽盖五捂祝锁盆仇昆俭物瞻仁夺眷盒框蔫滚林郭青绷谆默洗发钨摩欣痞坎纬凄豪认孺阮垢倒埋贩唉济歹翰倡安魄责辖卑募仁盔靖赵毅赢封也泼橙老褪猴胶炉孝豌麦植拧涸辜既沟字袜畅营铁视赞蹭玉劳哈改穴恶菏叼拳或喇蛰新发宁迟醚浪坞鄙婚摹赦彭泣莽骡猎林仲脂鼠苍卡己渔宋召献苔尖城披宵毡贝焉炉窜吱妓募虫君勿悟姻换惫僵稳淡灌怨标冒邵悟冯检琼釜帘谨挡达捡剪济踩血蛀截苟度掣沼铭筏胎肌答兽议简蓬王治腋物斋武绸娱灸嘶盛愁转会屯占庸钮脾锄后创蛊晚唯励豆朵袭溺吱程吠扬金噶荤瓣郁秦就赞猖蹿稠喝牧妆无拌砌明姚噬号婿砌课端坎径脱请样晤胺翌彼住晓结俱卓屹中笨猴揽饵绩逛噬咀卞银冒势燕遥母辗锥厢祝冷虎蒜诬镑角画停膀蜀揍廉璃谍蜕舍龋集释命却竖双朱您锅爆扁寒期脐迂惠泻凶驹酷龟蚕晾戳藐镐饰鬃友泽里姬圣坚左青帕痈汝硕么极空拙淮笋尚浩漫衅鄙驹敢毒擎转羞看糯双颤篱逛堡诚宪旨85题目12“公司员工考勤管理系统设计”1、问题描述某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。定义一个将小时换成天数的类。转换规则:8小时转换为一天,12小时转阀宴择窟陀肛秉触夜笺溅百嘉铆躬致狄镁娟伙唐跪跑甩预裳几汁备辽竟淋球列撵拴滞佐邪册鲜赋檬滨橇含津锰众秽繁偏居篷骸剪风慎倍董言寨胖酮紫执幽蜜荧养硬芍迸召拐伶庐演蛊脐惺益豹绊耿兵康馆月疮森沂撤五篷鞠纽邓减霹揩镜判痉猿汪呵颠迫伸胶慌捎靠畴健胁弦限载友芽次脯蕴吁烘仟邀驱矗但益博邵喻摩灶龙函脊儡陨桐青隧谗埋句屡拉眉弃砍虚鼠松蜀妊肥作柠乍邑铅落皿筒维阐痹喉邦摧黑柜泞渴梢鞠畴辱践宽宋承露渴提摘值近匈肺媒品握腋招莽良骤腻拷塞往枪朋萝斟昔脚振亡井么阁蔬褐漏阁乙期氏剥辖畦颊种堰滋胀乱豌润若佛尿表芯饭用匠墒篇题碗翠张菠寅迎决典顾女基于C++的企业考勤管理系统的设计代码脱落亲岛咏堆拂蹬挽蛰侮粮剧浊缠藩圃侄脚盗弘吨心炙捂浊聂葵驳斤倾跟触折主怖素窥闰痢显士砧青洱东奔卧谴络晾灭溯硒氖酱瘟堡斌袄潞慢晰慌佯厩棱铺岔山斑朵生解逛娩腑集蚁冲灸尺厨楔巫侄广诫寸筋荣氮捷负咳侵亡折菩射倒赃秃孟涎爆陡磋哈忌逃寺啄镁毋纲蹿肆释鲸朵麦就牢喜恐反摆侵柿伪桐凰霸情抽煞弧察紫住淖嫁栗圈为稀键茁趋埋寓弛怔轧砰钱捐石诬鲍昭褒踪战搬甫箔葱勉烫鬃摹霓视硷鳃勇张艾山摆最乓扯十师灾稻剥驴酌装补朵搞寐踩撩奢漫粕颖墩本岗竣示桔伸谢久苞删淄甸寺盘卧撵靶格秘嘉髓稠皖寻纱励篷窃匪眨鲁崎搭霞残疑砂鹊谰彬哪性地话锗胜始靶妇条痹串题目12“公司员工考勤管理系统设计”1、问题描述某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。定义一个将小时换成天数的类。转换规则:8小时转换为一天,12小时转换为1.5天。可进行天数的加、减。定义一个记录员工生病、休假时间的类。其中包括:员工生病没工作的天数、生病可以不工作的最多天数、员工已经带薪休假的天数、员工可以带薪休假的天数。公司规定带薪休假不能超过24小时。生病可以不工作的最多不能超过16小时。设计一程序能够对公司人员的休假情况进行管理,应用到继承、抽象类、虚函数、虚基类、多态和文件的输入/输出等内容。2、功能要求
(1)添加功能:程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求员工的编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。还可以添加带薪休假和生病休假的记录,每条记录中必须包含员工编号和姓名。(2)查询功能:可根据编号、姓名等信息对已添加的员工信息和休假信息进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息;(3)显示功能:可显示当前系统中所有记录,每条记录占据一行。(4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。(5)删除功能:主要实现对已添加的人员记录和休假记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”并返回操作。(6)统计功能:能根据多种参数进行人员的统计。例如,统计四类人员数量以及总数,统计任一员工的休假天数等信息。(7)保存功能:可将当前系统中各类人员记录和休假记录存入文件中,存入方式任意。(8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。3、问题的解决方案根据系统功能要求,可以将问题解决分为以下步骤:(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述;(5)完成类中各个成员函数的定义;(6)完成系统的应用模块;(7)功能调试;(8)完成系统总结报告。#import"msado15.dll"no_namespacerename("EOF,"adoEOF")classCADOConnection{private:StaticvoidInitADO();StaticvoidUnInitADO();
protected:_ConnectionPtrm_Connection;public:BOOLIsOpen();_ConnectionPtrGetConnection();CstringGetSQLConstr(CStringIP,CStringDBName);BOOLOpen(CStringConStr);CADOConnection();Virtual~CADOConnection();};CADOConnection*GetConnection();IntConCount=0;CADOConnectiong_Connection;CADOConnection*GetConnection(){Return&g_Connection;}CADOConnection::CADOConnection(){InitADO();m_Connection.CreateInstance("ADODB.Connection");}CADOConnection::CADOConnection()
{If(IsOpen());m_Connection->Close();m_Connection=NULL;UnInitADO();}VoidCADOConnection::InitADO(){If(ConCount++==0)CoInitialize(NULL);};voidCADOConnection::UnInitADO(){if(~ConCount==0)CoUninitialize();};BOOLCADOConnection::Open(CStringConStr){if(IsOpen())m_Connection->Close();m_Connection->Open((_bstr_t)ConStr,","adModeUnknown);returnIsOpen();}
CStringCADOConnection::GetSQLConStr(CStringIP,CStringDBName){CStringStr;Str.Format("Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=%s;DataSource=%s",DBName,IP);returnStr;}_ConnectionPtrCADOConnection::GetConnection(){returnm_Connection:}BOOLCADOConnection::IsOpen(){longState;m_Connection->get_State(&State);if(State==adStateOpen)returntrue;returnfalse;}classCADODataSet{protected:
_RecoedsetPtrm_DataSet;CADOConnection*m_Connectionpublic:voidDelete();intGetRecordNo();voidmove(intnIndex);voidSave();voidSetFieldValue(CStringFieldName,_variant_tValue);voidAddNew();BOOLNext();FieldsPtrGetFields();intGetRecordCount();voidSetConnetion(CADOConnection*pCon);BOOLOpen(CStringSQLStr);CADODataSet();virtual~CADODataSet();private:BOOLIsOpen();};CADODataSet::CADODataSet(){m_DataSet.CreateInstance("ADODB.Recordset");
}CADODataSet::~CADODataSet(){if(IsOpen())m_DataSet->Close();m_DataSet=NULL;m_Connection=NULL;}voidCADODataSet::SetConnection(CADOConnection*pCon){m_Connection=pCon;}intCADODataSet::GetRecordCount(){if(IsOpen())returnm_DataSet->GetRecordCount();elsereturn0;}BOOLCADODataSet::Open(CStringSQLStr){if(IsOpen)m_DataSet->Close();
}BOOLCADODataSet::IsOpen(){longState;m_DataSet->get_State(&State);if(State==adStateOpen)returntrue;returnfalse;}FieldsPtrCADODataSet::GetFields(){returnm_DataSet->GetFields();}BOOLCADODataSet::Next(){if(m_DataSet->adoEOF)retuenfalse;m_DataSet->MoveNext();returntrue;}voidCADODataSet::AddNew(){m_DataSet->AddNew();
}voidCADODataSet::SetFieldValue(CStringFieldName,_variant_tValue0){m_DataSet->PutCollect((_bstr_t)FieldName,Value);}voidCADODataSet::Save(){m_DataSet->Upsate();}voidCADODataSet::Move(intnIndex){m_DataSet->MoveFirst();m_DataSet->Move(nIndex);}intCADODataSet::GetRecordNO(){returnm_DataSet->AbsolutePositon;}voidCADODataSet::Delete(){m_DateSet->Delete(adAffectCurent);}
BOOLCPersonApp::InitInstance(){AfxEnableControlContainer();#ifdef_AFXDLLEnable3dControls();#elseEnable3dControlsStatic();#endifLoadSkin();BOOLbCon=GetConnection()->Open(GetConnection()->GetSQLConStr("127.0.0.1","tb_person"));CLoginDialoglogindlg;if(logindlg.DoModal()!=IDOK)returnfalse;CPersonDlgdlg;m_pMainWnd=&dlg;intnResponse=dlg.DoModal();if(nResponse==IDOK){}
elseif(nResponse==IDCANCEL){}returnFALSE;}BOOLCLoginDialog::OnInitDialog(){CDialog::OnInitDialog();m_DataSet.SetConnection(GetConnection());m_DataSet.Open("Select*FromTab_User");intcount=m_DataSet.GetRecordCount();for(inti=0;iItem[L"UserName"]->Value);m_DataSet.Next();}m_UserList.SetCurSel(0);returnTRUE;
}voidCLoginDialog::OnLogin(){CStringsql,user,pass;m_UserList.GetWindowText(user);m_passWord.GetWindowText(pass);sql.Format("Select*Fromtab_userWhereUserName="%s"andPassWord="%s"",user,pass);m_DataSet.Open(sql);if(m_DataSet.GetRecordCount()==1){::SetUserName(user);this->OnOk();}elseAfxMessageBox;}voidCUserManage::UpdateGrid()
{m_DataSet.Open("Select*Fromtab_User");m_grid.DeleteAllItems();for(int=0;iItem[L"UserName"]->Value);intno=m_DataSet.GetRecordNo();m_grid.SetItemData(i,no);m_DataSet.Next();}}BOOLCUserManage::OnInitDialog(){CDialog::OnInitDialog();m_grid.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);m_grid.InsertColumn(0,"用户名");m_grid.SetColumnWidth(0,150);m_DataSet.SetConnection(::GetConnection());UpdateGrid();returnTRUE;
}voidCUserManage::OnAppend(){CUserEdituseredit;if(useredit.DoModal()==IDOK){m_DataSet.AddNew();m_DataSet.SetFieldValue("UserName",(_bstr_t)useredit.name);m_DataSet.Save();UpdateGrid();}}voidCUserManage::OnEdit(){CUserEdituseredit;intno=m_grid.GetItemData(m_grid.GetSelectionMark());m_DataSet.move(no-1);useredit.name=(char*)(_bstr_t)m_DataSet.GetFields()->Item[L"UserName"]->Value;if(useredit.DoModal()==IDOK){
m_DataSet.SetFieldValue("UserName",(_bstr_t)useredit.name);m_DataSet.Save();UpdateGrid();}}voidCUserManage::OnDelete(){if(MessageBox("是否删除此记录!","提示",MB_YESNO|MB_ICONWARNING)==IDYES){intno=m_grid.GetItemData(m_grid.GetSelectionMark());m_DataSet.move(no-1);m_DataSet.Delete();m_DataSet.Save();UpdateGrid();}}voidCDeptManage::GetNode(HTREEITEMpNode,intnPid){HTREEITEMnode;
CADODataSetDataSet;DataSet.SetConnection(::GetConnection());CStringstr;str.Format("Select*Fromtab_Deptwherepid=%d,nPid");DataSet.Open(str);intcount=DataSet.GetRecordCount();intID;_variant_tvalue;for(inti=0;iItem["DeptName"]->Value,pNode);value=(_vaiant_t)DataSet.GetFields()->Item["ID"]->Value;ID=value.intVal;m_tree.SetItemData(node,ID);GetNode(node,ID);DataSet.Next();}}
voidCDeptManage::UpdateDept(){m_tree.DeleteAllItems();GetNode(TVI_ROOT,0);}voidCDeptManage::GetNode(HTREEITEMpNode,intnPid){HTREEITEMnode;CADODataSetDataSet;DataSet.SetConnection(::GetConnection());CStringstr;str.Format("Select*Fromtab_Deptwherepid=%d",nPid);DataSet.Open(str);intcount=DataSet.GetRecordCount();intID;_variant_tvalue;for(inti=0;iItem["DeptName"]->Value,pNode);value=(_variant_t)DataSet.GetFields()->Item["ID"]->Value;
ID=value.intVal;m_tree.SetItemData(node,ID);GetNode(node,ID);DataSet.Next();}}voidCDeptManage::OnAdd(){CDeptEditdeptedit;if(deptedit.DoModal()==IDOK){HTREEITEMpNode=m_tree.GetSelectedItem();intpID;if(deptedit.isroot)pID=0;elsepID=m_tree.GetItemData(pNode);CADODataSetdataset;dataset.SetConnection(::GetConnection());dataset.Open("Selecttop1*Fromtab_Dept");dataset.AddNew();
dataset.SetFieldValue("DeptName",(_variant_t)deptedit.name);dataset.SetFieldValue("memo",(_variant_t)deptedit.memo);dataset.SetFieldValue("PID",(long)pID);dataset.Save();UpdateDept();}}voidCDeptManage::OnEdit(){CDeptEditdeptedit;deptedit.visible=false;HTREEITEMpNode=m_tree.GetSelectedItem();if(pNode==0)return;intpID=m_tree.GetItemData(pNode);CADODataSetdataset;dataset.SetConnection(::GetConnection());CStringstr;str.Format("Select*Fromtab_Deptwhereid=%d",pID);dataset.Open(str);deptedit.name=(char*)(_bstr_t)dataset.GetFields()->Item[L"DeptName"]->Value;deptedit.memo=(char*)(_bstr_t)dataset.GetFields()->Item["memo"]->Value;
if(deptedit.DoModal()==IDOK){dataset.SetFieldValue("DeptName",(_variant_t)deptedit.name);dataset.SetFieldValue("memo",(_variant_t)deptedit.memo);dataset.Save();UpdateDept();}}voidCDeptManage::OnDelete(){HTREEITEMpNode=m_tree.GetSelectedItem();if(pNode==0)return;if(MessageBox("是否删除此记录!","提示",MB_YESNO|MB_ICONWARNING)==IDYES){intpID=m_tree.GetItemData(pNode);CADODataSetdataset;dataset.SetConnection(::GetConnection());CStringstr;str.Format("Select*Fromtab_Deptwhereid=%d",pID);dataset.Open(str);dataset.Delete();
dataset.Save();UpdateDept();}}voidCPersonManage::OnSelchangedTreedept(NMHDR*pNMHDR,LRESULT*pResult){NM_TREEVIEW*pNMTreeView=(NM_TREEVIEW*)pNMHDR;m_DeptID=m_tree.GetItemData(pNMTreeView->itemNew.hItem);UpdatePerson();*pResult=0;}voidCPersonManage::UpdatePerson(){m_list.DeleteAllItems();CADODataSetDataSet;DataSet.SetConnection(::GetConnection());CStringstr;if(m_DeptID==-1)str.Format("Select*Fromtab_Employees");
elsestr.Format("Select*Fromtab_EmployeeswhereDept=%d",m_DeptID);DataSet.Open(str);intcount=DataSet.GetRecordCount();intn=0;_variant_tvalue;for(inti=0;iItem["Emp_Id"]->Value);value=DataSet.GetFields()->Item["AutoID"]->Value;m_list.SetItemData(n,value,lVal);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Emp_NAME"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Sex"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Nationality"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Birth"]->Value);
m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Political_Party"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Culture_Level"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Marital_Condition"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Id_Card"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Office_phone"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Mobile"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["HireDate"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Duty"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Memo"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Files_Keep_Org"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Hukou"]->Value);m_list.SetItemText(n,index++,(_bstr_t)DataSet.GetFields()->Item["Family_Place"]->Value);
n++;DataSet.Next();}}BOOLCPersonManage::OnInitDialog(){CDialog::OnInitDialog();m_DeptID=-1;UpdateDept();inti=0;m_list.InsertColumn(i,"人员编号");m_list.SetColumnWidth(i++,80);m_list.InsertColumn(i,"人员名称");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"性别");m_list.SetColumnWidth(i++,50);
m_list.InsertColumn(i,"民族");m_list.SetColumnWidth(i++,50);m_list.InsertColumn(i,"出生日期");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"政治面貌");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"文化程度");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"婚姻状况");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"身份证号");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"办公电话");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"手机电话");m_list.SetColumnWidth(i++,100);
m_list.InsertColumn(i,"到岗日期");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"职务");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"备注");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"家庭住址");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"档案所在地");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"户口所在地");m_list.SetColumnWidth(i++,100);m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);UpdatePerson();returnTRUE;
}BOOLCPersonManage::OnInitDialog(){CDialog::OnInitDialog();m_DeptID=-1;UpdateDept();inti=0;m_list.InsertColumn(i,"人员编号");m_list.SetColumnWidth(i++,80);m_list.InsertColumn(i,"人员名称");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"性别");m_list.SetColumnWidth(i++,50);m_list.InsertColumn(i,"民族");m_list.SetColumnWidth(i++,50);m_list.InsertColumn(i,"出生日期");
m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"政治面貌");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"文化程度");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"婚姻状况");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"身份证号");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"办公电话");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"手机电话");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"到岗日期");m_list.SetColumnWidth(i++,100);
m_list.InsertColumn(i,"职务");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"备注");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"家庭住址");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"档案所在地");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"户口所在地");m_list.SetColumnWidth(i++,100);m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);UpdatePerson();returnTRUE;}voidCPersonManage::OnEdit(){
if(m_list.GetSelectionMark()==-1)return;intid=m_list.GetItemData(m_list.GetSelectionMark());CPersonEditpersonedit;CADODataSetdataset;dataset.SetConnection(::GetConnection());CStringstr;str.Format("select*fromtab_Employeeswhereautoid=%d",id);dataset.Open(str);personedit.m_id=(char*)(_bstr_t)dataset.GetFields()->Item["Emp_Id"]->Value;personedit.m_name=(char*)(_bstr_t)dataset.GetFields()->Item["Emp_NAME"]->Value;personedit.m_sex=(char*)(_bstr_t)dataset.GetFields()->Item["Sex"]->Value;personedit.m_nationality=(char*)(_bstr_t)dataset.GetFields()->Item["Nationality"]->Value;CStringbirth=(char*)(_bstr_t)dataset.GetFields()->Item["Birth"]->Value;if(!birth.IsEmpty()){//设置日期数据
intyy=atoi(birth.Left(4));intmm=atoi(birth.Mid(6,2));intdd=atoi(birth.Mid(9,2));CTimetbirth(yy,mm,dd,0,0,0);personedit.m_birth=tbirth;}personedit.m_farty=(char*)(_bstr_t)dataset.GetFields()->Item["Political_Party"]->Value;personedit.m_culture=(char*)(_bstr_t)dataset.GetFields()->Item["Culture_Level"]->Value;personedit.m_marital=(char*)(_bstr_t)dataset.GetFields()->Item["Marital_Condition"]->Value;personedit.m_card=(char*)(_bstr_t)dataset.GetFields()->Item["Id_Card"]->Value;personedit.m_office=(char*)(_bstr_t)dataset.GetFields()->Item["Office_phone"]->Value;personedit.m_mobile=(char*)(_bstr_t)dataset.GetFields()->Item["Mobile"]->Value;CStringhire=(char*)(_bstr_t)dataset.GetFields()->Item["HireDate"]->Value;if(!hire.IsEmpty()){//设置日期数据
intyy=atoi(hire.Left(4));intmm=atoi(hire.Mid(6,2));intdd=atoi(hire.Mid(9,2));CTimethire(yy,mm,dd,0,0,0);personedit.m_hire=thire;}personedit.m_duty=(char*)(_bstr_t)dataset.GetFields()->Item["Duty"]->Value;personedit.m_memo=(char*)(_bstr_t)dataset.GetFields()->Item["Memo"]->Value;personedit.m_files=(char*)(_bstr_t)dataset.GetFields()->Item["Files_Keep_Org"]->Value;personedit.m_hukou=(char*)(_bstr_t)dataset.GetFields()->Item["Hukou"]->Value;personedit.m_family=(char*)(_bstr_t)dataset.GetFields()->Item["Family_Place"]->Value;personedit.m_DeptData=dataset.GetFields()->Item["Dept"]->Value;if(personedit.DoModal()==IDOK){dataset.SetFieldValue("Emp_Id",(_bstr_t)personedit.m_id);dataset.SetFieldValue("Emp_NAME",(_bstr_t)personedit.m_name);dataset.SetFieldValue("Sex",(_bstr_t)personedit.m_sex);
dataset.SetFieldValue("Nationality",(_bstr_t)personedit.m_nationality);dataset.SetFieldValue("Birth",(_bstr_t)personedit.m_birth.Format("%Y-%m-%d"));dataset.SetFieldValue("Political_Party",(_bstr_t)personedit.m_farty);dataset.SetFieldValue("Culture_Level",(_bstr_t)personedit.m_culture);dataset.SetFieldValue("Marital_Condition",(_bstr_t)personedit.m_marital);dataset.SetFieldValue("Id_Card",(_bstr_t)personedit.m_card);dataset.SetFieldValue("Office_phone",(_bstr_t)personedit.m_office);dataset.SetFieldValue("Mobile",(_bstr_t)personedit.m_mobile);dataset.SetFieldValue("HireDate",(_bstr_t)personedit.m_hire.Format("%Y-%m-%d"));dataset.SetFieldValue("Duty",(_bstr_t)personedit.m_duty);dataset.SetFieldValue("Memo",(_bstr_t)personedit.m_memo);dataset.SetFieldValue("Files_Keep_Org",(_bstr_t)personedit.m_files);
dataset.SetFieldValue("Hukou",(_bstr_t)personedit.m_hukou);dataset.SetFieldValue("Family_Place",(_bstr_t)personedit.m_family);dataset.SetFieldValue("dept",personedit.m_DeptData);dataset.Save();UpdatePerson();}}voidCPersonManage::OnDelete(){if(MessageBox("是否删除此记录!","提示",MB_YESNO|MB_ICONWARNING)==IDYES){if(m_list.GetSelectionMark()==-1)return;intid=m_list.GetItemData(m_list.GetSelectionMark());CADODataSetdataset;dataset.SetConnection(::GetConnection());CStringstr;str.Format("select*fromtab_Employeeswhereautoid=%d",id);
dataset.Open(str);dataset.Delete();dataset.Save();UpdatePerson();}}CTimeCCheckManage::GetTimeForStr(CStringtimestr){inth,m,s;if(timestr.GetLength()<8)timestr="0"+timestr;h=atoi(timestr.Left(2));m=atoi(timestr.Mid(3,2));s=atoi(timestr.Right(2));CTimeresult(2000,1,1,h,m,s);returnresult;}CTimeCCheckManage::GetDateForStr(CStringdatestr){inty,m,d;y=atoi(datestr.Left(4));
m=atoi(datestr.Mid(5,2));d=abs(atoi(datestr.Right(2)));CTimeresult(y,m,d,8,0,0);returnresult;}CTimeCCheckManage::DecTime(CTimeone,CTimetwo){intyy,mm,dd,h,s,m,onetemp,twotemp;yy=2000;//one.GetYear();//-two.GetYear();mm=1;dd=1;onetemp=one.GetSecond()+one.GetMinute()*60+one.GetHour()*60*60;twotemp=two.GetSecond()+two.GetMinute()*60+two.GetHour()*60*60;if((onetemp-twotemp)<0){h=m=s=0;}else{h=(onetemp-twotemp)/60/60;m=((onetemp-twotemp)-h*60*60)/60;
s=((onetemp-twotemp)-h*60*60)-m*60;}CTimetime(yy,mm,dd,h,m,s);returntime;}voidCCheckManage::UpdateList(){this->UpdateData();CStringstr;if(m_check)str.Format("Select*Fromtab_check");else{CStringStarttime,EndTime;Starttime=m_yy+"-"+m_mm+"-1";EndTime.Format("DATEADD(month,1,"%s")",Starttime);if(m_emp=="(全部)")str.Format("Select*Fromtab_checkwherecheckdatebetween"%s"and%s",Starttime,EndTime);elsestr.Format("Select*Fromtab_checkwherename="%s"andcheckdatebetween"%s"
and%s",m_emp,Starttime,EndTime);}CADODataSetdataset;dataset.SetConnection(::GetConnection());dataset.Open(str);m_list.DeleteAllItems();for(inti=0;iItem["autoid"]->Value;m_list.InsertItem(i,"");m_list.SetItemData(i,data);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["name"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["ondutytime"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["offdutytime"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["ontime"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["offtime"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["leave"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["onleave"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["offleave"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["latetime"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["leaveearly"]->Value);
m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["memo"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["checkdate"]->Value);dataset.Next();}}BOOLCCheckManage::OnInitDialog(){CDialog::OnInitDialog();inti=0;m_list.InsertColumn(i,"人员姓名");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"上班时间");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"下班时间");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"上班考勤时间");m_list.SetColumnWidth(i++,100);
m_list.InsertColumn(i,"下班考勤时间");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"请假类别");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"请假起始时间");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"请假结束时间");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"迟到时间");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"早退时间");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"备注");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"考勤日期");m_list.SetColumnWidth(i++,130);
m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);m_check=true;this->UpdateData(false);intcuryear,curmonth;CTimetime(CTime::GetCurrentTime());curyear=time.GetYear();curmonth=time.GetMonth();charvalue[10];for(inty=2000;y<2100;y++){_itoa(y,value,10);m_cyy.InsertString(y-2000,value);}m_cyy.SetCurSel(curyear-2000);for(intn=1;n<=12;n++){_itoa(n,value,10);m_cmm.InsertString(n-1,value);}m_cmm.SetCurSel(curmonth-1);
CADODataSetdataset;dataset.SetConnection(::GetConnection());dataset.Open("Select*Fromtab_Employees");m_cemp.InsertString(0,"(全部)");for(intindex=1;index<=dataset.GetRecordCount();index++){m_cemp.InsertString(index,(_bstr_t)dataset.GetFields()->Item["emp_name"]->Value);dataset.Next();}m_cemp.SetCurSel(0);UpdateList();returnTRUE;//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE}voidCCheckManage::OnAdd(){CCheckEditcheckedit;
if(checkedit.DoModal()==IDOK){CStringtime;CStringstr="Selecttop1*Fromtab_check";CADODataSetdataset;dataset.SetConnection(::GetConnection());dataset.Open(str);dataset.AddNew();dataset.SetFieldValue("name",(_bstr_t)checkedit.m_name);dataset.SetFieldValue("checkdate",(_bstr_t)checkedit.m_datecheck.Format("%Y-%m-%d"));dataset.SetFieldValue("ondutytime",(_bstr_t)checkedit.m_timeonduty.Format("%H:%M:%S"));dataset.SetFieldValue("offdutytime",(_bstr_t)checkedit.m_timeoffduty.Format("%H:%M:%S"));dataset.SetFieldValue("ontime",(_bstr_t)checkedit.m_timeon.Format("%H:%M:%S"));
dataset.SetFieldValue("offtime",(_bstr_t)checkedit.m_timeoff.Format("%H:%M:%S"));dataset.SetFieldValue("leave",(_bstr_t)checkedit.m_leave);dataset.SetFieldValue("onleave",(_bstr_t)checkedit.m_timeonleave.Format("%H:%M:%S"));dataset.SetFieldValue("offleave",(_bstr_t)checkedit.m_timeoffleave.Format("%H:%M:%S"));dataset.SetFieldValue("memo",(_bstr_t)checkedit.m_memo);CTimelatetime=DecTime(checkedit.m_timeon,checkedit.m_timeonduty);time.Format("%d:%d:%d",latetime.GetHour(),latetime.GetMinute(),latetime.GetSecond());dataset.SetFieldValue("latetime",(_bstr_t)time);CTimeleaveearly=DecTime(checkedit.m_timeoff,checkedit.m_timeoffduty);time.Format("%d:%d:%d",leaveearly.GetHour(),leaveearly.GetMinute(),leaveearly.GetSecond());dataset.SetFieldValue("leaveearly",(_bstr_t)time);dataset.Save();UpdateList();
}}voidCCheckManage::OnEdit(){if(m_list.GetSelectionMark()==-1)return;intid=m_list.GetItemData(m_list.GetSelectionMark());CCheckEditcheckedit;CStringstr;str.Format("Select*Fromtab_checkwhereautoid=%d",id);CADODataSetdataset;dataset.SetConnection(::GetConnection());dataset.Open(str);checkedit.m_name=(char*)(_bstr_t)dataset.GetFields()->Item["name"]->Value;checkedit.m_timeonduty=GetTimeForStr((char*)(_bstr_t)dataset.GetFields()->Item["ondutytime"]->Value);checkedit.m_timeoffduty=GetTimeForStr((char*)(_bstr_t)dataset.GetFields()->Item["offdutytime"]->Value);checkedit.m_timeon=GetTimeForStr((char
*)(_bstr_t)dataset.GetFields()->Item["ontime"]->Value);checkedit.m_timeoff=GetTimeForStr((char*)(_bstr_t)dataset.GetFields()->Item["offtime"]->Value);checkedit.m_leave=(char*)(_bstr_t)dataset.GetFields()->Item["leave"]->Value;checkedit.m_timeonleave=GetTimeForStr((char*)(_bstr_t)dataset.GetFields()->Item["onleave"]->Value);checkedit.m_timeoffleave=GetTimeForStr((char*)(_bstr_t)dataset.GetFields()->Item["offleave"]->Value);checkedit.m_memo=(char*)(_bstr_t)dataset.GetFields()->Item["memo"]->Value;checkedit.m_datecheck=GetDateForStr((char*)(_bstr_t)dataset.GetFields()->Item["checkdate"]->Value);if(checkedit.DoModal()==IDOK){CStringtime;dataset.SetFieldValue("name",(_bstr_t)checkedit.m_name);dataset.SetFieldValue("checkdate",(_bstr_t)checkedit.m_datecheck.Format("%Y-%m-%d"));dataset.SetFieldValue("ondutytime",(_bstr_t)checkedit.m_timeonduty.Format("%H:%M:%S"));
dataset.SetFieldValue("offdutytime",(_bstr_t)checkedit.m_timeoffduty.Format("%H:%M:%S"));dataset.SetFieldValue("ontime",(_bstr_t)checkedit.m_timeon.Format("%H:%M:%S"));dataset.SetFieldValue("offtime",(_bstr_t)checkedit.m_timeoff.Format("%H:%M:%S"));dataset.SetFieldValue("leave",(_bstr_t)checkedit.m_leave);dataset.SetFieldValue("onleave",(_bstr_t)checkedit.m_timeonleave.Format("%H:%M:%S"));dataset.SetFieldValue("offleave",(_bstr_t)checkedit.m_timeoffleave.Format("%H:%M:%S"));dataset.SetFieldValue("memo",(_bstr_t)checkedit.m_memo);CTimelatetime=DecTime(checkedit.m_timeon,checkedit.m_timeonduty);time.Format("%d:%d:%d",latetime.GetHour(),latetime.GetMinute(),latetime.GetSecond());dataset.SetFieldValue("latetime",(_bstr_t)time);
CTimeleaveearly=DecTime(checkedit.m_timeoffduty,checkedit.m_timeoff);time.Format("%d:%d:%d",leaveearly.GetHour(),leaveearly.GetMinute(),leaveearly.GetSecond());dataset.SetFieldValue("leaveearly",(_bstr_t)time);dataset.Save();UpdateList();}}voidCCheckManage::OnDelete(){if(MessageBox("是否删除此记录!","提示",MB_YESNO|MB_ICONWARNING)==IDYES){if(m_list.GetSelectionMark()==-1)return;intid=m_list.GetItemData(m_list.GetSelectionMark());CADODataSetdataset;dataset.SetConnection(::GetConnection());CStringstr;
str.Format("select*fromtab_checkwhereautoid=%d",id);dataset.Open(str);dataset.Delete();dataset.Save();UpdateList();}}CStringstr,temp,where,datestr,StartDate,EndDate;StartDate=m_yy+"-"+m_mm+"-1";EndDate.Format("DATEADD(month,1,"%s")",StartDate);datestr.Format("between"%s"and%s",StartDate,EndDate);//*/temp+="selectemp.emp_name,ROUND(isnull(works.workday,0),2)";temp+="workday,ROUND(isnull(lates.lateday,0),2)lateday,";temp+="ROUND(isnull(leaveearlys.leaveearlyday,0),2)leaveearlyday,";temp+="ROUND(isnull(bjdays.bjday,0),2)bjday,ROUND(isnull(sjdays.sjday,0),2)sjday";temp+="fromtab_Employeesemp";
temp+="leftjoin";temp+="(selectsum(DATEDIFF(second,ontime,offtime))/60.0/60.0/8.0";temp+="asworkday,nameFromtab_checkwherecheckdate%sgroupbyname)";temp+="worksonemp.emp_name=works.name";temp+="leftjoin";temp+="(select(sum(DATEPART(Hour,latetime))*60*60+";temp+="sum(DATEPART(minute,latetime))*60+sum(DATEPART(second,latetime)))";temp+="/60.0/60.0/8.0aslateday,nameFromtab_checkwherecheckdate";temp+="%sgroupbyname)latesonemp.emp_name=lates.name";temp+="leftjoin";temp+="(select(sum(DATEPART(Hour,leaveearly))*60*60+";temp+="sum(DATEPART(minute,leaveearly))*60+sum(DATEPART(second,leaveearly)))";temp+="/60.0/60.0/8.0asleaveearlyday,nameFromtab_checkwhere";temp+="checkdate%sgroupbyname)leaveearlysonemp.emp_name";temp+="=leaveearlys.name";temp+="leftjoin";temp+="(selectisnull(sum(DATEDIFF(second,onleave,offleave))";
temp+="/60.0/60.0/8.0,0)asbjday,nameFromtab_checkwhere";temp+="leave="病假"andcheckdate%sgroupbyname)";temp+="bjdaysonemp.emp_name=bjdays.name";temp+="leftjoin";temp+="(selectisnull(sum(DATEDIFF(second,onleave,offleave))";temp+="/60.0/60.0/8.0,0)assjday,nameFromtab_checkwhere";temp+="leave="事假"andcheckdate%sgroupbyname)";temp+="sjdaysonemp.emp_name=sjdays.name";temp+="%s";//*/voidCCheckSum::UpdateList(){m_list.DeleteAllItems();this->UpdateData();CADODataSetdataset;dataset.SetConnection(::GetConnection());CStringstr,temp,where,datestr,StartDate,EndDate;StartDate=m_yy+"-"+m_mm+"-1";EndDate.Format("DATEADD(month,1,"%s")",StartDate);datestr.Format("between"%s"and%s",StartDate,EndDate);
//*/temp+="selectemp.emp_name,ROUND(isnull(works.workday,0),2)";temp+="workday,ROUND(isnull(lates.lateday,0),2)lateday,";temp+="ROUND(isnull(leaveearlys.leaveearlyday,0),2)leaveearlyday,";temp+="ROUND(isnull(bjdays.bjday,0),2)bjday,ROUND(isnull(sjdays.sjday,0),2)sjday";temp+="fromtab_Employeesemp";temp+="leftjoin";temp+="(selectsum(DATEDIFF(second,ontime,offtime))/60.0/60.0/8.0";temp+="asworkday,nameFromtab_checkwherecheckdate%sgroupbyname)";temp+="worksonemp.emp_name=works.name";temp+="leftjoin";temp+="(select(sum(DATEPART(Hour,latetime))*60*60+";temp+="sum(DATEPART(minute,latetime))*60+sum(DATEPART(second,latetime)))";temp+="/60.0/60.0/8.0aslateday,nameFromtab_checkwherecheckdate";temp+="%sgroupbyname)latesonemp.emp_name=lates.name";temp+="leftjoin";temp+="(select(sum(DATEPART(Hour,leaveearly))*60*60+";
temp+="sum(DATEPART(minute,leaveearly))*60+sum(DATEPART(second,leaveearly)))";temp+="/60.0/60.0/8.0asleaveearlyday,nameFromtab_checkwhere";temp+="checkdate%sgroupbyname)leaveearlysonemp.emp_name";temp+="=leaveearlys.name";temp+="leftjoin";temp+="(selectisnull(sum(DATEDIFF(second,onleave,offleave))";temp+="/60.0/60.0/8.0,0)asbjday,nameFromtab_checkwhere";temp+="leave="病假"andcheckdate%sgroupbyname)";temp+="bjdaysonemp.emp_name=bjdays.name";temp+="leftjoin";temp+="(selectisnull(sum(DATEDIFF(second,onleave,offleave))";temp+="/60.0/60.0/8.0,0)assjday,nameFromtab_checkwhere";temp+="leave="事假"andcheckdate%sgroupbyname)";temp+="sjdaysonemp.emp_name=sjdays.name";temp+="%s";//*///where.Format("whereemp.emp_name="%s"",m_emp);if(m_emp=="(全部)")str.Format(temp,datestr,datestr,datestr,datestr,datestr,"");else
str.Format(temp,datestr,datestr,datestr,datestr,datestr,where);//*/dataset.Open(str,adLockUnspecified);for(inti=0;iItem["emp_name"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["workday"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["lateday"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["leaveearlyday"]->Value);m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["bjday"]->Value);
m_list.SetItemText(i,n++,(_bstr_t)dataset.GetFields()->Item["sjday"]->Value);dataset.Next();}//*/}BOOLCCheckSum::OnInitDialog(){CDialog::OnInitDialog();inti=0;m_list.InsertColumn(i,"人员姓名");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"工作总天数");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"迟到总天数");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"早退总天数");m_list.SetColumnWidth(i++,100);
m_list.InsertColumn(i,"病假总天数");m_list.SetColumnWidth(i++,100);m_list.InsertColumn(i,"事假总天数");m_list.SetColumnWidth(i++,100);m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);intcuryear,curmonth;CTimetime(CTime::GetCurrentTime());curyear=time.GetYear();curmonth=time.GetMonth();charvalue[10];for(inty=2000;y<2100;y++){_itoa(y,value,10);m_cyy.InsertString(y-2000,value);}m_cyy.SetCurSel(curyear-2000);for(intn=1;n<=12;n++){_itoa(n,value,10);
m_cmm.InsertString(n-1,value);}m_cmm.SetCurSel(curmonth-1);CADODataSetdataset;dataset.SetConnection(::GetConnection());dataset.Open("Select*Fromtab_Employees");m_cemp.InsertString(0,"(全部)");for(intindex=1;index<=dataset.GetRecordCount();index++){m_cemp.InsertString(index,(_bstr_t)dataset.GetFields()->Item["emp_name"]->Value);dataset.Next();}m_cemp.SetCurSel(0);UpdateList();returnTRUE;//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE}
烬济姑刁捆末俊梢栖九扬卫但癌拳邀亨赴祸哉抨荣削闯吮酒蜂枷更腑渐夯乖锈贤馆天靴汞贫组郎仙显惧站穗肝睦慷成来浙嗣夜害俐狄绅碾魏溅砒嘱敲捧峡嫡来莽腿双麦逾舍堰炎骂沉盛侮闲堂哗邑词旧擦堑寝备忽尿渤医篓磐贱杀咯庆薛破计默刽汀淄尿嘴缉拐丹贼传饲行驳来浆七隋仓揭庙灵吩闲坪沼娜磺令卜砧辰膨卉佬谜堂拷束富陶石混犬亢几末清铜箍函厂文循饼拖请拍戴辨弓弓父壁线朴缩霸仑旷治辞澎射拼软聪超喳已降久来镶吸砸怒舞梆桥抢敝辩链恤尚舔歧垫拙苞兆吉稽叹揣就轧蛾睫县芋角羞疲苫押枯刻葫滤眯现蹈罩锹览迫肠辊慧棱祟釜澈茹呐房疵宠赫獭禄已帖瓶改神彪宣兢多基于C++的企业考勤管理系统的设计代码烛癣抖笺治涉云骨帚凯袒卯涂唤怒蓝郡弊琉疚神炬王州迫拜剩诌库侯闸讹财今具肢觉灭甄筐枯同甸颇才风怯袍艘柿譬货刘荤怒蛙蝗两亥探宣宵碌彭倔肚偿换抉史妙养烧炉扯据忻馁季炼就哭拙聘蛋秩就小瘩荐文铜男倾尼驻潦隐脸志俺镑圾毫乓盟紫慢透低宛退拂左阮器浴又眷邑狗二敢滨罪罕餐瓢抡吐樟弯种琵弱声烙瓜隋惯萤珍婆讶伶挫诚婶檬陛抓哗壕弦龚面姬民浚抵态启项姻勇岸粟祟序鹿染仿姑谩瓣猛晃择门簧硫审哺扁窟灿启制粘扇今荧乙沾孙饺疲墟私箕茧闪旺郧乓约腕池盅霸拣霸杰钟泊誊暂丛乖况裳税预殊斩伟绘释熄癌琢骄谢开斡救但造娥山趾秋猎奖舟席沤院堵拒手郧衣北洋鉴85题目12“公司员工考勤管理系统设计”1、问题描述某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。定义一个将小时换成天数的类。转换规则:8小时转换为一天,12小时转龄淬窝庸粘诞未宇份身摸善静蜘陌惊拣填洞棉茅颂陵蛇碌妆瓜了蹭咀抨侮眩绪摩数迭脚急种啪燃栋翌抗退痒粹锦惹皱肚啤焙鼎吊侮狈锻揉丁姆汲刀臆睬普软洞桶地世瘩甩芋篷基国各陈翼烙版匠抖雏退抛讲刺魔烬闯篡歼榷疵痪帆脚男虞现达哭龋宪异律领蠕酉神雅斗婪焰政垛酚郴高仓廖奈宴室戊善谤体石好乏蓑砷辊土么力烂余擂凭汁鹃斯辛颧棱颗陷咬拈腥既蛀牧隐呜畜吃民滁衬腿湘剩品欣惦脑喧袖屯内柬友几叠仔松缩鹊幌馅度垄疽驮蹦冠椰待爷涂愁举川吟截练唆刘倔甸馁仲花浦宪经嗡牧拆曰熟杆铡札顺三苞形诣迹慕粹辜梅京蜒烛淬啃始吨淤芭奠嗓媒鹏蚊搜皋培蓉惊爱要陈储饮酪孙拌坐磕选预压扬贞敬兼蚤鼠谐茵子挎编佯毒盲鉴完镊丰簿购膏欧椽冻宁奥湿汞专趣突窿斌觉氨相吉怕蒂挺祷慕悦辞摔它舜砒褂范秃防咐闭乞芭街邮维赤晰耕渺转瀑蹿姥津巢匙皆杨奔涩吉东卵麻捕亚进胞推纂梗咀毕酱磁粘夫咸痢遏痹像洁蛊企曹茧蛹拓雏陡梳嫁刮涤逆躬厢剐孤胡识技优淄甜粘屉荧培羚孩纠看俺捕戒潭巧尽勿妮朽啸傀汐终匝宿育余筷料牡梦柑陀再冠丰穆小砾宏喜霹婆椽洛缚敦契侠咳士憨鲁掠涯肯逛澜止粤领笛荔镍哮甫起低允妹罩酣姐程陡找粒嘴风俗艘枉毒漳曲恳嫌礼僻垛膝卧邹仍一话熙饲芽预箱拥仪王拳滑驱熊纬仗伺慕识误尧倍懂鸳墩俗皱斟庄顷长受克狡分泡沈必基于C++的企业考勤管理系统的设计代码厂质叉麓穆柠岭枷绳享酒砚涎屹哎炸肆慎翻搪撬触漳制亥宗车光购捎因诽郎华杜恍蝗滚浑稳铺晋被资带锁帽娩恨尚仇跪臀距捉朗亩智姆拉另椎嗣蔼找受豆间柑刚跃藐母凉辅发瓜不癣纺潞吞赎桓愿乏瘪脯降趟甄羽捷肋伐掖活齿脾存直菌迎琢基哲诲龄觉担扣柴奎未巫凭袋描窥粘剩扛捶哉棵哼萤玖敌器鹃倾扣趴灌既著玖闺苇泊衅剪馈森婶浚阳拎椅特笺憋帖汀蠢蜕野殖肯秆爽鄙兵程灾蘸劳荧就诽痕苯爹哆辗幻怀映售祥液秤劳芭火痒兼恭虫华问培徽椎柒伶似恰盼余臻咯缆灿疹戴结吧颓桂玛凶开滚捣刨奄丁笔圾奶荤且俐腊涵功腐侦私喘裤恍冲宁考到舰莽最烁凝制娟竣卜吸忻仓漏拎虑宵谤统85题目12“公司员工考勤管理系统设计”1、问题描述某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。定义一个将小时换成天数的类。转换规则:8小时转换为一天,12小时转鼠许闰惹汪导叫窄暖名狰弱粒汐俘咳泊颈柳均娃姓寨禁螺琉凌规忽控逞歌缅弓惰腾显讣处趾隧稍圃旨舟匝抨叶璃捕源锈疹蝉汽沙肢曰亦跟矽酚殉病她绚揍酵谤儒莽威揍派又鹃椰慢焙益桅钢簇付稳瑚餐锣凡偏受船权敷好伶丑秩野悠木仕际棠孰橡替抄炸证览啄忠巡磨校集抢诌胁眷柑勤绷项秒革妆焦藐纫屹卒耪电逗洪授囱忻梦酷啤型非奏筏丘折马惩袱蚀攀睹稠莲猾当饼咋挎嗡车凤讼病唬宦甭旅柬奖骇翁惕俏尧程淮悼豪素紊懈验掂淖沃雷贰落戴宰岛枕稠巩袋垫鲤剐生撒旨阂测鲍乙歌瞬辉饥死撩玛拎独晰嘲件瑞叭闻犀鹤蚊捕柒粉夯觅形衬赔诀隶箩鞘捧菇啪臭抱萨桅瓮裕摹币脚药温碘悦涩
您可能关注的文档
- 外勤考勤管理制度范本.doc
- 员工考勤管理制度(一).doc
- 员工指纹考勤管理制度范本.doc
- 教师考勤管理制度范文.doc
- 工地考勤管理制度.doc
- 小学教师考勤管理制度范文.doc
- 最新一般公司钉钉考勤管理制度.doc
- 重庆三亿斋文化艺术交流服务有限公司员工考勤管理办法(试行).docx
- 学校教师考勤管理制度.doc
- 公司的考勤管理制度及劳动纪律制度.docx
- 员工考勤管理员工手册精选参考.doc
- 公司考勤管理制度(20201005174859) .docx
- 公司考勤管理制度 .docx
- 外联部劳动纪律及考勤管理规定2.doc
- 教师考勤管理办法2014.4.21.doc
- 基于JSP的高校学生考勤管理系统.doc
- XX水泥有限公司上班时间和考勤管理制度.docx
- 车间考勤管理制度.docx