ImageVerifierCode 换一换
格式:DOC , 页数:41 ,大小:2.15MB ,
资源ID:877746      下载积分:10 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 微信支付   
验证码:   换一换

加入VIP,免费下载资源
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.wodocx.com/d-877746.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java住房公积金报告.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(发送邮件至2622162128@qq.com或直接QQ联系客服),我们立即给予删除!

java住房公积金报告.doc

1、 目 录一、团队构成及分工1二、进度计划2三、需求分析33.1 需求描述33.2 用况建模3四、项目功能设计14.1 总体设计14.2 算法设计25.1 数据逻辑设计15.2 数据表设计2六、系统实现1七、关键代码17.1登录17.2个人批量开户17.3单个帐号开户57.4查询全部个人帐号77.5查询单个个人帐号87.6个人帐号修改97.7单位开户107.8单位查询127.9单位修改137.10系统参数管理14八、课程设计总结1519一、团队构成及分工团队: 职能成员任务分工成绩组长马良系统设计组员刘同超系统设计石静Ppt的设计和文档的整理巩雪活动图、用例图、数据库张雪登录操作 指导教师签字:

2、 年 月 日二、进度计划序号任务名称开始时间完成时间持续时间1需求分析2011-01-042011-01-052天2功能设计2011-01-052011-01-062天3开题答辩2011-01-072011-01-071天4数据库设计2011-01-082011-01-092天5系统实现2011-01-102011-01-13 2天6终结答辩2011-01-142011-01-141天 三、需求分析3.1 需求描述针对房屋公积金管理系统的需求,通过对房屋公积金管理过程的内容和流程分析,设计如下所示的数据项和数据结构:单位信息,包括的数据项有:单位公积金账号、单位名称、单位地址、组织机构代码、单

3、位类别、企业类型、发薪日期、联系电话、单位联系人、经办人身份证号、账户状态、公积金余额、缴存基数、单位比例、个人比例、单位月应缴额、个人月应缴额、单位人数、最后汇缴月、机构代码、柜员、建立日期、备注。个人信息,包括的数据项有:个人公积金账号、单位公积金账号、开户日期、公积金余额、个人账户状态、缴存基数、单位比例、个人比例、最后汇缴月、单位月应缴额、个人月应缴额、本年汇补缴额、年提取额、年度结息、机构代码、柜员、备注。系统参数信息,包括的数据项有:键值信息、当前序号、最大序号、描述、备用。主要完成的功能:单位资料管理:对单位资料的增加、修改、删除。个人资料管理:对个人资料的增加、修改、删除。柜员

4、管理。系统参数的管理:对系统参数的增加、修改、删除。3.2 用况建模1.柜员的功能:首先,柜员进行登录为员工开户,登陆成功之后,进行单位开户,如果单位开户成功进行个人开户,否则不能进行个人开户。个人开户有两种方法:分别是手工录入开户、批量导入开户。2.管理员功能:管理员只进行参数系统的维护功能。图3-1 柜员用例图2.管理员功能:管理员只进行参数系统的查询和修改功能。图3-2 管理员用例图四、项目功能设计4.1 总体设计柜员可以经过登录进行员工录入,可以通过最便捷的方式进行录入,不仅节省了人力资源还节省了物力资源。 按结构化程序设计思想,分析得出如下系统功能模块图:柜员登录单位开户个人开户单位

5、资料管理单位资料修改个人资料管理单位资料查询个人资料修改个人注销个人资料查询单位注销图4-1 系统层次方框图4.2 算法设计1.单位用户登陆活动图柜员用户登录进入系统后可以进行的操作:开户(包括员工开户和单位开户),员工开户管理(包括新增、修改、删除和查看员工开户信息等),单位开户(包括新增、修改、删除和查看单位开户信息等)。图 4-2 柜员活动图单位用户登录2.个人用户管理模块活动图个人登录进入系统后可以进行的操作:个人信息查询和个人信息修改。 图 4-3柜员活动图个人管理模块3.单位管理模块活动图单位用户进入系统后可以进行的操作:单位信息查询和单位信息修改操作。 图 4-4 柜员活动图单位

6、管理模块4.管理员活动图管理员用户登录进入系统后可以进行的操作:系统参数的维护。图 4-5 管理员活动5.1 数据逻辑设计项目数据设计首先将单位公积金管理系统的数据库概念结构转化为MySQL数据库系统所支持的实际数据模型,即:数据库的逻辑结构。本系统根据以上的设计规划出的实体有:系统参数实体、单位开户实体、个人开户实体。5.1.1用户参数类图图5.1:用户参数类图5.1.2系统参数类图图5.2:系统参数类图5.1.3个人信息类图图5.3:个人信息类图5.1.4单位信息类图图5.4:单位信息类图5.2 数据表设计表5-1用户信息表列名中文名列类型列注释可否为空USERID用户号DOUBLE主键自

