欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于net的个人理财系统本科毕业(设计)论文.doc

    • 资源ID:86291405       资源大小:509KB        全文页数:35页
    • 资源格式: DOC        下载积分:9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于net的个人理财系统本科毕业(设计)论文.doc

    泰 山 学 院本科毕业论文基于.NET的个人理财系统所 在 学 院 信息科学技术学院 专 业 名 称 计算机科学与技术 申请学士学位所属学科 工 学 年 级 学生姓名、学号 指导教师姓名、职称 完 成 日 期 摘要摘 要当今世界,人们处在信息爆炸的时代,通过计算机处理工作以及生活上的事情已经成为人们生活之中不可或缺的一部分。方便、快捷、清晰的处理自己的事情成为人们对计算机应用服务的基本要求。在高节奏的工作及生活之下,人们对自身财务的管理及分配便有着更高的期望和需求,因此在当今社会人们工作生活中普遍使用微软的操作系统的情况下,在.NET平台上开发一款财务管理系统显得恰逢其时。该系统可以提供最简单的财务登记方式,最直观的财务走向以及最方便的财务分配手段。本系统的实现用到了计算机程序领域的相关技术,其中包括C#语言、SQL Server数据库、XML数据集,使用到了Visual Studio 2010、SQL Server Management Studio等工具。关键词:C#;XML;SQL server数据库;Visual Studio ; SQL Server Management Studio ABSTRACTABSTRACTIn today's world, people are in the era of information explosion, processing by computer and things in life has become an indispensable part of people's lives. Conv. Convenient, fast own things become the basic requirement for computer application service. Under the high pace of life and work, management and distribution of their financial people have higher expectations and demands, so the commonly used operating system Microsoft in today's society in people's life situation, the development of a financial management system was the right time on the.NET platform. The system can provide to registration, the most intuitive and most convenient means of financial allocation. This system make use of the computer program in the field of related technology, including C#,SQL, XML language Server database data set, use the Visual Studio 2010, SQL Server Management Studio and other tools.Key words: C#;XML;SQL server database;Visual Studio ; SQL Server Management StudioII目录目 录1 引 言12 系统分析12.1 需求分析12.2 可行性分析23 总体设计23.1 项目规划23.2 系统窗体功能结构图23.3 设计目标33.4 开发工具及运行环境33.5 逻辑结构设计44 财务管理系统总体架构44.1 系统各功能窗体的运行结果44.2 系统数据集及数据库设计95 系统前台各功能模块的实现115.1 导航窗体功能及实现115.2 财务管理窗体主窗体115.3 财务管理系统财务记事窗体195.4 创建方法类246 结束语28参考文献30致谢31泰山学院本科毕业论文(设计)1 引 言当今人们所处时代是一个科技、经济、人文高速发展以及信息量几何级数的增长与传递的时代,计算机的应用在短短的十几年间便已覆盖到全社会的方方面面。随着人们对生活越来越快捷、越来越方便的极致追求,人们越来越习惯于使用计算机来帮助人们达到工作、生活以及精神上的需求。人们善于利用计算机作为人际交流的平台,也善于利用计算机作为处理工作及生活上的琐事,使自身的生活更加方便和优质。计算机作为信息处理终端,最大的优点便在于它对数据处理的高效及精确。该系统为人们提供方便的财务管理办法,提供了最直观的财务走向及趋势。该系统能够快捷的登记人们的平时的花销与收入,能够直观的查看财务走向与收支情况。该平台拥有账户系统,可以区分财务登记人,可以申请账户,注销账户等功能;同时拥有管理员权限的人可以对账户进行管理,可以对后台数据库进行相关的维护和升级。2 系统分析2.1 需求分析在系统开发之前,用户的需求是系统开发的主要目标。通过用户的调查结果显示,我们要求的财务管理系统必须要求以下的基本功能:(1)支持财务登记、删除、查询;(2)支持财务的收入分类及开销分类;(3)支持财务数据的日期性存储;(4)支持数据按时间要求做出的收支计算。另外,为增强用户对系统的体验及对系统的功能性要求,需要对本系统的发展功能为:(1)支持将数据以折线图的形式显示出来;(2)支持数据按照日期进行查询;(3)支持财务数据按照分类进行查询显示;(4)添加账号系统,方便不同人使用;(5)添加日记系统,方便于做日常性总结;2.2 可行性分析财务管理系统对使用者的财务进行登记、处理、存储、查询,应用端以应用程序的方式进行前台的登记、管理和查询,方便用户的使用;服务端存储处理完毕后的分类数据;中间端采用XML数据集的方式存储处理中的数据,以加快程序的运行速度同时减少终端与服务器端过多的容错处理。3 总体设计3.1 项目规划 财务管理系统是一个功能全面并且方便快捷的应用程序,由前台应用程序、中间数据集及后台数据库胆大部分组成。(1)前台应用程序 前台应用程序主要包括财务登记、财务删除、财务更新、收支查询、时间段查询、分类项目查询、折线图等功能及模块。(2)中间数据集中间数据集主要功能是实现数据的快速插入、删除、修改的存储中继。(3)后台数据库后台数据库主要对前台处理的数据进行远程端的存储与备份,拥有简单的数据管理功能。3.2 系统窗体功能结构图财务管理系统前台窗体功能结构,如图1所示。图3-1 财务管理系统前台窗体功能结构图 3.3 设计目标本系统是针对用户自身的财务进行有效的、直观的管理为原则进行设计开发的,其需要达到的目标如下:(1)通过登记的财务信息,能够直观的查看收入支出。(2)可以管理财务数据。(3)能够直观的查看消费及收支费用的走势。(4)提供财务情况的记录功能。(5)能够按照时间段进行精确查询。3.4 开发工具及运行环境开发工具:C#编译器: Microsoft Visual Studio 2010XML文档编写器: SublimeText_2.0.2.2221_XiaZaiBa数据库管理工具: SQL Server Management Studio运行环境:CPU: P41.8GHz;内存: 256MB以上。操作系统: Windows XP/7操作系统;数据库: SQL Server 2008;4 财务管理系统总体架构4.1 系统各功能窗体的运行结果4.1.1财务管理系统导航窗体。21图4-1 财务管理系统导航窗体运行结果(ZhuTi.cs)导航说明如下:表4-1 财务管理系统导航窗体说明区域名称说明对应文件1主功能窗体财务管理系统的主要功能窗体MoneyMake.cs2日记功能窗体添加的其他功能窗体,主要应对用户对一些平常事情的记事formNoteBook.cs4.1.2财务管理系统主功能窗体-财务收支页面。54321图4-2 财务管理系统主功能窗体-财务收支页面(MoneyMake.cs)财务管理系统主功能窗体-财务收支页面功能如表2所示。表4-2 财务管理系统主功能窗体-财务收支页面功能展示区域名称说明对应文件1财务详细条目展示已登记财务的大体预览information.xml2财务入账模块是财务收入或支出的登记模块3财务收支状况的时间段查询主要对指定时间段内进行财务总收入的大体查询4财务查询结果显示查询后总体的结果5财务记事及账目删除模块1、 显示指定登记条目的财务记事;2、对指定登记条目执行删除命令4.1.3财务管理系统主功能窗体-财务走势页面。3421图4-3 财务管理系统主功能窗体-财务走势页面(MoneyMake.cs)财务管理系统主功能窗体-财务走势页面功能如表2所示。表4-3 财务管理系统主功能窗体-财务收支页面功能展示区域名称说明对应文件1折线图区域展示财务收支总走势information.xml2设定时间单位为需要展示的财务设定展示单位3实时数据显示鼠标所处位置的金钱数据4设定时间段显示查询后总体的结果4.1.4财务管理系统主功能窗体-消费走势页面。图4-4 财务管理系统主功能窗体-消费走势页面(MoneyMake.cs)4.1.5财务记事主功能窗体。图4-5 财务管理系统主功能窗体-消费走势页面(formNoteBook.cs)4.1.6财务记事新增窗体。图4-6 财务管理系统新增记事窗体(formNoteAdd.cs)4.1.7财务记事展开页窗体。图4-7 财务记事展开页窗体(formNoteRead.cs)4.2 系统数据集及数据库设计4.2.1 XML数据集设计(实例):<?xml version="1.0" encoding="gb2312"?> /声明,标示版本及标准<root> /根元素 <Inf> /子元素,标示一条财务信息 <编号>1</编号> /记录当前数目编号 <收支>支出</收支> /记录当前信息是收入还是支出 <金额>-35</金额> /记录金额 <类别>杂项</类别> /记录本条信息属于什么类别 <日期>2014/3/4</日期> /记录日期 <备注 /> /简单笔记 <支出>35</支出> /隐藏元素,做数据统计 <收入>0</收入> /隐藏元素,做数据统计 </Inf> /本条信息结束 <Inf> /下一条信息开始 <编号>2</编号> <收支>支出</收支> <金额>-132</金额> <类别>杂项</类别> <日期>2014/3/6</日期> <备注>das</备注> <支出>132</支出> <收入>0</收入> </Inf> </root>4.2.2 数据库架构设计表Strip_HaveMake设计如图(详细见附录)。图4-8 Strip_HaveMake表的表头及数据类型表UserInfo(详细见附录)。图4-9 UserInfo表的表头及数据类型5 系统前台各功能模块的实现5.1 导航窗体功能及实现作为导航窗体,其肩负的主要功能就是负责为用户提供一个快捷的功能通道,使用户能够快速的进入所需的功能窗体。本系统的设计实在财务统计和财务记事上做了导航,其跳转的实现如下:MoneyMake rofm = new MoneyMake(); /实例化财务管理窗体MoneyMake rofm.Show(); /使窗体显现 this.Hide(); /隐藏导航窗体财务记事窗体的跳转同上。退出功能是退出程序,各个主功能窗体都有添加(以下略过不再赘述),其实现如下: Application.Exit();5.2 财务管理窗体主窗体在本功能窗体之上,使用了TabControl容器组件,分别设计了财务收支页(tabPage1)、财务走势页(tabPage2)以及消费走势页(tabPage3)。其他公共区域有实时日期时间显示区域(DateTimeShow)、返回(btnBack)及退出,其详细实现如下代码显示:实时时间(添加计时控件Timer命名为TimeNow):TimeNow.Enabled = true; /开启控件 TimeNow.Interval = 1000; /设定时间间隔为1秒DateTime time = DateTime.Now; /定义时间函数time DateTimeShow.Text = time.ToString("yyyy-M-d HH:mm:ss"); /对获取的系统时间进行格式化并将实时时间显示在控件DateTimeShow上。 返回(btnBack)功能是返回导航窗体,其实现如下: /设置返回按钮的事件 private void btnBack_Click(object sender, EventArgs e) this.Close(); /关闭当前窗体 /添加窗体关闭事件,默认返回导航窗体(当单击窗体右上角小叉号时同样触发此事件)。private void MoneyMake_FormClosed(object sender, FormClosedEventArgs e) ZhuTi rofm = new ZhuTi(); rofm.Show();5.2.1财务收支页面作为财务收支页面,主要的工作是管理个人的财务信息,这里不仅有对数据的增、删、改、查,还有简单的预览和时间划分功能。数据条目功能区(dgvStrip_HaveMake)是作为已登记的财务信息的一览表,它首先绑定了一个数据集(information.xml),从中提取信息并显示在本控件中,其实现如下:/在窗体载入事件中定义并加载数据集。 /数据源绑定 xDataDoc.DataSet.ReadXml(".Fileinformation.xml"); dgvStrip_HaveMake.DataSource = xDataDoc.DataSet; dgvStrip_HaveMake.DataMember = "Inf" /定义数据表 DataTable dTable = xDataDoc.DataSet.Tables0; /时间段查询起始时间 dtp1_tab3.Value = dtp1.Value = startTime.Value = Convert.ToDateTime(dTable.Rows04.ToString(); dtp2_tab3.Value = dtp2.Value = Convert.ToDateTime(dTable.RowsdTable.Rows.Count - 14.ToString(); labXianShi(); /调用方法,在空间中显示信息/定义的方法 private void labXianShi()/显示财务,总 DataTable dTable = xDataDoc.DataSet.Tables0; int count = dTable.Rows.Count; /调用类FangFa中的方法getMoney()。 double haveMoney = FangFa.getMoney(xDataDoc, 7, Convert.ToDateTime(dTable.Rows04), Convert.ToDateTime(dTable.Rowscount - 14); double makeMoney = FangFa.getMoney(xDataDoc, 6, Convert.ToDateTime(dTable.Rows04), Convert.ToDateTime(dTable.Rowscount - 14); /显示大略的财务收支情况 labAllHave.Text = haveMoney.ToString(); labAllMake.Text = makeMoney.ToString(); labHaveMake.Text = (haveMoney - makeMoney).ToString(); labDataTime.Text = dTable.Rows04.ToString() + "-" + dTable.Rowscount - 14.ToString(); 财务登记功能区是财务管理系统的重要组成部分,它负责将用户的财务信息登记入系统之中,其设计如下:图5-1 财务入账功能其中,金额(txtMoney)限定最长字符5位,收支(cbxHaveMake)填写“收入”、“支出”两项,默认选定“支出”。入账(btnIn)按钮的功能实现比较复杂,它需要判断数据条目功能区(dgvStrip_HaveMake)中的数据序号是多少,需要依据写入的日期判断插入的数据应是在哪两条数据的之前、之中或之后?同时重新书写编号并刷新显示出来,之后清空入账区的数据,其具体的代码实现如下: private void btnIn_Click(object sender, EventArgs e)/添加数据 Regex re = new Regex("0-9*$"); if (re.IsMatch(txtMoney.Text) /该方法是修改数据集中的数据表(会同时刷新datagridview),然后更新xml。 /查找有没有相同日期的数据,有的话合并计算,没有的话加入新行。 DataTable dTable = xDataDoc.DataSet.Tables0; bool bol = true;/指示是否要在最后添加行 int count = dTable.Rows.Count; if (txtMoney.Text = "") txtMoney.Text = "0" string numMoney = cbxHaveMake.Text = "收入" ? txtMoney.Text.Trim() : "-" + txtMoney.Text.Trim(); DateTime dt = Convert.ToDateTime(dateTimePicker1.Value.ToShortDateString(); for (int i = 0; i < count; i+) if (dt < Convert.ToDateTime(dTable.Rowsi4.ToString() DataRow dr = dTable.NewRow();/新建行,下同。 if (dateTimePicker1.Value.ToShortDateString() = dTable.Rowsi4.ToString()/合并相同的日期金额 if (dTable.Rowsi5.ToString().Trim() = "")/备注的情况处理 if (txtBeiZhuIn.Text.Trim() = "") dTable.Rowsi5 = dTable.Rowsi3 + ":" + dTable.Rowsi2 + " " + cbxType.Text.Trim() + ":" + numMoney; else dTable.Rowsi5 = dTable.Rowsi3 + ":" + dTable.Rowsi2 + " " + cbxType.Text.Trim() + ":" + numMoney + "(" + txtBeiZhuIn.Text.Trim() + ")" else if (dTable.Rowsi5.ToString().Trim().IndexOf(":", 0) != -1)/第三次及以上数据合并 if (txtBeiZhuIn.Text.Trim() = "") dTable.Rowsi5 += " " + cbxType.Text.Trim() + ":" + numMoney; 时间段功能区主要负责设定查询时的时间段并使得数据条目功能区(dgvStrip_HaveMake)中处在时间段内的数据高亮。同时该功能区划定的时间段将作为一个默认数据传送到财务走势页和消费走势页,其功能实现如下:图5-2 时间段查询功能 private void searchTime_Click(object sender, EventArgs e)/时间段查询 /时间段内的数据高亮 DataTable dTable = xDataDoc.DataSet.Tables0; int count = dTable.Rows.Count; /清除原活动单元格的高亮for (int i = 0; i < count; i+) dgvStrip_HaveMake.Rowsi.Selected = false; for (int i = 0; i < count; i+) if (startTime.Value <= Convert.ToDateTime(dTable.Rowsi4) && finshTime.Value >= Convert.ToDateTime(dTable.Rowsi4) dgvStrip_HaveMake.Rowsi.Selected = true; /财务显示,调用类FangFa中的getMoney()方法。 double haveMoney = FangFa.getMoney(xDataDoc, 7, startTime.Value, finshTime.Value); double makeMoney = FangFa.getMoney(xDataDoc, 6, startTime.Value, finshTime.Value); labAllHave.Text = haveMoney.ToString(); labAllMake.Text = makeMoney.ToString(); labHaveMake.Text = (haveMoney - makeMoney).ToString(); labDataTime.Text = startTime.Value.ToShortDateString() + "-" + finshTime.Value.ToShortDateString(); 账目细则显示区是各个查询操作后产生数据显示的地方。图5-3 财务显示功能区账目管理区块是对选定的数据条目显示备注和对选定的条目执行删除的地方。当所有条目都删除掉时,将自动添加最后一行示例行,这中设定同时避免了在“入账”时产生的判断错误。其实现删除功能的代码如下:private void btnDelect_Click(object sender, EventArgs e)/删除活动单元格所在行。 DataTable dTable = xDataDoc.DataSet.Tables0; int count=xDataDoc.DataSet.Tables0.Rows.Count; int index = dgvStrip_HaveMake.CurrentCell.RowIndex;/读取活动状态单元格的行号。 /当数据条目空间中的数据不存在时,自动添加一行示例,避免入账时产生判断错误。if (count = 1) dTable.Rows00 = "1" dTable.Rows01 = "收入" dTable.Rows02 = "0" dTable.Rows03 = "示例" dTable.Rows04 = "2000/1/1" dTable.Rows05 = "这是示例行,请不要输入同此行的日期数据!" dTable.Rows06 = "0" dTable.Rows07 = "0" else dTable.Rows.RemoveAt(index);/删除行 FangFa.sortSID(xDataDoc.DataSet.Tables0);/重新编号 FangFa.newUpdata(xDataDoc);/更新xml FangFa.GeShi();/格式化xml /财务及其它信息显示 labXianShi(); txtBeiZhuPrint.Text = "" 5.2.2财务走势页面财务走势页面是财务管理系统中最直观反映用户最近财产的起伏变化的一个功能窗口,其最大的特色在于使用折线图的形式来表现。财务走势页面使用GDI绘图技术,通过最大值以及间距值等特殊计算方法使绘出的图像能够根据要求任意显示时间单位、时间间距等。主显示区域:本区域是图像呈现的画布,当根据时间单位进行计算得出数据小于两条时将不予显示并提示用户情况。其图像产生代码如下: /书写公共方法,使系统能够避免代码冗余。 public static void creatImage(int Xs, Bitmap image, DataTable dTable, bool XY, int moneyY,string nameX) Graphics g = Graphics.FromImage(image); Pen paintPen1 = new Pen(Color.Blue, 3); Pen paintPen2 = new Pen(Color.Blue, 1); g.Clear(Color.White);/绘制初始化 g.DrawLine(paintPen1, 40,170, 680, 170);/中横线 g.DrawLine(paintPen1, 40, 10, 40, 380);/左竖线 g.DrawLine(paintPen1, 40, 380, 680, 380);/下横线 int xJianGe = 638 / (Xs - 1);/计算纵线间的间隔,使用638而不是640,是为了留出最右边的一丝空隙。 if (XY = false)/横纵坐标线 for (int i = 1, xx = 40 + xJianGe; i < Xs; i+, xx += xJianGe)/若4个数据,只需绘制三根纵线,第一根是Y轴。 g.DrawLine(paintPen2, xx, 10, xx, 380);/画纵线 for (int j = 1, yy = 10; j < 38; j+, yy += 10) g.DrawLine(paintPen2, 40, yy, 678, yy);/画横线,678最右边的横坐标 /绘制横坐标值 Font fontX=new Font("宋体",12); DuiQi.Alignment=StringAlignment.Center; for (int i = 0, xx = 40; i < Xs; i+, xx += xJianGe) g.DrawString(nameXi,fontX,Brushes.Blue,xx,380,DuiQi); Point ZheXian = new PointXs;/定义折线的点集合

    注意事项

    本文(基于net的个人理财系统本科毕业(设计)论文.doc)为本站会员(知****量)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开