已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
职工工资管理系统一、 设计目标:按照软件工程的规范,以SQL Server或Access为后台数据库,以Delphi 或Visual C+为前端开发工具,设计并实现一个简化的工资管理系统。二、 需求描述该系统存储了某单位全体职工和工资信息。职工的基本信息包括:职工编号、姓名、性别、出生年月、职称、最后学历、工资和婚否。每一个职工的工资信息包括:月份、职工编号、职工姓名、基本工资、津贴、岗贴、补贴、房贴、交通补贴、应发数、房租、储蓄、会费、个人所得税、应扣数、实发数、其他收入。个人所得税计算方法设为:应发数少于800元为0;8001000元的部分为5%;10005000元的部分为10%;5000元以上的部分为20%。系统功能如下:1 职工信息管理:a. 增加职工信息。增加新职工时输入新职工的基本信息;b. 删除某职工的基本信息。如,职工死亡或离职时;c. 修改某职工(指定职工编号)的某些信息(如,加工资、获得新学位、晋升职称、结婚或离婚)。2 工资管理:a. 增加工资信息。当增加新职工时,添加某职工的工资信息;b. 职工离职或死亡时,删除某职工的工资信息;c. 修改工资信息。当月开始增加或减少某些项工资或扣款数变化时,修改某职工的部分工资信息;3 查询与统计:a. 查询职工信息,如查询全体职工信息,或按职称、学历、出生年月、出生年月之前/ 之后、已婚/ 未婚等条件或多个条件的组合来查询相应的职工信息。b. 查询指定编号职工的工资信息;c. 按时间段统计职工收入或单位的工资支出。三、 概要设计四、 详细设计void CWorkerMgr6View:OnExit()OnExit();void CWorkerMgr6View:OnRecordFirst()if(m_pSet-IsBOF()m_pSet-SetFieldNull(NULL);elsem_pSet-MoveFirst();UpdateData(FALSE);/更新对话框窗口void CWorkerMgr6View:OnRecordLast()m_pSet-MoveLast();UpdateData(FALSE);/更新对话框窗口void CWorkerMgr6View:OnRecordNext()if(m_pSet-IsBOF()m_pSet-SetFieldNull(NULL);/判断是否溢出if(m_pSet-IsEOF()AfxMessageBox(已经到达最后记录);elsem_pSet-MoveNext();UpdateData(FALSE);void CWorkerMgr6View:OnRecordPre()if(m_pSet-IsBOF()AfxMessageBox(已经到达第一个记录);m_pSet-MoveFirst();m_pSet-MovePrev();UpdateData(FALSE);void CWorkerMgr6View:OnAddWorker()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);/连接数据库/上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage);/显示错误信息CAddWorker dl;if(dl.DoModal()=IDOK)m_pSet-AddNew();m_pSet-m_name=dl.m_nm;m_pSet-m_id=dl.m_ids;m_pSet-m_sex=dl.m_sx;m_pSet-m_born=dl.m_bn;m_pSet-m_zhichen=dl.m_zhch;m_pSet-m_xueli=dl.m_xli;m_pSet-m_salary=dl.m_sala;m_pSet-m_marry=dl.m_marr;m_pSet-Update();m_pSet-MoveLast();UpdateData(false);OnAddMoney();void CWorkerMgr6View:OnDeleteWorker()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);/连接数据库/上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage);/显示错误信息CDelWorker dl;if(dl.DoModal()=IDOK)UpdateData(true);trylong id=dl.m_idid;CString str;str.Format(DELETE from worker where ID=%d,id);_variant_t RecordsAffected;m_pConnection-Execute(_bstr_t)str,&RecordsAffected,adCmdText);AfxMessageBox(删除成功!);catch(_com_error*e)AfxMessageBox(e-ErrorMessage();m_pSet-MoveNext();if(m_pSet-IsEOF()m_pSet-MoveLast();UpdateData(FALSE);void CWorkerMgr6View:OnChangWorker()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);/连接数据库/上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage);/显示错误信息CChangeWork dl2;if(dl2.DoModal()=IDOK)UpdateData(true);long id=dl2.m_wid;m_pSet-MoveFirst();while(m_pSet-m_id!=dl2.m_wid)m_pSet-MoveNext();CChangeOne dl1;dl1.m_name1=m_pSet-m_name;dl1.m_id1=m_pSet-m_id;dl1.m_sex1=m_pSet-m_sex;dl1.m_born1=m_pSet-m_born;dl1.m_zhichen1=m_pSet-m_zhichen;dl1.m_xueli=m_pSet-m_xueli;dl1.m_salary1=m_pSet-m_salary;dl1.m_marry1=m_pSet-m_marry;if(dl1.DoModal()=IDOK)m_pSet-Edit();m_pSet-m_name=dl1.m_name1;m_pSet-m_id=dl1.m_id1;m_pSet-m_sex=dl1.m_sex1;m_pSet-m_born=dl1.m_born1;m_pSet-m_zhichen=dl1.m_zhichen1;m_pSet-m_xueli=dl1.m_xueli;m_pSet-m_salary=dl1.m_salary1;m_pSet-m_marry=dl1.m_marry1;m_pSet-Update();/m_pSet-MoveNext();UpdateData(false);void CWorkerMgr6View:OnMShowDetail()CMShowDetail dl;long id=m_pSet-m_id;m_pSet-MoveFirst();while(m_pSet-m_id!=id)m_pSet-MoveNext();dl.m_month=m_pSet-m_month;dl.m_id=m_pSet-m_id;dl.m_name=m_pSet-m_name;dl.m_base=m_pSet-m_base;dl.m_jintie=m_pSet-m_jintie;dl.m_gangtie=m_pSet-m_gangtie;dl.m_butie=m_pSet-m_butie;dl.m_fangtie=m_pSet-m_fangtie;dl.m_jiaotong=m_pSet-m_jiaotong;dl.m_yingfa=dl.m_base+dl.m_jintie+dl.m_gangtie+dl.m_butie+dl.m_fangtie+dl.m_jiaotong;dl.m_fangzu=m_pSet-m_fangzu;dl.m_chuxu=m_pSet-m_chuxu;dl.m_huifei=m_pSet-m_huifei;if(dl.m_yingfa=800&dl.m_yingfa1000&dl.m_yingfa5000)dl.m_gerentax=dl.m_yingfa*0.2f;dl.m_yingkou=dl.m_fangzu+dl.m_chuxu+dl.m_huifei+dl.m_gerentax;dl.m_shifa=dl.m_yingfa-dl.m_yingkou;dl.m_other=m_pSet-m_other;dl.DoModal();void CWorkerMgr6View:OnAddMoney()CAddMoney dl;dl.m_id=m_pSet-m_id;dl.m_name=m_pSet-m_name;if(dl.DoModal()=IDOK)m_pSet-Edit();m_pSet-m_base=dl.m_base;m_pSet-m_month=dl.m_month;m_pSet-m_jintie=dl.m_jintie;m_pSet-m_gangtie=dl.m_gangtie;m_pSet-m_butie=dl.m_butie;m_pSet-m_fangtie=dl.m_fangtie;m_pSet-m_jiaotong=dl.m_jiaotong;dl.m_yingfa=dl.m_base+dl.m_jintie+dl.m_gangtie+dl.m_butie+dl.m_fangtie+dl.m_jiaotong;m_pSet-m_yingfa=dl.m_yingfa;m_pSet-m_fangzu=dl.m_fangzu;m_pSet-m_chuxu=dl.m_chuxu;m_pSet-m_huifei=dl.m_huifei;if(dl.m_yingfa=800&dl.m_yingfa1000&dl.m_yingfa5000)dl.m_gerentax=dl.m_yingfa*0.2f;m_pSet-m_gerentax=dl.m_gerentax;dl.m_yingkou=dl.m_fangtie+dl.m_chuxu+dl.m_huifei+dl.m_gerentax;m_pSet-m_yingkou=dl.m_yingkou;dl.m_shifa=dl.m_yingfa-dl.m_yingkou;m_pSet-m_shifa=dl.m_shifa;m_pSet-m_other=dl.m_other;m_pSet-Update();/m_pSet-MoveLast();UpdateData(false);void CWorkerMgr6View:OnDeleteMoney()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);/连接数据库/上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;catch(_com_error e)/捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage);/显示错误信息CDeleteMoney dl;if(dl.DoModal()=IDOK)UpdateData(true);trylong id=dl.m_id;CString str;str.Format(DELETE from worker where ID=%d,id);_variant_t RecordsAffected;m_pConnection-Execute(_bstr_t)str,&RecordsAffected,adCmdText);AfxMessageBox(删除成功!);catch(_com_error*e)AfxMessageBox(e-ErrorMessage();m_pSet-MoveNext();if(m_pSet-IsEOF()m_pSet-MoveLast();UpdateData(FALSE);void CWorkerMgr6View:OnChangeMoney()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);catch(_com_error e) /捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage); /显示错误信息CChangeWork dl2;if(dl2.DoModal()=IDOK)UpdateData(true);long id=dl2.m_wid;m_pSet-MoveFirst();while(m_pSet-m_id!=dl2.m_wid)m_pSet-MoveNext();CChangeMoney dl1;dl1.m_month=m_pSet-m_month;dl1.m_name=m_pSet-m_name;dl1.m_id=m_pSet-m_id;dl1.m_base=m_pSet-m_base;dl1.m_jintie=m_pSet-m_jintie;dl1.m_gangtie=m_pSet-m_gangtie;dl1.m_butie=m_pSet-m_butie;dl1.m_fangtie=m_pSet-m_fangtie;dl1.m_jiaotong=m_pSet-m_jiaotong;dl1.m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1.m_fangtie+dl1.m_jiaotong;dl1.m_fangzu=m_pSet-m_fangzu;dl1.m_chuxu=m_pSet-m_chuxu;dl1.m_huifei=m_pSet-m_huifei;if(dl1.m_yingfa=800&dl1.m_yingfa1000&dl1.m_yingfa5000)dl1.m_gerentax=dl1.m_yingfa*0.2f;dl1.m_yingkou=dl1.m_gerentax+dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei;dl1.m_shifa=dl1.m_yingfa-dl1.m_yingkou;dl1.m_other=dl1.m_other;if(dl1.DoModal()=IDOK)m_pSet-Edit();m_pSet-m_name=dl1.m_name;m_pSet-m_id=dl1.m_id;m_pSet-m_month=dl1.m_month;m_pSet-m_base=dl1.m_base;m_pSet-m_jintie=dl1.m_jintie;m_pSet-m_gangtie=dl1.m_gangtie;m_pSet-m_butie=dl1.m_butie;m_pSet-m_fangtie=dl1.m_fangtie;m_pSet-m_jiaotong=dl1.m_jiaotong;m_pSet-m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1.m_fangtie+dl1.m_jiaotong;m_pSet-m_fangzu=dl1.m_fangzu;m_pSet-m_chuxu=dl1.m_chuxu;m_pSet-m_huifei=dl1.m_huifei;if(m_pSet-m_yingfam_gerentax=0;else if(m_pSet-m_yingfa=800&m_pSet-m_yingfam_gerentax=m_pSet-m_yingfa*0.05f;else if(m_pSet-m_yingfa1000&m_pSet-m_yingfam_gerentax=m_pSet-m_yingfa*0.1f;else if(m_pSet-m_yingfa5000)m_pSet-m_gerentax=m_pSet-m_yingfa*0.2f;m_pSet-m_yingkou=dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei+m_pSet-m_gerentax;m_pSet-m_shifa=m_pSet-m_yingfa-m_pSet-m_yingkou;m_pSet-m_other=dl1.m_other;m_pSet-Update();/m_pSet-MoveNext();UpdateData(false);void CWorkerMgr6View:OnFindMoney()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);catch(_com_error e) /捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(errormessage); /显示错误信息CFindNo dl2;if(dl2.DoModal()=IDOK)UpdateData(true);long id=dl2.m_id;m_pSet-MoveFirst();while(m_pSet-m_id!=dl2.m_id)m_pSet-MoveNext();CMShowDetail dl1;dl1.m_month=m_pSet-m_month;dl1.m_name=m_pSet-m_name;dl1.m_id=m_pSet-m_id;dl1.m_base=m_pSet-m_base;dl1.m_jintie=m_pSet-m_jintie;dl1.m_gangtie=m_pSet-m_gangtie;dl1.m_butie=m_pSet-m_butie;dl1.m_fangtie=m_pSet-m_fangtie;dl1.m_jiaotong=m_pSet-m_jiaotong;dl1.m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1.m_fangtie+dl1.m_jiaotong;dl1.m_fangzu=m_pSet-m_fangzu;dl1.m_chuxu=m_pSet-m_chuxu;dl1.m_huifei=m_pSet-m_huifei;if(dl1.m_yingfa=800&dl1.m_yingfa1000&dl1.m_yingfa5000)dl1.m_gerentax=dl1.m_yingfa*0.2f;dl1.m_yingkou=dl1.m_gerentax+dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei;dl1.m_shifa=dl1.m_yingfa-dl1.m_yingkou;dl1.m_other=dl1.m_other;dl1.DoModal();void CWorkerMgr6View:OnStaticsMoney()HRESULT hr;tryhr =m_pConnection.CreateInstance(ADODB.Connection);/创建Connection对象if(SUCCEEDED(hr)hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=worker.mdb,adModeUnknown);catch(_com_error e) /捕捉异常CString errormessage;errormessage.Format(连接数据库失败!rn错误信息:%s,e.ErrorMessage();AfxMessageBox(error
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026浙江温州市苍南县人才发展有限公司招聘银行劳务外包人员备考题库含答案详解(培优a卷)
- 2026广东东莞市第四高级中学招聘物理实验员1人备考题库及答案详解(易错题)
- 2026贵州师范学院贵州省首批产业兼职教师选聘岗位3人备考题库附答案详解(完整版)
- 2026云南昆明市富民县卫健系统人才引进3人备考题库及参考答案详解1套
- 2026浙江杭州市西湖职业高级中学招聘中西面点培训教师(非事业)1人备考题库及答案详解(夺冠)
- 2026年福建泉州网招聘工作人员备考题库及答案详解(网校专用)
- 2026江西武宁县鲁溪镇人民政府招聘1人备考题库含答案详解(新)
- 2026湖北武汉大学人民医院技师等岗位招聘7人备考题库完整参考答案详解
- 2026年3月深圳技术大学附属中学面向应届毕业生招聘教师9人备考题库附答案详解(达标题)
- 2026广西科学院分析测试中心分子细胞生物学团队招聘2人备考题库含答案详解(培优b卷)
- 2026河南新乡南太行旅游有限公司招聘16岗49人考试参考试题及答案解析
- 2026年春季西师大版(2024)小学数学三年级下册教学计划含进度表
- T-GFIA 004-2026 特色(呼吸系统调养)森林康养服务规范
- 2026年春季湘少版(三起)四年级下册英语教学计划(含进度表)
- 新东方《中国学生出国留学发展报告》
- 门诊护理职业发展与规划
- 2026年3月15日九江市五类人员面试真题及答案解析
- 2026国家开放大学出版传媒集团招聘5人笔试备考题库及答案解析
- 2024版2026春新版三年级下册道德与法治全册教案教学设计
- 人教版新目标英语八年级上册-Unit3-4-复习课件
- 反比例函数与一次函数结合专题复习公开课优质课比赛获奖课件
评论
0/150
提交评论