7、增不可以USERNAME用户姓名CHARACHER不可以USERPASS用户密码DOUBLE不可以LIMIT权限CHARACHER不可以表5-2系统参数表列名中文名列类型列注释可否为空默认值SEQNAME键值信息CHARACTER(20)可自定义序号键值信息,按此产生序号。不可以SEQ当前序号INTEGER从1开始,每次取完递增不可以MAXSEQ最大序号INTEGER不可以9999999DESC描述CHARACTER(40)不可以FREEUSE1备用1CHARACTER(20)可以表5-3单位信息表列名中文名列类型列注释可否为空默认值UNITACCNUM单位公积金账号CHARACTER(12)

8、UNITACCNAME单位名称CHARACTER(100)不可以UNITADDR单位地址CHARACTER(60)不可以ORGCODE组织机构代码CHARACTER(20)不可以UNITCHAR单位类别CHARACTER(1)1-企业2-事业3-机关4-团体5-其他不可以UNITKIND企业类型CHARACTER(3)110-国有经济120-集体经济130-股份合作企业不可以SALARYDATE发薪日期CHARACTER(2)可以UNITPHONE联系电话CHARACTER(20)不可以UNITLINKMAN单位联系人CHARACTER(24)不可以UNITAGENTPAPNO经办人身份证号码

9、CHARACTER(20)可以ACCSTATE账户状态CHARACTER(1)0正常9销户不可以BALANCE公积金余额DECIMAL(16,2)不可以BASENUMBER缴存基数DECIMAL(16,2)不可以UNITPROP单位比例DECIMAL(6,3)不可以PERPROP个人比例DECIMAL(6,3)不可以UNITPAYSUM单位月应缴额DECIMAL(16,2)不可以PERPAYSUM个人月应缴额DECIMAL(16,2)不可以PERSNUM单位人数INTEGER非销户人数不可以LASTPAYDATE最后汇缴月DATE不可以1899-12-01INSTCODE机构代码CHARACT

10、ER(8)不可以默认为0110OP柜员CHARACTER(4)不可以默认为111111CREATDATE建立日期DATE不可以REMARK备注CHARACTER(64)可以表5-4个人信息表列名中文名列类型列注释可否为空默认值ACCNUM个人公积金账号CHARACTER(12)0不可以UNITACCNUM单位公积金账号CHARACTER(12)0不可以OPENDATE开户日期DATEBALANCE公积金余额DECIMAL(16,2)PERACCSTATE个人账户状态CHARACTER(1)0正常9销户BASENUMBER缴存基数DECIMAL(16,2)UNITPROP单位比例DECIMAL(

11、6,3)INDIPROP个人比例DECIMAL(6,3)LASTPAYDATE最后汇缴月DATE1899-12-01UNITMONPAYSUM单位月应缴额DECIMAL(16,2)PERMONPAYSUM个人月应缴额YPAYAMT本年汇补缴额DECIMAL(16,2)自然年度YDRAWAMT年提取额DECIMAL(16,2)自然年度YINTERESTBAL年度结息DECIMAL(16,2)INSTCODE机构代码CHARACTER(8)不可以默认为0110OP柜员CHARACTER(4)不可以默认111111REMARK备注CHARACTER(64)可以六、系统实现1.首页初始页面。图6-1登

12、录界面2柜员登陆后的界面柜员登录时系统管理的入口如图6-1。在设计入口的时候,需要对柜员进行身份验证,验证信息输入错误时,提示错误信息;输入正确时,进入系统管理的主页面。图6-2 柜员登录界面3单位开户界面柜员通过登录进入管理界面,可以进行一系列的操作,图6-2是柜员对单位的开户操作,添加后进行保存即可。 6-3 单位开户界面 图6-4 单位查询界面 图 6-5 单位修改界面4个人开户界面柜员通过登录进入管理界面,可以进行一系列的操作,图6-3是柜员对个人的开户操作,添加后进行保存即可。图6-6 个人全部查询界面图6-7 个人全部查询界面图6-8单位个人开户界面图6-9批量个人开户界面七、关键

