




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南南 开开 大大 学学 本 科 生 毕 业 论 文(设 计) 中文题目:cad 网上网上设计设计服服务务系系统统 外文题目:cad online design service system 学 号:0710417 姓 名: 年 级:2007 级级 学 院:信息技信息技术术科学学院科学学院 系 别:计计算机科学与技算机科学与技术术 专 业:计计算机科学与技算机科学与技术术 完成日期:2011.5.17 指导教师: 关于南开大学本科生毕业论文(设计)的声明 本人郑重声明:所呈交的学位论文(设计),题目cad 网上设计服 务系统是本人在指导教师指导下,进行研究工作所取得的成果。除文中已 经注明引用的内容外,本学位论文的研究成果不包含任何他人创作的、以公开 发表或没有公开发表的作品内容。对本论文所涉及的研究工作做出贡献的其他 个人和集体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任 由本人承担。 学位论文作者签名: 年 月 日 本人声明:该学位论文是本人指导学生完成的研究成果,已经审阅过论文 的全部内容,并能够保证题目、关键词、摘要部分中英文内容的一致性和准确 性。 学位论文指导教师签名: 年 月 日 i cadcad网上设计服务系统网上设计服务系统 摘 要 随着计算机的迅猛发展,工程界的迫切需要,在工程和产品设计中,计算 机辅助设计(cad)的应用日趋成熟,专注于设计本身的人机交互技术已经能 够很好的使设计人员从繁重的手工绘图工作中解放出来,将设计环节交给计算 机完成。其后设计人员需及时对设计做出判断和修改,形成最终的工程图纸, 这部分的工作在整个生产流程中致关重要。一个工程无论是由一名设计人员单 独完成还是多人共同完成都需要听取他人意见,不断完善设计图。如今大多设 计图基本为通过软件生成的电子文件,如果用计算机在网络上交换意见、浏览 存储 cad 图,不仅能够保证操作过程的快速方便,而且还可以利用计算机对有 关文件的各种信息进行管理。因此,为了实现对 cad 图的简单管理和在线提出 修改意见,本文设计并实现了 cad 网上设计服务系统,是有很强的实用价值的。 本文对 cad 网上设计服务系统进行了需求分析、功能设计和实现,对整个 系统的业务流程进行了分析。基于 e-r 图给出了系统实现的表设计,实现了包 括介绍了 cad 网上设计服务系统的需求,给出了包括在线群组讨论和 cad 设 计图的同步显示、参与讨论的申请、对申请的处理、离线短消息的发送接收、 以及系统的维护、权限分配等模块的设计和实现。系统维护部分设计实现了包 括用户信息管理、工程管理、cad 图的管理、聊天信息管理以及短消息管理等 功能。 本文所实现的 cad 网上设计服务系统,既可用于企业内部设计人员对 cad 设计的交流修改,又可推广到互联网,且其界面设计简单易操作,可以通 过本系统实现随时随地的沟通。 关键词 cad 聊天室 ajax ii cad online design service system abstract with the rapid development of computer and the urgent need of engineering industries, in engineering and product design, computer aided design (cad) application continuously perfect. human-machine interaction which focuses on design itself has enabled designers to release from heavy manual drawing work, using computer to complete design. thenceforward design staff should make judgments and modification of design, forming the final engineering drawings, which is one of the most important part of the whole production process. whether a project is accomplished by a designer alone or a group, both need to listen to advice from others, constantly improving the design. nowadays most drawings are electronic documents made through software. exchange views, browse and storage cad drawings by computer on the network can not only ensure the operating process convenient and fast, but also can use computer to manage various kinds of related information. therefore, in order to realize the simple management of cad drawings and put forward opinions online, this paper designs and realizes a cad online design service system, which is of strong practical value. this paper did requirement analysis, functional design and realization about the cad online design service system and analyzed operation flow of the whole system. based on the e-r diagram it gives table design of the system, introduces system demand, and gives the design and implementation of each module including online group discussion, synchronous display of drawings, application for discussions, dispose of the application, off-line short messages sending and receiving, system maintenance, authority distribution, etc. system maintenance contains users information management, projects management, cad drawings management, chat information management, short message management and other functions. the cad online design service system realized by this paper can be used either iii for the enterprise inner designers communication and modification of cad drawings or on the internet. moreover its interface design is simple and easy to operate, through which can communicate anytime and anywhere. key words cad, chat room, ajax iv 目 录 摘摘 要要.i abstract.ii 目目 录录.iv 1.绪论绪论.6 1.1 课题背景.6 1.2 需求分析.6 1.2.1 设计目标.7 1.2.2功能需求分析7 1.2.3业务工作流程8 1.3 主要工作和本文的组织结构.9 2. 总体设计总体设计 .10 2.1 系统的总体设计.10 2.1.1系统功能结构图10 2.1.2模块功能分析12 2.2 数据库设计.16 2.2.1基于e-r图的数据库设计.16 2.3.3数据库具体设计19 3.详细设计详细设计 .21 3.1 系统登录模块.21 3.1.1新用户注册21 3.1.2用户登录身份验证22 3.1.3 忘记密码.23 3.2 用户管理模块.23 3.2.1用户信息维护24 3.2.2 修改密码.25 3.3 工程管理模块.26 v 3.3.1发布工程信息26 3.3.2查看工程信息27 3.3.3删除工程信息28 3.4 处理参与请求.29 3.5 cad 图的操作.30 3.5.1 上传cad图30 3.5.2 打开cad图31 3.5.3 cad图的下载32 3.6 聊天模块.32 3.6.1 发送消息.32 3.6.2 查看消息.32 3.6.3发送离线短消息33 3.7 短消息管理.34 4.系统关键技术系统关键技术35 4.1 仅基于 asp 的实现方案.35 4.2asp+ajax 的实现方案.36 5.总结总结.40 参考文献参考文献42 致致 谢谢43 6 1.绪论绪论 1.1 课题背景课题背景 目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的 生产和日常生活。网络的诞生和发展,颠覆了传统的信息传播方式,冲破了存 在于传统交流方式中时间和空间的种种壁垒,极大地改变了人类从物质到精神、 从形式到内容、从生产到生活的各种活动,并且给人类带来了新的机遇和挑战。 cad 是指利用计算机创建和处理图形(设计原型) ,以辅助工程师完成设计过 程1。作为一种应用技术,在机械工业中具有广泛应用,包括二维绘图、图形 及符号库、参数化设计、三维造型、工程分析、设计文档及生成报表等。cad 中人与计算机密切合作。计算机擅长信息存储、检索、分析计算、图形与文字 处理以及其他重复的枯燥无味的工作。但计算机离不开人的设计策略、逻辑控 制、信息组织、经验和创造性。二者的结合可提高设计质量、缩短设计周期、 降低设计费用。目前大多 cad 软件都只注重于完善面向专业领域的具体设计的 功能,从而忽视了网络协同在其应用中的重要作用。过去由于网络带宽的限制 和 cad 软件对性能的苛刻要求,基于互联网应用的发展模式一度被否定。然而 近两年里,云计算的概念方兴未艾,cad 设计也终将走向这种模式。 cad 设计者在单机上完成 cad 图的绘制后并不能保证其一定完全符合要 求,需要进一步的修改完善。有些较复杂的工程需要多名设计者共同完成,期 间的相互交流、协商也同样至关重要。cad 网上设计服务系统作为一个基于网 络的网站系统,正是面向 cad 设计者这一特殊群体,为他们的工作带来便利。 用户们能够使用该系统,在线对 cad 设计图提出修改建议,方便用户们进行即 时交流,从而大大缩短了开发周期,提高了设计效率。 1.2 需求分析需求分析 需求分析是不可或缺的一个平台开发环节,为使系统更好、更完善地设计 出来,必须先进行调查。在系统调查研究的基础上,给出用户的相应的需求、 业务工作流程,以及流程上每个主要环节的需求,以便能够建立一个完整的系 7 统设计2。 1.2.1 设计目标设计目标 本系统是利用现在比较广泛的 asp.net+sqlserver2000 数据库的架构实现 的。进行系统分析,为将来进一步的实施打下一个坚实的技术基础。本平台将 投入到实际的试运行之中,进行测试,如果测试满意的话,将进行平台的完善 开发,从而实现信息化,规范化,系统化,网络化的平台,具有较好的适应性 和推广性。 此系统通过浏览器实现用户和 web 服务器的通讯,web 服务器再与数据库 服务器连接。前端提供友好的操作界面,包括:用户登录注册,工程信息管理, 用户信息管理,群组讨论和 cad 设计图的同步显示等功能。使设计 cad 图的 工程师在网上完成修改意见的交流和 cad 设计图的传看,提高工作效率。 1.2.2 功能需求分析功能需求分析 cad 网上设计服务系统存在着如下的信息交互,以用例图(活动图)来分 析: 用户信息 工程信息 聊天信息 cad图 短消息 管理员 用户 图 1-1: 系统用例图 8 在实际应用中最需要考虑的就是系统的安全性,要求系统能严格区分不同 用户身份,并限制其只能访问与自己权限相符合的系统资源。因此,系统根据 用户身份的不同,将操作划分为管理员和用户。 (1) 管理员权限 管理员是系统中最高权限的拥有者,可以对用户信息和工程信息进行统一 管理。 (2) 用户权限 普通用户只能利用本系统进行与自己有关的操作,不能浏览或修改其他信 息,主要权限有查看工程信息,浏览、上传和下载 cad 图、收发聊天信息和短 消息,申请参与讨论等。 1.2.3 业务工作流程业务工作流程 登录 修改密码 管管理理员员 用户管理 工程管理查看工程信息 删除工程 查询用户信息 删除用户 图 1-2: 管理员的工作流程 作为管理员首先要登录系统,在登录时对身份权限进行验证,然后进入系 统主页。在工程管理栏目下可以通过工程分类、发布时间等一些查询条件,查 看所有用户发布的工程信息,然后可以删除一些无意义的或已发布很长时间的 工程。此外还可以对用户信息进行基本的管理,根据用户名和最后参与讨论的 时间查询部分用户信息,然后删除长时间不参与在线讨论的用户。为保证安全 性,管理员可以对自己账户的密码进行修改。 9 登录 查看短消息查看请求工程管理 注册 找回密码 查看工程信息删除工程 参与讨论 发送请求 是否有权参与讨 论 y n 聊天 浏览、上传、下载 cad图 查询历史记录 发送短消息 修改密码 用用户户 发布新工程 图 1-3: 用户的工作流程 普通用户首次登录系统需要注册,填写一些必要信息如用户名、密码、邮 箱等,注册成功后可以登录系统。若忘记密码可以通过用户名和注册时填写的 邮箱找回密码。登录时进行身份权限验证,然后进入系统主页。工程管理栏目 下用户可以发布新工程,从而成为该工程下讨论组的组长,或者通过查询工程 信息选择一个工程参与到讨论中。用户不同于管理员,只能删除自己发布的工 程。若想参与其他工程的讨论组,首先要向其组长发送请求,组长在查看请求 同意后,用户才有权参与讨论,然后进入讨论页面。在讨论页面中用户可以看 到 cad 图和同组的在线用户交流对该图的修改建议、查询历史聊天记录、上传 或下载 cad 图,向同组用户发送短消息。用户在系统首页可以通过查看短消息 详情直接进入讨论页面。 1.3 主要工作和本文的组织结构主要工作和本文的组织结构 本文对 cad 网上设计服务系统进行了分析和设计。该系统不仅具有基本管 理功能,还着重实现了多人在线聊天功能。管理功能方面参考一般系统并针对 10 本系统的特点做出了适当的改进;聊天部分则在对 ajax 实现聊天室的方案进行 分析改进后在系统中应用实现。全文一共分为五章: 第一章是对课题背景的介绍、系统需求的分析,以及全文的主要工作与组织结 构的概要。 第二章是总体设计,主要有系统的总体设计和数据库分析。其中,在系统的总 体设计中给出了系统地功能结构图和各模块的功能;在数据库分析中画出了本 系统的总体 e-r 图,并根据 e-r 图列出所需表的结构。 第三章开始对系统的详细设计以及实现,将系统分为登录、用户管理、工程管 理、处理参与请求、cad 图的操作、聊天模块、短消息管理共七个模块分别详 细描述。 第四章说明本系统中所应用到的关键技术,包括应用 asp 实现多人在线聊天室 方法的分析和结合 ajax 技术对本系统中的聊天部分的改进方案的实现。 第五章对全文进行总结,阐述本系统中已实现的功能和不足,以及今后的工作 目标。 2. 总体设计总体设计 本章开始进行系统的总体设计,主要有系统的总体设计和数据库设计。其 中,在系统的总体设计中画出了总体结构图,介绍系统总共用到哪些模块、各 模块具体实现的功能;而在数据库设计中给出本系统的 e-r 图和数据库的表的 结构,为系统的详细设计做了准备。 2.1 系统的总体设计系统的总体设计 2.1.1 系统功能结构图系统功能结构图 在系统需求分析基础上,论文搭建 cad 网上设计服务系统,结构如图 2-1 所示: 11 c ca ad d网网上上设设计计服服务务系系统统 系 统 登 录 工 程 管 理 用 户 管 理 登 录 验 证 用 户 注 册 找 回 密 码 修 改 密 码 用 户 查 询 用 户 删 除 新 建 工 程 工 程 信 息 查 询 删 除 工 程 聊 天 模 块 c a d 图 操 作 上 传 c a d 图 下 载 c a d 图 发 送 消 息 查 看 历 史 记 录 讨 论 区 发 送 短 消 息 查 看 短 消 息 删 除 短 消 息 短 消 息 管 理 处 理 参 与 请 求 发 送 请 求 查 看 审 核 请 求 打 开 c a d 图 图 2-1: 系统结构图 cad 网上设计服务系统主要包括六大功能模块,登录模块、用户管理模块、 工程管理模块、处理参与请求模块、讨论模块和短消息管理模块。各模块功能 如下: (1) 登录模块 主要包括登录验证、用户注册、找回密码功能; (2) 用户管理 主要包括用户信息查询、用户删除和修改密码功能; (3) 工程管理 包括新建工程、工程信息查询、删除工程; (4) 处理参与请求 包括发送参与请求、查看和审核请求; (5) 讨论区 分为两个子模块,分别为 cad 图操作和聊天模块,cad 图操作包括上传、 12 打开、下载 cad 图,而聊天模块包括发送消息、查询历史记录和发送离线短消 息; (6) 短消息管理 包括查看短消息、删除短消息功能。 2.1.2 模块功能分析模块功能分析 为方便说明,以下列出各模块详细功能,如表 2-1表 2-19 所示: 表 2-1: 登录验证功能表 功能名称登录验证 功能描述系统根据用户输入的用户名和密码对用户和用户权限进行验证,然后进 入系统首页并根据身份不同提供不同的功能。 输入项用户名、密码 处理描述根据输入的信息,查询数据库中是否有该用户的信息,用户名存在的情 况下,再比较用户名和密码是否匹配,验证不通过发出提示。最后获取 用户权限,登录系统。 输出项用户名不存在! 用户名或密码不正确! 表 2-2: 用户注册功能表 功能名称用户注册 功能描述用户第一次访问网站时需要注册,填写用户信息正确后就可登录系统 输入项用户名、密码、邮箱 处理描述根据输入的信息,查询数据库中用户名是否已存在,判断密码长度是否 符合要求,两次输入的密码是否一致,每个项目是否都已填写。正确填 写后,提交用户信息到数据库并返回登录界面,重新登录。 输出项用户名已存在! 密码长度在 6-12 位! 密码不正确! 请填写邮箱! 表 2-3: 找回密码功能表 功能名称找回密码 功能描述用户在只知道用户名,忘记密码的情况下可以通过注册时填写的邮箱找 回密码 输入项用户名、邮箱 处理描述根据输入的信息,查询数据库中是否存在此用户,所填用户名和邮箱是 否匹配,若正确则向该用户的邮箱发送包含密码的邮件。 13 输出项用户名不正确! 邮箱不正确! 表 2-4: 用户信息查询功能表 功能名称用户信息查询 功能描述管理员可通过用户名和用户最后参与讨论的时间查询用户名、邮箱、参 与讨论时间等信息 输入项用户名、起止时间 处理描述根据输入的查询条件,读取数据库中用户信息。 输出项用户名、邮箱、最后参与讨论时间 表 2-5: 用户信息删除功能表 功能名称用户信息删除 功能描述管理员可在通过查询到的用户信息基础上,删除某用户 输入项用户名、起止时间 处理描述删除所选用户在数据库中的信息,删除前询问是否确定删除,删除操作 成功后,发出提示 输出项删除成功! 表 2-6: 修改密码功能表 功能名称修改密码 功能描述为保证自己的信息安全,用户可能需要经常修改自己的登录密码 输入项原密码、新密码 处理描述需输入一遍原密码再输入两遍新密码,通过登录时获取的信息验证原密 码是否填写正确,在检测新输入的密码长度是否符合要求,两遍输入是 否一致,通过检测后更新数据库信息,否则提示错误。 输出项原密码不正确! 密码长度在 6-12 位! 密码不正确! 修改成功! 表 2-7: 新建工程功能表 功能名称新建工程 功能描述讨论组的建立以此为基础,一个工程对应一个讨论组,用户可以新建工 程并在相应讨论组中拥有最高权限 输入项工程名称、工程类型、设计说明 处理描述用户填写所需信息,系统自动获取当前系统时间和用户名,一起写入数 据库,提示成功 14 输出项请检查是否全部填写! 提交成功! 表 2-8: 工程信息查询功能表 功能名称工程信息查询 功能描述用户和管理员可查询所有通过此系统建立的工程信息 输入项工程发布起止时间、工程类型 处理描述根据输入的查询条件,读取数据库中工程信息。 输出项工程名称、类型、发布人、发布时间 表 2-9: 删除工程功能表 功能名称删除工程 功能描述管理员可在查询到的工程信息基础上,删除工程;用户可删除自己建立 的工程 输入项工程发布起止时间、工程类型 处理描述删除所选工程在数据库中的信息,和与其相关的讨论信息,删除前询问 是否确定删除,删除操作成功后,发出提示 输出项删除成功! 表 2-10: 发送参与请求功能表 功能名称发送参与请求 功能描述用户在查询工程信息时可进一步查看详情并通过申请参加到此工程的讨 论组中 输入项请求 处理描述用户发送请求后,系统将其作为一条记录写入数据库,表明该用户已准 备参与讨论,但未获批准前不能参与讨论。 输出项发送请求成功! 表 2-11: 查看和审核请求功能表 功能名称查看和审核请求 功能描述其他用户发送请求后,工程的创建者可查看请求,并拒绝或接受申请 输入项拒绝或接受 处理描述通过查询数据库中的信息,工程创建用户可查看其他用户的申请,选择 拒绝后,之前写入数据库的记录将被删除;选择接受则相应其他用户获 准正式参与讨论,更新数据库中的信息。 输出项发送请求的用户名、请求参与讨论的工程 表 2-12: 上传 cad 图功能表 15 功能名称上传 cad 图 功能描述参与某个工程讨论的用户可以上传本地 cad 图,方便其他用户下载、浏 览 输入项本地 cad 图 处理描述检测是否选择了某张本地 cad 图,然后按照所属工程保存到服务器中, 数据库中只保存图片名称等信息,上传成功发出提示。 输出项请选择图片! 上传成功! 表 2-13: 打开 cad 图功能表 功能名称打开 cad 图 功能描述讨论组中所有人只能同时看到同一张图片,此时只有一人有权打开图片, 使之显示在页面中 输入项打开 处理描述每个用户在进入讨论页面时都会从数据库中查询是否为此时在线用户中 参与讨论时间最早的用户,若是则有权打开 cad 图。系统读取数据库中 保存的图片信息,形成路径,打开服务器中保存的图片并更新数据库中 图片状态,标记为打开。 输出项cad 图 表 2-14: 下载 cad 图功能表 功能名称下载 cad 图 功能描述参与某个工程讨论的用户可以在讨论中下载该工程中的图片 输入项下载 处理描述选择下载某张图片后,系统查询数据库中的图片信息,形成路径,从服 务器中获取图片文件。 输出项cad 图 表 2-15: 发送消息功能表 功能名称发送消息 功能描述用户可以边看图片边讨论,发送消息,相互交流 输入项消息内容 处理描述用户输入消息,添加消息记录到数据库,然后通过查询数据库中的信息 读取消息记录并定时刷新,显示此用户参与讨论时间点后的消息记录。 输出项发言人、时间、聊天内容 表 2-16: 查询历史记录功能表 功能名称查询历史记录 功能描述参与到讨论中的用户可查询历史聊天记录,包括不在线时其他人的聊天 16 内容 输入项日期 处理描述用户可选择具体日期,查询数据库中指定日期的聊天记录,不选择日期 则默认查询讨论组中全部消息记录。 输出项发言人、时间、聊天内容 表 2-17: 发送离线短消息功能表 功能名称发送离线短消息 功能描述用户可向讨论组中其他用户发送短消息,方便同不在线的用户沟通 输入项用户名、短消息内容 处理描述用户从好友列表中选择一个用户作为发送短消息的对象,然后输入内容, 确定后向数据库中添加新短消息记录,发出提示 输出项发送成功! 表 2-18: 查看短消息功能表 功能名称查看短消息 功能描述用户登录系统后可查看其他用户发来的短消息 输入项是否已读 处理描述分别通过查询数据库中的记录状态:未读、已读读取相应短消息信息, 并可进一步查看详情,及时参与到讨论中。 输出项发送人、时间、内容 表 2-19: 删除短消息功能表 功能名称删除短消息 功能描述用户可在通过查询到的短消息基础上,删除某些无用的短消息 输入项是否已读 处理描述删除所选短消息在数据库中的信息,删除前询问是否确定删除,删除操 作成功后,发出提示 输出项删除成功! 2.2 数据库设计数据库设计 2.2.1 基于基于 e-r 图的数据库设计图的数据库设计 cad 网上设计服务系统的主要对象是用户,所以必须建立用户表,包括用 户的基本信息情况;用户要参与群组讨论,首先要加入一个讨论组,所以建立 工程信息表,每一个工程对应一个讨论组,又可以保存 cad 设计的一些简单信 17 息;用户的主要活动是对 cad 图的操作,所以必须建立 cad 图的信息表;聊 天需要建立聊天信息表;用户可以发送接收短消息,所以建立短消息表;此外, 必须建立参与表,在用户与工程之间建立联系并确立用户在参与讨论时的权限。 下面分别给出每个实体的属性图和总体 e-r 图: 用户 用户名 邮箱 用户等级用户密码 用户id 图 2-2: 用户实体属性图 用户实体中,用户 id 为主键。 工程信息 工程id名称 发布时间发布人 设计说明 工程类型 图 2-3: 工程信息实体属性图 工程信息实体中,工程 id 为主键。 18 cad图 图片名称 上传时间 上传者 图片id 图片状态 图 2-4: cad 图的信息实体属性图 cad 图的实体中,图片 id 为主键。 聊天信息 发言人 时间内容 聊天记录 id 图 2-5: 聊天信息实体属性图 聊天信息实体中,聊天记录 id 为主键 短消息 发送人 时间内容 接收人短消息id 19 图 2-6: 短消息实体属性图 短消息实体中,短消息 id 为主键。 参与用户工程 cad图 进行聊天 mn 1 n n 操作 1 授权状况讨论状态 收发短消息 n 1 上线时间 图 2-7: 实体联系 e-r 图 cad 图、聊天、短消息及参与关系表,均以工程关系表中的工程 id 作为 外键,建立约束关系。 2.3.3 数据库具体设计数据库具体设计 根据设计的 e-r 图,共需建立用户表、工程信息表、cad 图信息表、聊天 信息表、短消息表、参与表共 6 个关系表,其结构分别如下: 表 2-20: 用户表(users) 属性属性描述描述类型类型备注备注 userid用户 idbigint主键,唯一标识用户,自增长 username用户名varchar(20)非空,手动输入 pwd密码varchar(12)字母或数字,长度在 6-12 位,手动输入 email电子邮箱varchar(50)注册时必须填写该项,忘记密码时便于 找回,手动输入 auth用户等级int0 代表管理员 1 代表普通用户 用户注册时均默认为普通用户 管理员删除用户时删除用户表中的用户信息的同时,触发删除 attend 表中 有关该用户的信息。 表 2-21: 工程信息表(projects) 20 属性属性描述描述类型类型备注备注 proid发布的工程信 息的 id bigint主键,唯一标识需求信息,自增长 proname工程名称varchar(50)非空,新建工程时手动输入 category工程类型varchar(20)分属不同的领域行业,便于设计者查找 其擅长的类型,选择输入 opendate工程发布时间datetime自动获取发布信息的时间,无需填写 publisher工程发布人varchar(20)获取登录用户名作为发布人 detailcad 图设计说 明 varchar(1000)工程的总体要求,非空,500 个汉字以 内 删除某工程信息记录的同时,触发删除 pictures 表、chat 表、mess 表和 attend 表中有关该工程的信息。 表 2-22: cad 图信息表(pictures) 属性属性描述描述类型类型备注备注 picid图片 idbigint主键,唯一标识图片信息,自增长 proid发布的工程的 id bigint外键,来自 projects 表,上传图片时自 动读取对应工程 id picnamecad 图的名称varchar(50)非空,自动获取上传图片的名称 adddate设计图上传时 间 datetime自动获取上传的时间,无需填写 uploader图片的上传者 或保存者 varchar(20)获取登录用户名作为 uploader mark图片状态int标记图片是否被打开 0 表示没有打开 1 表示已打开,正显示在讨论区中 表 2-23: 聊天信息表(chat) 属性属性描述描述类型类型备注备注 chid聊天记录的 idbigint主键,唯一标识聊天信息,自增长 proid发布的工程的 id bigint外键,来自 projects 表,发言时自动获 取工程 id speaker发言人varchar(20)获取登录用户名作为发言人 chtime时间datetime系统自动获取系统时间 content内容varchar(500)非空,手动输入 表 2-24: 短消息表(mess) 属性属性描述描述类型类型备注备注 meid短消息的 idbigint主键,唯一标识短消息,自增长 proid发布的工程的bigint外键,来自 projects 表,发送短消息时 21 id自动获取工程 id sender发送人varchar(20)获取登录用户名作为发言人 receiver接收人varchar(20)非空,从好友列表中选择输入 mtime时间datetime系统自动获取时间 content内容varchar(500)非空,手动输入 state消息状态int0 默认未读 1 已读 表 2-25: 参与表(attend) 属性属性描述描述类型类型备注备注 id参与 idbigint主键,唯一标识,自增长 proid发布的工程的 id bigint外键,来自 project 表,发送参与请求时 自动获取工程 id joinid参加该工程的用 户名 bigint获取登录用户名作为参加讨论的用户名 auth参与人员的授权 状况 int0:工程的创建者 1:通过创建者授权,可参与讨论的用 户 2:已申请参与,但尚未通过授权的 用户 由系统判断 state参与讨论的状态int0:有权打开 cad 设计图 1:无权打开 cad 设计图,但允许其他 操作 2:离线状态 由系统判断 ontime上线时间datatime打开讨论页面时,系统自动获取时间 3.详细设计详细设计 本部分在经过对各模块功能的分析和数据库的设计的基础上,给出了应用 visual studio 2005 c#语言编写的各模块的详细设计和实现界面截图。 3.1 系统登录模块系统登录模块 3.1.1 新用户注册新用户注册 初次登录系统的用户在登录页面 login.aspx 中单击【免费注册】链接按钮 时,显示图 3-1 所示的页面。注册页面为 reg.aspx,注册信息全部为必填项。 单击【我同意】按钮向数据库的 users 表中添加数据,提交前自动执行检查程 序:首先检测数据库中是否有同名用户,并利用 label 显示检查结果;然后检 22 验输入的两遍密码,密码为长度 612 位的字母或数字,超出范围或两次输入密 码不一致,在标签控件中提示相应信息;最后验证是否填写电子邮箱4。 图 3-1: 用户注册页面 3.1.2 用户登录身份验证用户登录身份验证 用户注册成功后跳转回登录页面。输入用户名和相应的密码后,单击【登 录】按钮,将提交的数据与数据库中原有的 userid、pwd 进行比较。若用户名 或密码错误或未输入用户名或密码,则弹出信息框提示相应的出错提示信息。 成功登录后系统将用户浏览器导航到系统首页 menu.aspx,用户进入系统后显 示用户名、短消息及参与请求,判断用户权限,将用户名和权限分别存入 session 中5。要求该页面通过 session 对象检查用户是否从 login.aspx 正常登录 跳转而来,若未经身份验证则自动返回到 login.aspx 页面。 23 图 3-2: 用户登录页面 3.1.3 忘记密码忘记密码 用户经过注册后,可以用注册过的账号进行登录。但是如果忘记了密码, 还可以通过单击登录页面的【忘记密码】链接,跳转到 forget.aspx 页面,输入 用户名和注册时填写的邮箱,单击【确定】按钮,找回自己的密码。提交后, 将比较 users 表中的 userid、email 的内容,若用户名和邮箱符合,将发送密码 到该邮箱,同时返回登录页面,否则提示相应错误。 图 3-3: 找回密码页面 3.2 用户管理模块用户管理模块 登录成功后进入系统首页 menu.aspx。以 main.master 作为母版6,左侧利 用 treeview 控件列出一部分功能菜单。对于普通用户, “用户管理”下的“用 户信息维护”不可见,此部分仅对管理员可见,管理员可以查询、删除任意用 户。中间显示当前登录的用户名,提示收到的未读短消息和工程参与请求有几 条,以数字作为链接按钮可跳转到相应页面。例如:单击“您有 1 条新消息” 中的“1” ,将跳转到消息查看页面 message.aspx;单击“1 条新请求”中的“1” , 将跳转到请求查看页面 proque.aspx。 24 图 3-4: 系统首页 3.2.1 用户信息维护用户信息维护 只有管理员可以查询和删除用户,可根据用户名和最后参与讨论的时间范 围查询或删除用户信息。用户信息为维护用户密码的安全性,即使管理员在查 询用户信息时,密码也不可见,而只能显示用户名、邮箱和用户最后参与讨论 的时间。在 gridview 控件中添加 checkbox 模板列,实现批量删除,单击【删 除选定用户】 ,即可从 users 表中删除所选用户信息。 25 图 3-5: 用户信息维护页面 3.2.2 修改密码修改密码 用户登录系统后可以更改密码,先输入原密码,再输入要求更改的新密码, 同样要求输入两遍,密码为长度 612 位的字母或数字,单击【确定】按钮后, 系统首先根据 users 表比对当前登录用户 id 与原密码是否匹配,若正确则进一 步验证新密码,超出范围或两次输入密码不一致提示相应信息。提交成功后将 更新数据库 users 表中的相应记录。 26 图 3-6: 修改密码页面 3.3 工程管理模块工程管理模块 3.3.1 发布工程信息发布工程信息 用户可以新建工程信息,方便分组讨论,单击该按钮将跳转到新建工程页 面 pronew.aspx。必须填写 cad 设计的工程名称,选择输入设计类型(包括建 筑工程、装饰设计、环境艺术设计、水电工程、土木施工等等) 。必须填写 cad 图的设计说明,描述总体要求,不超过 500 个汉字字符。单击【发布】按 钮提交该条信息,若有未填写的项目将显示提示信息。 27 图 3-7: 发布新工程页面 3.3.2 查看工程信息查看工程信息 用户可以单击所有工程按钮,跳转到 proall.aspx 页面,查看所有的工程 信息,可以选择按时间、类型检索信息。用户还可单击【我发布的工程】 ,在 prome1.aspx 页面中查询、删除自己建立的工程;或单击【参与设计的工程】 , 在 prome2.aspx 页面中查询相关工程,查询方法同上。 28 图 3-8: 我发布的工程页面 在上述三个页面中都可以单击【查看详情】链接,跳转到具有详细信息的 页面 prodetail.aspx。系统通过数据库的 attend 表检测该用户是否有权限参与该 工程的讨论,若还未获得权限,可单击【参与请求】按钮,请求参与该工程的 设计与讨论,否则不能查看有关该工程的设计图和聊天信息,发送请求时将用 户 id 及相应状态写入 attend 表;若已获得权限,单击最后的【进入在线讨论】 按钮,进入到讨论页面,在打开新页面的同时获取当前时间更新数据库 attend 表中用户参与讨论的时间,相当于记录聊天的上线时间。 图 3-9: 工程详情页面 3.3.3 删除工程信息删除工程信息 管理员还可以对工程信息进行批量删除操作,普通用户则无此权限,但用 户可以删除自己发布的工程信息7。在删除 projects 表中的某条记录时, pictures、attend、mess、chat 表中与此工程有关的数据都将被删除,为防止误 删,每次单击“删除选定内容”按钮时,弹出提示询问“是否确认删除?” 。 29 图 3-10: 查询所有工程页面 3.4 处理参与请求处理参与请求 用户在系统首页可直接单击“x 条新请求”中的“x” ,查看其他用户发给 自己的参与工程讨论的请求,每条请求后有【同意】和【拒绝】两个按钮。选 择【同意】则更改 attend 表中的对应 auth 属性的值(21) ,可以参与相应工 程的讨论;若选择【拒绝】 ,则删除 attend 表中相关的记录。 30 图 3-11: 查看请求页面 3.5 cad 图的操作图的操作 进入到该系统的讨论区后,显示界面如下: 图 3-12: 讨论页面 分为两个区域:左侧为图片显示区,右侧为聊天区。 3.5.1 上传上传 cad 图图 利用 toolbox 中自带的 upload 控件8,并在旁边添加【上传】按钮。首先 单击【浏览】 ,将弹出对话框,选择本地图片上传,然后单击【上传】 ,是否上 传成功将给予提示。图片信息将保存到 pictures 表中,并在服务器端建立 “projects”文件夹和以工程 id 为名字的子文件夹,在其中保存图片。该部分 关键代码如下: /单击【上传】按钮后执行过程: if (fileupload1.postedfile.filename = “) /先判断是否选择了要上传的文件, 否则提示用户 31 this.lb_info.text = “请选择文件!“; else /获取上传文件名称并将文件存入服务器的相应文件夹中 string filepath = fileupload1.postedfile.filename; string filename = filepath.substring(filepath.lastindexof(“) + 1); /图片存入 projects 文件夹中的以工程 id 为名称的子目录中,首先判断该目录是 否存在,若不存在则创建 bool exist = system.io.directory.exists(server.mappath(“projects/“) + session“proid“.tostring(); if (exist = false) system.io.directory.createdirectory(server.mappath(“projects/“) + session“proid“.tostring(); string serverpath = server.mappath(“projects/“) + session“proid“.tostring() + “/“ + filename; fileupload1.postedfile.saveas(serverpath); this.lb_info.text = “上传成功!“; /将图片名称,所属工程号,上传用户名,上传时间写入 pictures 表 string strsql = “insert into pictures values (“ + session“proid“ + “,“ + filename + “,“ + session“userid“ + “,“ + datetime.now + “)“; 3.5.2 打开打开 cad 图图 在图片显示的下方利用 gridview 控件显示此工程中的所有图片信息,单击 32 图片名称链接按钮,图片将显示在页面中。只有 attend 表中 state 值为 0 的用 户,即当前有图片操作权的用户可以打开图片。 3.5.3 cad 图的下载图的下载 为方便用户进一步修改、浏览图片,还添加了下载功能。参与讨论的用户 可以下载任意图片。只需在 gridview 控件模板列中添加: / target=_blank下载 用户就可在另一页面预览该图片并下载9。 3.6 聊天模块聊天模块 3.6.1 发送消息发送消息 在图片显示区域左侧设置聊天窗口,可实现多人同时在线聊天,形式类似 qq 的群聊。上半部采用滚屏的方式显示发言人、时间和发言内容;下半部分 用户在“内容”栏中填写消息后,单击【发送】按钮,可将有关信息(用户名、 内容及服务器时间)写入数据库并利用第四章中将要介绍到的技术,使聊天内 容即时显示在上半部分中。 3.6.2 查看消息查看消息 所有参与该工程的用户可以查看关于该工程的所有消息记录。在页面上方 单击【历史记录】按钮,打开新页面 mhcontent.aspx,可查看以前的聊天内容, 用户可根据具体日期查询聊天内容。 33 图 3-13: 查看聊天记录页面 3.6.3 发送离线短消息发送离线短消息 单击【好友列表】显示所有此工程中有权参与讨论的用户名,选择用户名 后,在下方填入发送内容,单击【发送】按钮,将向数据库的 mess 表中写入数 据。对方登录后可以在首页中看见“您有 x 条新消息”的提示 34 图 3-14: 查看好友列表并发送短消息页面 3.7 短消息管理短消息管理 用户在首页单击链接可跳转到查看短消息页面 message.aspx,如下图所示: 35 图 3-15: 查看短消息页面 可分别查看未读、已
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 全球化文学互动-洞察及研究
- 租房保修服务合同范本
- 酒店承租合同范本格式
- 代购代理合同范本
- 妇产科解剖课件
- 营销活动执行合同范本
- 市场监管局教育知识培训课件
- 储能技术在储能电站储能系统效率提升中的应用与市场前景分析报告
- 房地产市场的区域分化现象与2025年特色小镇投资策略分析
- 秸秆粉碎机项目可行性研究报告
- GB/T 748-2005抗硫酸盐硅酸盐水泥
- GB/T 28287-2012足部防护鞋防滑性测试方法
- 芜湖宜盛置业发展有限公司招聘3名编外工作人员(必考题)模拟卷
- 走好群众路线-做好群众工作(黄相怀)课件
- 混凝土结构设计原理教学教案
- 民间文学(全套课件)
- 专升本00465心理卫生与心理辅导历年试题题库(考试必备)
- 既有重载铁路无缝线路改造及运维技术探索
- 2022年教师副高职称评答辩范文(七篇)
- 高压罗茨风机选型参数表
- 中国监察制度史
评论
0/150
提交评论