13、代码7.1登录public String execute() throws Exception User op=new User(); Session session=HibernateSessionFactory.getSession();Query query=session.createQuery(from User as u where u.op=? and u.password=?);query.setString(0, getUser().getOp();query.setString(1, getUser().getPassword();List users=query.list

14、();HibernateSessionFactory.closeSession();Iterator iterator=users.iterator();if(iterator.hasNext()op=iterator.next();ActionContext.getContext().getSession().put(op, op);return success;elseSystem.out.print(getUser().getOp()+ +getUser().getPassword();return input;7.2个人批量开户public void lotOpenAccount(St

15、ring excel,String unitid,String op) / TODO Auto-generated method stubWorkbook wwb = null;Sheet ws = null;Personal infor = null;int index;String accnum=null;String unitaccnum=unitid;String name=null;String cardid=null;Date opendate=new Date();Double balance=0.0;String peraccstate=0;Double basenumber=

16、null;Double unitprop=null;Double indiprop=null;Date lastpaydate=new Date();Double unitmonpaysum=null;Double permonpaysum=null;Double ypayamt=0.0;Double ydrawamt=0.0;Double yinterestbal=0.0;String instcode=0110;String remark= ;Unit u=new Unit();String s;Double ubalance;Double ubasenumber;Double uunit

17、paysum;Double uperpaysum;int persnum;List unit=null;try Session session = HibernateSessionFactory.getSession();Transaction tx = session.beginTransaction();wwb = Workbook.getWorkbook(new File(excel);ws = wwb.getSheet(0);Query query=session.createQuery(from SystemParamenter as s where s.seqname=?);que

18、ry.setString(0, peraccnum);index=(SystemParamenter) query.list().get(0).getSeq();query=session.createQuery(from Unit as u where u.unitaccnum=?);query.setString(0, unitaccnum);unit=(List)query.list();if(unit.size()0)u=unit.get(0);System.out.println(能有数据);unitprop=u.getUnitprop();indiprop=u.getPerprop

19、();for (int i = 1; i 0)continue;unitmonpaysum=basenumber*(unitprop/100);permonpaysum=basenumber*(indiprop/100);s=000000000000+index;accnum=s.substring(s.length()-12);index+;System.out.println(i);infor=new Personal();infor.setAccnum(accnum);infor.setCardid(cardid);infor.setName(name);infor.setBalance

20、(balance);infor.setBasenumber(basenumber);infor.setIndiprop(indiprop);infor.setInstcode(instcode);infor.setLastpaydate(lastpaydate);infor.setOp(op);infor.setOpendate(opendate);infor.setPeraccstate(peraccstate);infor.setPermonpaysum(permonpaysum);infor.setRemark(remark);infor.setUnitaccnum(unitaccnum

21、);infor.setUnitmonpaysum(unitmonpaysum);infor.setUnitprop(unitprop);infor.setYdrawamt(ydrawamt);infor.setYinterestbal(yinterestbal);infor.setYpayamt(ypayamt);session.save(infor);ubalance=u.getBalance()+balance;ubasenumber=u.getBasenumber()+basenumber;uunitpaysum=u.getUnitpaysum()+unitmonpaysum;uperp

22、aysum=u.getPerpaysum()+permonpaysum;persnum=u.getPersnum()+1;query=session.createQuery(update Unit as u set u.balance=?,u.unitpaysum=? ,u.basenumber=?,u.perpaysum=? ,u.persnum=? where u.unitaccnum=?);query.setDouble(0, ubalance);query.setDouble(1, uunitpaysum);query.setDouble(2, ubasenumber);query.s

23、etDouble(3, uperpaysum);query.setInteger(4, persnum);query.setString(5, unitaccnum);query.executeUpdate();query=session.createQuery(update SystemParamenter as s set s.seq=? where s.seqname=?);query.setInteger(0, index);query.setString(1, peraccnum);query.executeUpdate();mit();HibernateSessionFactory

24、.closeSession(); catch (BiffException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace();7.3单个帐号开户public String alongOpenAccount(String unitaccnum,String name,String cardid,Double basenumber,String op) / TODO Auto-gener

25、ated method stubPersonal infor = null;int index;String accnum=null;Date opendate=new Date();Double balance=0.0;String peraccstate=0;Double unitprop=null;Double indiprop=null;Date lastpaydate=new Date();Double unitmonpaysum=null;Double permonpaysum=0.0;Double ypayamt=0.0;Double ydrawamt=0.0;Double yi

26、nterestbal=0.0;String remark=;String s;Double ubalance;Double ubasenumber;Double uunitpaysum;Double uperpaysum;int persnum;Unit u=new Unit();Session session = HibernateSessionFactory.getSession();Transaction tx = session.beginTransaction();Query query=session.createQuery(from Personal as p where p.c

27、ardid=?);query.setString(0, cardid);if(query.list().size()0)HibernateSessionFactory.closeSession();return fall;List unit=null;query=session.createQuery(from Unit as u where u.unitaccnum=unitaccnum);unit=query.list();u=unit.get(0);unitprop=u.getUnitprop();indiprop=u.getPerprop();unitmonpaysum=basenum

28、ber*unitprop/100;permonpaysum=basenumber*indiprop/100;ubalance=u.getBalance()+balance;ubasenumber=u.getBasenumber()+basenumber;uunitpaysum=u.getUnitpaysum()+unitmonpaysum;uperpaysum=u.getPerpaysum()+permonpaysum;persnum=u.getPersnum()+1;query=session.createQuery(select seq from SystemParamenter as s

29、 where s.seqname=peraccnum);index=(Integer) query.list().get(0);s=000000000000+index;accnum=s.substring(s.length()-12);index+;infor=new Personal();infor.setAccnum(accnum);infor.setCardid(cardid);infor.setName(name);infor.setBalance(balance);infor.setBasenumber(basenumber);infor.setIndiprop(indiprop)

30、;infor.setInstcode(0110);infor.setLastpaydate(lastpaydate);infor.setOp(op);infor.setOpendate(opendate);infor.setPeraccstate(peraccstate);infor.setPermonpaysum(permonpaysum);infor.setRemark(remark);infor.setUnitaccnum(unitaccnum);infor.setUnitmonpaysum(unitmonpaysum);infor.setUnitprop(u.getUnitprop()

31、;infor.setYdrawamt(ydrawamt);infor.setYinterestbal(yinterestbal);infor.setYpayamt(ypayamt);session.save(infor);query=session.createQuery(update SystemParamenter as s set s.seq=? where s.seqname=?);query.setInteger(0, index);query.setString(1, peraccnum);query.executeUpdate();query=session.createQuer

32、y(update Unit as u set u.balance=?,u.unitpaysum=? ,u.basenumber=?,u.perpaysum=? ,u.persnum=? where u.unitaccnum=?);query.setDouble(0, ubalance);query.setDouble(1, uunitpaysum);query.setDouble(2, ubasenumber);query.setDouble(3, uperpaysum);query.setInteger(4, persnum);query.setString(5, unitaccnum);q

33、uery.executeUpdate();mit();HibernateSessionFactory.closeSession();return success;7.4查询全部个人帐号public List selectAllPersonal(String unitaccnum) / TODO Auto-generated method stub Session session=HibernateSessionFactory.getSession();Query query=session.createQuery(from Personal as p where p.unitaccnum=?)

34、;query.setString(0,unitaccnum);List lp=query.list();HibernateSessionFactory.closeSession();if(lp.size()0)HibernateSessionFactory.closeSession();return lp;HibernateSessionFactory.closeSession();return null;7.5查询单个个人帐号public Personal selectAlong(String accnum) / TODO Auto-generated method stubString s

35、ql=; Session session=HibernateSessionFactory.getSession(); sql=from Personal as p where p.accnum=?;Query query=session.createQuery(sql);query.setString(0,accnum);List lp=query.list();HibernateSessionFactory.closeSession();if(lp.size()0)return lp.get(0);return null;SuppressWarnings(unchecked)public U

36、nit selectunit(String unitaccnum)String sql=; Session session=HibernateSessionFactory.getSession(); sql=from Unit as u where u.unitaccnum=?;Query query=session.createQuery(sql);query.setString(0,unitaccnum);List lu=query.list();HibernateSessionFactory.closeSession();if(lu.size()0)return lu.get(0);re

37、turn null;7.6个人帐号修改public void updatePersonal(String accnum, String name, String cardid,Double basenumber) / TODO Auto-generated method stubSession session = HibernateSessionFactory.getSession();Transaction tx = session.beginTransaction();Personal personal=new Personal();Query query=session.createQu

38、ery(from Personal as p where p.accnum=?);query.setString(0, accnum);List list=query.list();if(list.size()0)personal=list.get(0);personal.setName(name);personal.setBasenumber(basenumber);personal.setCardid(cardid);session.update(accnum, personal);mit();HibernateSessionFactory.closeSession();7.7单位开户public int getCount()Session session=HibernateSessionFactory.getSession();Query query=session.createQuery(select sp.seq from SystemParamenter as sp where seqname=?);q

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922